MFEM v4.10.0
Finite element discretization library
Loading...
Searching...
No Matches
mfem::BatchedLOR_AMS Class Reference

#include <lor_ams.hpp>

Collaboration diagram for mfem::BatchedLOR_AMS:
[legend]

Public Member Functions

 BatchedLOR_AMS (ParFiniteElementSpace &pfes_ho_, const Vector &X_vert)
 Construct the BatchedLOR_AMS object associated with the Nedelec space (or RT in 2D) pfes_ho_.
 
void FormCoordinateVectors (const Vector &X_vert)
 Construct the mesh coordinate vectors (not part of the public API).
 
void FormGradientMatrix ()
 Construct the discrete gradient matrix (not part of the public API).
 
 ~BatchedLOR_AMS ()
 
These functions steal the discrete gradient and coordinate vectors.
HypreParMatrix * StealGradientMatrix ()
 
Vector * StealCoordinateVector ()
 
HypreParVector * StealXCoordinate ()
 
HypreParVector * StealYCoordinate ()
 
HypreParVector * StealZCoordinate ()
 
These functions return the discrete gradient and coordinate vectors.
HypreParMatrix * GetGradientMatrix () const
 
HypreParVector * GetXCoordinate () const
 
HypreParVector * GetYCoordinate () const
 
HypreParVector * GetZCoordinate () const
 

Protected Member Functions

Construct the local (elementwise) discrete gradient
void Form2DEdgeToVertex (Array< int > &edge2vert)
 
void Form2DEdgeToVertex_ND (Array< int > &edge2vert)
 
void Form2DEdgeToVertex_RT (Array< int > &edge2vert)
 
void Form3DEdgeToVertex (Array< int > &edge2vert)
 

Protected Attributes

ParFiniteElementSpace & edge_fes
 The Nedelec space.
 
const int dim
 Spatial dimension.
 
const int order
 Polynomial degree.
 
H1_FECollection vert_fec
 The corresponding H1 collection.
 
ParFiniteElementSpace vert_fes
 The corresponding H1 space.
 
Vector * xyz_tvec
 Mesh vertex coordinates in true-vector format.
 
HypreParMatrix * G
 Discrete gradient matrix.
 
Mesh coordinate vectors in HypreParVector format
HypreParVector * x
 
HypreParVector * y
 
HypreParVector * z
 

Detailed Description

Definition at line 28 of file lor_ams.hpp.

Constructor & Destructor Documentation

◆ BatchedLOR_AMS()

mfem::BatchedLOR_AMS::BatchedLOR_AMS ( ParFiniteElementSpace & pfes_ho_,
const Vector & X_vert )

Construct the BatchedLOR_AMS object associated with the Nedelec space (or RT in 2D) pfes_ho_.

The vector X_vert represents the LOR mesh coordinates in E-vector format, see BatchedLORAssembly::GetLORVertexCoordinates.

Definition at line 351 of file lor_ams.cpp.

◆ ~BatchedLOR_AMS()

mfem::BatchedLOR_AMS::~BatchedLOR_AMS ( )

Definition at line 342 of file lor_ams.cpp.

Member Function Documentation

◆ Form2DEdgeToVertex()

void mfem::BatchedLOR_AMS::Form2DEdgeToVertex ( Array< int > & edge2vert)
protected

Definition at line 21 of file lor_ams.cpp.

◆ Form2DEdgeToVertex_ND()

void mfem::BatchedLOR_AMS::Form2DEdgeToVertex_ND ( Array< int > & edge2vert)
protected

Definition at line 38 of file lor_ams.cpp.

◆ Form2DEdgeToVertex_RT()

void mfem::BatchedLOR_AMS::Form2DEdgeToVertex_RT ( Array< int > & edge2vert)
protected

Definition at line 72 of file lor_ams.cpp.

◆ Form3DEdgeToVertex()

void mfem::BatchedLOR_AMS::Form3DEdgeToVertex ( Array< int > & edge2vert)
protected

Definition at line 105 of file lor_ams.cpp.

◆ FormCoordinateVectors()

void mfem::BatchedLOR_AMS::FormCoordinateVectors ( const Vector & X_vert)

Construct the mesh coordinate vectors (not part of the public API).

Definition at line 254 of file lor_ams.cpp.

◆ FormGradientMatrix()

void mfem::BatchedLOR_AMS::FormGradientMatrix ( )

Construct the discrete gradient matrix (not part of the public API).

Definition at line 139 of file lor_ams.cpp.

◆ GetGradientMatrix()

HypreParMatrix * mfem::BatchedLOR_AMS::GetGradientMatrix ( ) const
inline

The caller does not assume ownership, and must not delete the returned objects.

Definition at line 78 of file lor_ams.hpp.

◆ GetXCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::GetXCoordinate ( ) const
inline

Definition at line 79 of file lor_ams.hpp.

◆ GetYCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::GetYCoordinate ( ) const
inline

Definition at line 80 of file lor_ams.hpp.

◆ GetZCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::GetZCoordinate ( ) const
inline

Definition at line 81 of file lor_ams.hpp.

◆ StealCoordinateVector()

Vector * mfem::BatchedLOR_AMS::StealCoordinateVector ( )

Definition at line 322 of file lor_ams.cpp.

◆ StealGradientMatrix()

HypreParMatrix * mfem::BatchedLOR_AMS::StealGradientMatrix ( )

The caller assumes ownership and must delete the returned objects. Subsequent calls will return nullptr.

Definition at line 317 of file lor_ams.cpp.

◆ StealXCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::StealXCoordinate ( )

Definition at line 327 of file lor_ams.cpp.

◆ StealYCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::StealYCoordinate ( )

Definition at line 332 of file lor_ams.cpp.

◆ StealZCoordinate()

HypreParVector * mfem::BatchedLOR_AMS::StealZCoordinate ( )

Definition at line 337 of file lor_ams.cpp.

Member Data Documentation

◆ dim

const int mfem::BatchedLOR_AMS::dim
protected

Spatial dimension.

Definition at line 32 of file lor_ams.hpp.

◆ edge_fes

ParFiniteElementSpace& mfem::BatchedLOR_AMS::edge_fes
protected

The Nedelec space.

Definition at line 31 of file lor_ams.hpp.

◆ G

HypreParMatrix* mfem::BatchedLOR_AMS::G
protected

Discrete gradient matrix.

Definition at line 37 of file lor_ams.hpp.

◆ order

const int mfem::BatchedLOR_AMS::order
protected

Polynomial degree.

Definition at line 33 of file lor_ams.hpp.

◆ vert_fec

H1_FECollection mfem::BatchedLOR_AMS::vert_fec
protected

The corresponding H1 collection.

Definition at line 34 of file lor_ams.hpp.

◆ vert_fes

ParFiniteElementSpace mfem::BatchedLOR_AMS::vert_fes
protected

The corresponding H1 space.

Definition at line 35 of file lor_ams.hpp.

◆ x

HypreParVector* mfem::BatchedLOR_AMS::x
protected

Definition at line 41 of file lor_ams.hpp.

◆ xyz_tvec

Vector* mfem::BatchedLOR_AMS::xyz_tvec
protected

Mesh vertex coordinates in true-vector format.

Definition at line 36 of file lor_ams.hpp.

◆ y

HypreParVector * mfem::BatchedLOR_AMS::y
protected

Definition at line 41 of file lor_ams.hpp.

◆ z

HypreParVector * mfem::BatchedLOR_AMS::z
protected

Definition at line 41 of file lor_ams.hpp.


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