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

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

#include <lor.hpp>

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

Public Member Functions

 ParLORDiscretization (ParBilinearForm &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.
 
 ParLORDiscretization (ParFiniteElementSpace &fes_ho, int ref_type=BasisType::GaussLobatto)
 Construct a low-order refined version of the ParFiniteElementSpace pfes_ho.
 
HypreParMatrixGetAssembledMatrix () const
 Return the assembled LOR operator as a HypreParMatrix.
 
ParFiniteElementSpaceGetParFESpace () const
 Return the LOR ParFiniteElementSpace.
 
- 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 ParBilinearForm.

Definition at line 165 of file lor.hpp.

Constructor & Destructor Documentation

◆ ParLORDiscretization() [1/2]

mfem::ParLORDiscretization::ParLORDiscretization ( ParBilinearForm & 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 ParMesh::MakeRefined).

Definition at line 484 of file lor.cpp.

◆ ParLORDiscretization() [2/2]

mfem::ParLORDiscretization::ParLORDiscretization ( ParFiniteElementSpace & fes_ho,
int ref_type = BasisType::GaussLobatto )

Construct a low-order refined version of the ParFiniteElementSpace pfes_ho.

The mesh is refined using the refinement type specified by ref_type (see ParMesh::MakeRefined).

Definition at line 494 of file lor.cpp.

Member Function Documentation

◆ FormLORSpace()

void mfem::ParLORDiscretization::FormLORSpace ( )
overrideprotectedvirtual

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

Implements mfem::LORBase.

Definition at line 501 of file lor.cpp.

◆ GetAssembledMatrix()

HypreParMatrix & mfem::ParLORDiscretization::GetAssembledMatrix ( ) const

Return the assembled LOR operator as a HypreParMatrix.

Definition at line 522 of file lor.cpp.

◆ GetParFESpace()

ParFiniteElementSpace & mfem::ParLORDiscretization::GetParFESpace ( ) const

Return the LOR ParFiniteElementSpace.

Definition at line 528 of file lor.cpp.


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