MFEM v4.7.0
Finite element discretization library
Loading...
Searching...
No Matches
mfem::LORDiscretization Class Reference

Create and assemble a low-order refined version of a BilinearForm. More...

#include <lor.hpp>

Inheritance diagram for mfem::LORDiscretization:
[legend]
Collaboration diagram for mfem::LORDiscretization:
[legend]

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.
 
SparseMatrixGetAssembledMatrix () const
 Return the assembled LOR operator as a SparseMatrix.
 
- Public Member Functions inherited from mfem::LORBase
const OperatorHandleGetAssembledSystem () const
 Returns the assembled LOR system (const version).
 
OperatorHandleGetAssembledSystem ()
 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.
 
FiniteElementSpaceGetFESpace () 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
 
FiniteElementSpacefes_ho
 
Meshmesh = nullptr
 
FiniteElementCollectionfec = nullptr
 
FiniteElementSpacefes = nullptr
 
BilinearForma = nullptr
 
class BatchedLORAssemblybatched_lor = nullptr
 
OperatorHandle A
 
Array< int > perm
 

Detailed Description

Create and assemble a low-order refined version of a BilinearForm.

Definition at line 137 of file lor.hpp.

Constructor & Destructor Documentation

◆ LORDiscretization() [1/2]

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).

Definition at line 439 of file lor.cpp.

◆ LORDiscretization() [2/2]

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).

Definition at line 449 of file lor.cpp.

Member Function Documentation

◆ FormLORSpace()

void mfem::LORDiscretization::FormLORSpace ( )
overrideprotectedvirtual

Construct the LOR space (overridden for serial and parallel versions).

Implements mfem::LORBase.

Definition at line 456 of file lor.cpp.

◆ GetAssembledMatrix()

SparseMatrix & mfem::LORDiscretization::GetAssembledMatrix ( ) const

Return the assembled LOR operator as a SparseMatrix.

Definition at line 476 of file lor.cpp.


The documentation for this class was generated from the following files: