Abstract base class for LORDiscretization and ParLORDiscretization classes, which construct low-order refined versions of bilinear forms.
More...
#include <lor.hpp>
Abstract base class for LORDiscretization and ParLORDiscretization classes, which construct low-order refined versions of bilinear forms.
Definition at line 22 of file lor.hpp.
Enumerator |
---|
H1 |
|
ND |
|
RT |
|
L2 |
|
INVALID |
|
Definition at line 62 of file lor.hpp.
mfem::LORBase::~LORBase |
( |
| ) |
|
void mfem::LORBase::AssembleSystem |
( |
BilinearForm & |
a_ho, |
|
|
const Array< int > & |
ess_dofs |
|
) |
| |
Assembles the LOR system.
Definition at line 241 of file lor.cpp.
void mfem::LORBase::ConstructDofPermutation |
( |
| ) |
const |
|
protected |
Construct the permutation that maps LOR DOFs to high-order DOFs. See GetDofPermutation.
Definition at line 181 of file lor.cpp.
void mfem::LORBase::ConstructLocalDofPermutation |
( |
Array< int > & |
perm_ | ) |
const |
|
protected |
Constructs the local DOF (ldof) permutation. In parallel this is used as an intermediate step in computing the DOF permutation (see ConstructDofPermutation and GetDofPermutation).
Definition at line 77 of file lor.cpp.
Returns the assembled LOR system.
Definition at line 235 of file lor.cpp.
const Array< int > & mfem::LORBase::GetDofPermutation |
( |
| ) |
const |
Returns the permutation that maps LOR DOFs to high-order DOFs.
This permutation is constructed the first time it is requested, and then is cached. For H1 and L2 finite element spaces (or for nonconforming spaces) this is the identity. In these cases, RequiresDofPermutation will return false. However, if the DOF permutation is requested, an identity permutation will be built and returned.
For vector finite element spaces (ND and RT), the DOF permutation is nontrivial. Returns an array perm such that, given an index i of a LOR dof, perm[i] is the index of the corresponding HO dof.
Definition at line 223 of file lor.cpp.
Returns the low-order refined finite element space.
Definition at line 122 of file lor.hpp.
Returns the type of finite element space: H1, ND, RT or L2.
Definition at line 60 of file lor.cpp.
int mfem::LORBase::GetLOROrder |
( |
| ) |
const |
|
protected |
Returns the order of the LOR space. 1 for H1 or ND, 0 for L2 or RT.
Definition at line 71 of file lor.cpp.
bool mfem::LORBase::RequiresDofPermutation |
( |
| ) |
const |
Returns true if the LOR spaces requires a DOF permutation (if the corresponding LOR and HO DOFs are numbered differently), false otherwise. Note: permutations are not required in the case of nonconforming spaces, since the DOF numbering is incorporated into the prolongation operators.
Definition at line 229 of file lor.cpp.
void mfem::LORBase::SetupNonconforming |
( |
| ) |
|
|
protected |
Sets up the prolongation and restriction operators required for nonconforming spaces.
Definition at line 281 of file lor.cpp.
Mesh* mfem::LORBase::mesh |
|
protected |
bool mfem::LORBase::nonconforming = false |
|
protected |
Array<int> mfem::LORBase::perm |
|
mutableprotected |
The documentation for this class was generated from the following files: