MFEM v4.7.0
Finite element discretization library
|
Create and assemble a low-order refined version of a BilinearForm. More...
#include <lor.hpp>
Public Member Functions | |
LORDiscretization (BilinearForm &a_ho, const Array< int > &ess_tdof_list, int ref_type=BasisType::GaussLobatto) | |
Construct the low-order refined version of a_ho using the given list of essential DOFs. | |
LORDiscretization (FiniteElementSpace &fes_ho, int ref_type=BasisType::GaussLobatto) | |
Construct a low-order refined version of the FiniteElementSpace fes_ho. | |
SparseMatrix & | GetAssembledMatrix () const |
Return the assembled LOR operator as a SparseMatrix. | |
Public Member Functions inherited from mfem::LORBase | |
const OperatorHandle & | GetAssembledSystem () const |
Returns the assembled LOR system (const version). | |
OperatorHandle & | GetAssembledSystem () |
Returns the assembled LOR system (non-const version). | |
void | AssembleSystem (BilinearForm &a_ho, const Array< int > &ess_dofs) |
Assembles the LOR system corresponding to a_ho. | |
void | LegacyAssembleSystem (BilinearForm &a_ho, const Array< int > &ess_dofs) |
Assembles the LOR system corresponding to a_ho using the legacy method. | |
const Array< int > & | GetDofPermutation () const |
Returns the permutation that maps LOR DOFs to high-order DOFs. | |
FiniteElementSpace & | GetFESpace () const |
Returns the low-order refined finite element space. | |
virtual | ~LORBase () |
Protected Member Functions | |
void | FormLORSpace () override |
Construct the LOR space (overridden for serial and parallel versions). | |
Protected Member Functions inherited from mfem::LORBase | |
void | ConstructLocalDofPermutation (Array< int > &perm_) const |
void | ConstructDofPermutation () const |
bool | HasSameDofNumbering () const |
void | SetupProlongationAndRestriction () |
FESpaceType | GetFESpaceType () const |
Returns the type of finite element space: H1, ND, RT or L2. | |
int | GetLOROrder () const |
Returns the order of the LOR space. 1 for H1 or ND, 0 for L2 or RT. | |
LORBase (FiniteElementSpace &fes_ho_, int ref_type_) | |
Construct the LORBase object for the given FE space and refinement type. | |
Additional Inherited Members | |
Protected Types inherited from mfem::LORBase | |
enum | FESpaceType { H1 , ND , RT , L2 , INVALID } |
Protected Attributes inherited from mfem::LORBase | |
int | ref_type |
FiniteElementSpace & | fes_ho |
Mesh * | mesh = nullptr |
FiniteElementCollection * | fec = nullptr |
FiniteElementSpace * | fes = nullptr |
BilinearForm * | a = nullptr |
class BatchedLORAssembly * | batched_lor = nullptr |
OperatorHandle | A |
Array< int > | perm |
Create and assemble a low-order refined version of a BilinearForm.
mfem::LORDiscretization::LORDiscretization | ( | BilinearForm & | a_ho, |
const Array< int > & | ess_tdof_list, | ||
int | ref_type = BasisType::GaussLobatto ) |
Construct the low-order refined version of a_ho using the given list of essential DOFs.
The mesh is refined using the refinement type specified by ref_type (see Mesh::MakeRefined).
mfem::LORDiscretization::LORDiscretization | ( | FiniteElementSpace & | fes_ho, |
int | ref_type = BasisType::GaussLobatto ) |
Construct a low-order refined version of the FiniteElementSpace fes_ho.
The mesh is refined using the refinement type specified by ref_type (see Mesh::MakeRefined).
|
overrideprotectedvirtual |
Construct the LOR space (overridden for serial and parallel versions).
Implements mfem::LORBase.
SparseMatrix & mfem::LORDiscretization::GetAssembledMatrix | ( | ) | const |
Return the assembled LOR operator as a SparseMatrix.