// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors. // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. // // SPDX-License-Identifier: BSD-2-Clause // // This file is part of CEED: http://github.com/ceed /// @file /// libCEED QFunctions for mass operator example using PETSc #ifndef bp1_h #define bp1_h #include // ----------------------------------------------------------------------------- // This QFunction sets up the geometric factors required to apply the // mass operator // // The quadrature data is stored in the array q_data. // // We require the determinant of the Jacobian to properly compute integrals of // the form: int( u v ) // // Qdata: det_J * w // // ----------------------------------------------------------------------------- CEED_QFUNCTION(SetupMassGeo)(void *ctx, const CeedInt Q, const CeedScalar *const *in, CeedScalar *const *out) { const CeedScalar *J = in[1], *w = in[2]; // Note: *X = in[0] CeedScalar *q_data = out[0]; // Quadrature Point Loop CeedPragmaSIMD for (CeedInt i=0; i