12#ifndef MFEM_DPGWEAKFORM
13#define MFEM_DPGWEAKFORM
136 for (
int i = 0; i <
nblocks; i++)
158 MFEM_VERIFY(
mat,
"mat is NULL and can't be dereferenced");
165 MFEM_VERIFY(
mat_e,
"mat_e is NULL and can't be dereferenced");
203 Vector &B,
int copy_interior = 0);
209 template <
typename OpType>
212 int copy_interior = 0)
216 OpType *A_ptr = Ah.
Is<OpType>();
217 MFEM_VERIFY(A_ptr,
"invalid OpType used");
229 template <
typename OpType>
234 OpType *A_ptr = Ah.
Is<OpType>();
235 MFEM_VERIFY(A_ptr,
"invalid OpType used");
276 if (
Bmat.Size() == 0)
Dynamic 2D array using row-major layout.
void SetSize(int nsize)
Change the logical size of the array, keep existing entries.
int Size() const
Return the logical size of the array.
Class that performs static condensation of interior dofs for multiple FE spaces. This class is used i...
A class to handle Vectors in a block fashion.
Arbitrary order "H^{1/2}-conforming" trace finite elements defined on the interface between mesh elem...
int GetNE() const
Returns number of elements.
Arbitrary order H(curl)-trace finite elements defined on the interface between mesh elements (faces,...
Pointer to an Operator of a specified type.
OpType * Is() const
Return the Operator pointer dynamically cast to a specified OpType.
DiagonalPolicy
Defines operator diagonal policy upon elimination of rows and/or columns.
@ DIAG_ONE
Set the diagonal value to one.
Arbitrary order "H^{-1/2}-conforming" face finite elements defined on the interface between mesh elem...