21VectorFEDomainLFIntegrator::Kernels::Kernels()
62VectorFEDomainLFIntegrator::AssembleKernels::Fallback(
69 return HdivDLFAssemble2D<0, 0>;
73 return HdivDLFAssemble3D<0, 0>;
80 return HcurlDLFAssemble3D<0, 0>;
92 const int qorder = 2 * fe.
GetOrder();
106 MFEM_VERIFY(
vel !=
nullptr,
"Must be VectorTensorFiniteElement");
110 const int d = maps_c.
ndof, q = maps_c.
nqpt;
114 AssembleKernels::Run(fe_type,
dim, d, q, mesh.
GetNE(), markers, geom->
J,
Class to represent a coefficient evaluated at quadrature points.
static MemoryType GetDeviceMemoryType()
Get the current Device MemoryType. This is the MemoryType used by most MFEM classes when allocating m...
Structure representing the matrices/tensors needed to evaluate (in reference space) the values,...
@ TENSOR
Tensor product representation using 1D matrices/tensors with dimensions using 1D number of quadrature...
Array< real_t > B
Basis functions evaluated at quadrature points.
int ndof
Number of degrees of freedom = number of basis functions. When mode is TENSOR, this is the 1D number.
int nqpt
Number of quadrature points. When mode is TENSOR, this is the 1D number.
Class FiniteElementSpace - responsible for providing FEM view of the mesh, mainly managing the set of...
Mesh * GetMesh() const
Returns the mesh.
const FiniteElement * GetTypicalFE() const
Return GetFE(0) if the local mesh is not empty; otherwise return a typical FE based on the Geometry t...
Abstract class for all finite elements.
int GetOrder() const
Returns the order of the finite element. In the case of anisotropic orders, returns the maximum order...
int GetDerivType() const
Returns the FiniteElement::DerivType of the element describing the spatial derivative method implemen...
Geometry::Type GetGeomType() const
Returns the Geometry::Type of the reference element.
DerivType
Enumeration for DerivType: defines which derivative method is implemented.
@ DIV
Implements CalcDivShape methods.
@ CURL
Implements CalcCurlShape methods.
Structure for storing mesh geometric factors: coordinates, Jacobians, and determinants of the Jacobia...
Vector J
Jacobians of the element transformations at all quadrature points.
Class for an integration rule - an Array of IntegrationPoint.
const Array< real_t > & GetWeights() const
Return the quadrature weights in a contiguous array.
const IntegrationRule & Get(int GeomType, int Order)
Returns an integration rule for given GeomType and Order.
const IntegrationRule * IntRule
int GetNE() const
Returns number of elements.
int Dimension() const
Dimension of the reference space used within the elements.
const GeometricFactors * GetGeometricFactors(const IntegrationRule &ir, const int flags, MemoryType d_mt=MemoryType::DEFAULT)
Return the mesh geometric factors corresponding to the given integration rule.
Class representing the storage layout of a QuadratureFunction.
static void AddSpecialization()
void AssembleDevice(const FiniteElementSpace &fes, const Array< int > &markers, Vector &b) override
Method defining assembly on device.
void(*)(const int NE, const Array< int > &markers, const Vector &jac, const Array< real_t > &weights, const Array< real_t > &testBO, const Array< real_t > &testBC, const Vector &coeff, Vector &y, const int testd1d, const int q1d) AssembleKernelType
@ COMPRESSED
Enable all above compressions.
MemoryType
Memory types supported by MFEM.
IntegrationRules IntRules(0, Quadrature1D::GaussLegendre)
A global object with all integration rules (defined in intrules.cpp)
void vel(const Vector &x, real_t t, Vector &u)