class FiniteElementSpace

Abstract finite element space.

Inheritance:


Public Classes

enum
Constants for the classes derived from FiniteElementSpace.

Public Methods

FiniteElementSpace(Mesh * m, int dim = 1, int order = Ordering::byNODES)
Creates FE space associated with mesh of vector dimension dim.
inline int GetVDim() const
Returns vector dimension.
inline int GetNDofs() const
Returns number of degrees of freedom.
inline int GetOrdering() const
Return the ordering method.
inline int GetNE() const
Returns number of elements in the mesh.
inline int GetNV() const
Returns number of nodes in the mesh.
inline int GetNBE() const
Returns number of boundary elements in the mesh.
inline int GetElementType(int i) const
Returns the type of element i.
inline void GetElementVertices(int i, Array<int> &vertices) const
Returns the vertices of element i.
inline int GetBdrElementType(int i) const
Returns the type of boundary element i.
ElementTransformation* GetElementTransformation(int i) const
Returns ElementTransformation for the i'th element.
ElementTransformation* GetBdrElementTransformation(int i) const
Returns ElementTransformation for the i'th boundary element.
virtual int Type() const
Returns type of the FE space.
virtual void GetElementDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom in array dofs for i'th element.
virtual void GetBdrElementDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom for i'th boundary element.
void GetElementVDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom in array dofs for i'th element.
void GetBdrElementVDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom for i'th boundary element.
virtual const FiniteElement* GetFE(int i) const
Returns pointer to the FiniteElement associated with i'th element.
virtual const FiniteElement* GetBE(int i) const
Returns pointer to the FiniteElement for the i'th boundary element.
virtual void ConstructRefinementData(int k, int cdofs, RefinementType type)
Constructs new refinement data using coarse element k as a template
RectangularMatrix* LocalInterpolation(int k, int cdofs, RefinementType type, Array<int> &rows)
Generates the local interpolation matrix for coarse element k
SparseMatrix* GlobalRestrictionMatrix(FiniteElementSpace *cfes, Array<int> &bdr_attr_is_ess)
Generate the global restriction matrix with eliminated essential bc
void PrintMesh(ostream & out = cout) const
Prints the mesh for the FE space (vertices).
virtual void PrintFES(ostream & out = cout, int format = 0) const
Prints the FES space data (dofs).
void Print(ostream & outMesh = cout, ostream & outFES = cout) const
Prints the mesh and the FES space data.
~FiniteElementSpace()
Destroys FE space.

Protected Fields

Mesh* mesh
The mesh that FE space lives on.
int vdim
Vector dimension (number of unknowns per degree of freedom).
int ndofs
Number of degrees of freedom. Number of unknowns are ndofs*vdim.
int ordering
Type of ordering of dofs

Documentation

Abstract finite element space.
Mesh* mesh
The mesh that FE space lives on.

int vdim
Vector dimension (number of unknowns per degree of freedom).

int ndofs
Number of degrees of freedom. Number of unknowns are ndofs*vdim.

int ordering
Type of ordering of dofs. Ordering::byNODES - first nodes, then vector dimension, Ordering::byVDIM - first vector dimension, then nodes

enum
Constants for the classes derived from FiniteElementSpace.

FiniteElementSpace(Mesh * m, int dim = 1, int order = Ordering::byNODES)
Creates FE space associated with mesh of vector dimension dim.

inline int GetVDim() const
Returns vector dimension.

inline int GetNDofs() const
Returns number of degrees of freedom.

inline int GetOrdering() const
Return the ordering method.

inline int GetNE() const
Returns number of elements in the mesh.

inline int GetNV() const
Returns number of nodes in the mesh.

inline int GetNBE() const
Returns number of boundary elements in the mesh.

inline int GetElementType(int i) const
Returns the type of element i.

inline void GetElementVertices(int i, Array<int> &vertices) const
Returns the vertices of element i.

inline int GetBdrElementType(int i) const
Returns the type of boundary element i.

ElementTransformation* GetElementTransformation(int i) const
Returns ElementTransformation for the i'th element.

ElementTransformation* GetBdrElementTransformation(int i) const
Returns ElementTransformation for the i'th boundary element.

virtual int Type() const
Returns type of the FE space.

virtual void GetElementDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom in array dofs for i'th element.

virtual void GetBdrElementDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom for i'th boundary element.

void GetElementVDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom in array dofs for i'th element.

void GetBdrElementVDofs(int i, Array<int> &dofs) const
Returns indexes of degrees of freedom for i'th boundary element.

virtual const FiniteElement* GetFE(int i) const
Returns pointer to the FiniteElement associated with i'th element.

virtual const FiniteElement* GetBE(int i) const
Returns pointer to the FiniteElement for the i'th boundary element.

virtual void ConstructRefinementData(int k, int cdofs, RefinementType type)
Constructs new refinement data using coarse element k as a template

RectangularMatrix* LocalInterpolation(int k, int cdofs, RefinementType type, Array<int> &rows)
Generates the local interpolation matrix for coarse element k

SparseMatrix* GlobalRestrictionMatrix(FiniteElementSpace *cfes, Array<int> &bdr_attr_is_ess)
Generate the global restriction matrix with eliminated essential bc

void PrintMesh(ostream & out = cout) const
Prints the mesh for the FE space (vertices).

virtual void PrintFES(ostream & out = cout, int format = 0) const
Prints the FES space data (dofs).

void Print(ostream & outMesh = cout, ostream & outFES = cout) const
Prints the mesh and the FES space data.

~FiniteElementSpace()
Destroys FE space.


Direct child classes:
QuadraticFiniteElementSpace
LinearFiniteElementSpace

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de