MFEM  v4.5.2
Finite element discretization library
Public Member Functions | List of all members
mfem::VDofTransformation Class Reference

#include <doftrans.hpp>

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

Public Member Functions

 VDofTransformation (int vdim=1, int ordering=0)
 Default constructor which requires that SetDofTransformation be called before use. More...
 
 VDofTransformation (DofTransformation &doftrans, int vdim=1, int ordering=0)
 Constructor with a known DofTransformation. More...
 
void SetVDim (int vdim)
 Set or change the vdim parameter. More...
 
int GetVDim () const
 Return the current vdim value. More...
 
void SetDofTransformation (DofTransformation &doftrans)
 Set or change the nested DofTransformation object. More...
 
DofTransformationGetDofTransformation () const
 Return the nested DofTransformation object. More...
 
void SetFaceOrientation (const Array< int > &face_orientation)
 
void TransformPrimal (double *v) const
 
void InvTransformPrimal (double *v) const
 
void TransformDual (double *v) const
 
void InvTransformDual (double *v) const
 
virtual void TransformPrimal (double *v) const=0
 
virtual void TransformPrimal (Vector &v) const
 
virtual void InvTransformPrimal (double *v) const=0
 
virtual void InvTransformPrimal (Vector &v) const
 
virtual void TransformDual (double *v) const=0
 
virtual void TransformDual (Vector &v) const
 
virtual void TransformDual (DenseMatrix &V) const
 
virtual void InvTransformDual (double *v) const=0
 
virtual void InvTransformDual (Vector &v) const
 
- Public Member Functions inherited from mfem::DofTransformation
int Size () const
 
int Height () const
 
int NumRows () const
 
int Width () const
 
int NumCols () const
 
void SetFaceOrientations (const Array< int > &face_orientation)
 Configure the transformation using face orientations for the current element. More...
 
const Array< int > & GetFaceOrientations () const
 
virtual void TransformPrimal (Vector &v) const
 
virtual void TransformPrimalCols (DenseMatrix &V) const
 Transform groups of DoFs stored as dense matrices. More...
 
virtual void InvTransformPrimal (Vector &v) const
 
virtual void TransformDual (Vector &v) const
 
virtual void InvTransformDual (Vector &v) const
 
virtual void TransformDual (DenseMatrix &V) const
 
virtual void TransformDualRows (DenseMatrix &V) const
 Transform groups of dual DoFs stored as dense matrices. More...
 
virtual void TransformDualCols (DenseMatrix &V) const
 
virtual ~DofTransformation ()
 

Additional Inherited Members

- Protected Member Functions inherited from mfem::DofTransformation
 DofTransformation (int size)
 
- Protected Attributes inherited from mfem::DofTransformation
int size_
 
Array< int > Fo
 

Detailed Description

The VDofTransformation class implements a nested transformation where an arbitrary DofTransformation is replicated with a vdim >= 1.

Definition at line 139 of file doftrans.hpp.

Constructor & Destructor Documentation

◆ VDofTransformation() [1/2]

mfem::VDofTransformation::VDofTransformation ( int  vdim = 1,
int  ordering = 0 
)
inline

Default constructor which requires that SetDofTransformation be called before use.

Definition at line 149 of file doftrans.hpp.

◆ VDofTransformation() [2/2]

mfem::VDofTransformation::VDofTransformation ( DofTransformation doftrans,
int  vdim = 1,
int  ordering = 0 
)
inline

Constructor with a known DofTransformation.

Definition at line 155 of file doftrans.hpp.

Member Function Documentation

◆ GetDofTransformation()

DofTransformation* mfem::VDofTransformation::GetDofTransformation ( ) const
inline

Return the nested DofTransformation object.

Definition at line 182 of file doftrans.hpp.

◆ GetVDim()

int mfem::VDofTransformation::GetVDim ( ) const
inline

Return the current vdim value.

Definition at line 172 of file doftrans.hpp.

◆ InvTransformDual() [1/3]

virtual void mfem::DofTransformation::InvTransformDual

Inverse Transform dual DoFs

◆ InvTransformDual() [2/3]

void mfem::DofTransformation::InvTransformDual

Definition at line 88 of file doftrans.cpp.

◆ InvTransformDual() [3/3]

void mfem::VDofTransformation::InvTransformDual ( double *  v) const
virtual

Inverse Transform dual DoFs

Implements mfem::DofTransformation.

Definition at line 203 of file doftrans.cpp.

◆ InvTransformPrimal() [1/3]

virtual void mfem::DofTransformation::InvTransformPrimal

Inverse transform local DoFs. Used to transform DoFs from a global vector back to their element-local form. For example, this must be used to transform the vector obtained using GridFunction::GetSubVector before it can be used to compute a local interpolation.

◆ InvTransformPrimal() [2/3]

void mfem::DofTransformation::InvTransformPrimal

Definition at line 60 of file doftrans.cpp.

◆ InvTransformPrimal() [3/3]

void mfem::VDofTransformation::InvTransformPrimal ( double *  v) const
virtual

Inverse transform local DoFs. Used to transform DoFs from a global vector back to their element-local form. For example, this must be used to transform the vector obtained using GridFunction::GetSubVector before it can be used to compute a local interpolation.

Implements mfem::DofTransformation.

Definition at line 145 of file doftrans.cpp.

◆ SetDofTransformation()

void mfem::VDofTransformation::SetDofTransformation ( DofTransformation doftrans)
inline

Set or change the nested DofTransformation object.

Definition at line 175 of file doftrans.hpp.

◆ SetFaceOrientation()

void mfem::VDofTransformation::SetFaceOrientation ( const Array< int > &  face_orientation)
inline

Definition at line 184 of file doftrans.hpp.

◆ SetVDim()

void mfem::VDofTransformation::SetVDim ( int  vdim)
inline

Set or change the vdim parameter.

Definition at line 162 of file doftrans.hpp.

◆ TransformDual() [1/4]

void mfem::DofTransformation::TransformDual

Transform a matrix of dual DoFs entries as computed by a BilinearFormIntegrator before summing into a BilinearForm object.

Definition at line 35 of file doftrans.cpp.

◆ TransformDual() [2/4]

void mfem::DofTransformation::TransformDual

Definition at line 30 of file doftrans.cpp.

◆ TransformDual() [3/4]

virtual void mfem::DofTransformation::TransformDual

Transform dual DoFs as computed by a LinearFormIntegrator before summing into a LinearForm object.

◆ TransformDual() [4/4]

void mfem::VDofTransformation::TransformDual ( double *  v) const
virtual

Transform dual DoFs as computed by a LinearFormIntegrator before summing into a LinearForm object.

Implements mfem::DofTransformation.

Definition at line 174 of file doftrans.cpp.

◆ TransformPrimal() [1/3]

virtual void mfem::DofTransformation::TransformPrimal

Transform local DoFs to align with the global DoFs. For example, this transformation can be used to map the local vector computed by FiniteElement::Project() to the transformed vector stored within a GridFunction object.

◆ TransformPrimal() [2/3]

void mfem::DofTransformation::TransformPrimal

Definition at line 17 of file doftrans.cpp.

◆ TransformPrimal() [3/3]

void mfem::VDofTransformation::TransformPrimal ( double *  v) const
virtual

Transform local DoFs to align with the global DoFs. For example, this transformation can be used to map the local vector computed by FiniteElement::Project() to the transformed vector stored within a GridFunction object.

Implements mfem::DofTransformation.

Definition at line 116 of file doftrans.cpp.


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