Flow123d  3.9.0-be1f591da
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DiscreteSpace Class Referenceabstract

#include <discrete_space.hh>

Inheritance diagram for DiscreteSpace:
Inheritance graph
[legend]
Collaboration diagram for DiscreteSpace:
Collaboration graph
[legend]

Public Member Functions

virtual unsigned int n_node_dofs (unsigned int nid) const =0
 Number of dofs associated to node. nid is the node index in the mesh duplicate_nodes object. More...
 
virtual unsigned int n_edge_dofs (const Edge &edge) const =0
 Number of dofs associated to edge. More...
 
virtual unsigned int n_elem_dofs (const ElementAccessor< 3 > &cell) const =0
 Number of dofs associated to element (not shared by adjacent elements). More...
 
template<unsigned int dim>
unsigned int n_face_dofs (unsigned int face_id)
 Number of dofs associated to generalized n-face (node, line, triangle or tetrahedron). More...
 
virtual MixedPtr< FiniteElementfe () const =0
 
virtual ~DiscreteSpace ()
 Destructor. More...
 

Protected Member Functions

 DiscreteSpace (MeshBase *mesh)
 Constructor. More...
 

Protected Attributes

MeshBasemesh_
 

Detailed Description

Abstract class for definition of finite element functions on the mesh. This should include

Definition at line 41 of file discrete_space.hh.

Constructor & Destructor Documentation

◆ ~DiscreteSpace()

virtual DiscreteSpace::~DiscreteSpace ( )
inlinevirtual

Destructor.

Definition at line 74 of file discrete_space.hh.

◆ DiscreteSpace()

DiscreteSpace::DiscreteSpace ( MeshBase mesh)
inlineprotected

Constructor.

Definition at line 80 of file discrete_space.hh.

Member Function Documentation

◆ fe()

virtual MixedPtr<FiniteElement> DiscreteSpace::fe ( ) const
pure virtual

Return Mixed of finite element objects.

TODO: The function should be in foem fe(const ElementAccessor<3> &). But we do not in fact depend on the element accessor now. This is temporary solution, which would work only if its type is EqualOrderDiscreteSpace. Otherwise, the general way would require a new "element FE handler" that would manage FEValues for all FE types within a given DiscreteSpace.

Implemented in EqualOrderDiscreteSpace.

◆ n_edge_dofs()

virtual unsigned int DiscreteSpace::n_edge_dofs ( const Edge edge) const
pure virtual

Number of dofs associated to edge.

Implemented in EqualOrderDiscreteSpace.

◆ n_elem_dofs()

virtual unsigned int DiscreteSpace::n_elem_dofs ( const ElementAccessor< 3 > &  cell) const
pure virtual

Number of dofs associated to element (not shared by adjacent elements).

Implemented in EqualOrderDiscreteSpace.

◆ n_face_dofs()

template<unsigned int dim>
unsigned int DiscreteSpace::n_face_dofs ( unsigned int  face_id)
inline

Number of dofs associated to generalized n-face (node, line, triangle or tetrahedron).

Definition at line 55 of file discrete_space.hh.

◆ n_node_dofs()

virtual unsigned int DiscreteSpace::n_node_dofs ( unsigned int  nid) const
pure virtual

Number of dofs associated to node. nid is the node index in the mesh duplicate_nodes object.

Implemented in EqualOrderDiscreteSpace.

Member Data Documentation

◆ mesh_

MeshBase* DiscreteSpace::mesh_
protected

Definition at line 83 of file discrete_space.hh.


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