Represents the stencil (finite volume geometry) of a single element in the ECFV discretization. More...

#include <ecfvstencil.hh>

Classes

class  SubControlVolume
 Represents a sub-control volume. More...
 
class  SubControlVolumeFace
 Represents a face of a sub-control volume. More...
 

Public Types

typedef Element::Geometry LocalGeometry
 

Public Member Functions

 EcfvStencil (const GridView &gridView)
 
void updateTopology (const Element &element)
 
void update (const Element &element)
 
void updateCenterGradients ()
 
const Element & element () const
 Return the element to which the stencil refers. More...
 
const GridView & gridView () const
 Return the grid view of the element to which the stencil refers. More...
 
int numDof () const
 Returns the number of degrees of freedom which the current element interacts with. More...
 
int numPrimaryDof () const
 Returns the number of degrees of freedom which are contained by within the current element. More...
 
int globalSpaceIndex (int dofIdx) const
 Return the global space index given the index of a degree of freedom. More...
 
Dune::PartitionType partitionType (int dofIdx) const
 Return partition type of a given degree of freedom. More...
 
const Element & element (int dofIdx=0) const
 Return the element given the index of a degree of freedom. More...
 
const SubControlVolumesubControlVolume (int dofIdx) const
 Returns the sub-control volume object belonging to a given degree of freedom. More...
 
int numInteriorFaces () const
 Returns the number of interior faces of the stencil. More...
 
const SubControlVolumeFaceinteriorFace (int bfIdx) const
 Returns the face object belonging to a given face index in the interior of the domain. More...
 
int numBoundaryFaces () const
 Returns the number of boundary faces of the stencil. More...
 
const SubControlVolumeFaceboundaryFace (int bfIdx) const
 Returns the boundary face object belonging to a given boundary face index. More...
 

Detailed Description

template<class Scalar, class GridView>
class Ewoms::EcfvStencil< Scalar, GridView >

Represents the stencil (finite volume geometry) of a single element in the ECFV discretization.

The ECFV discretization is a element centered finite volume approach. This means that each element corresponds to a control volume.

Member Typedef Documentation

template<class Scalar , class GridView >
typedef Element::Geometry Ewoms::EcfvStencil< Scalar, GridView >::LocalGeometry

Constructor & Destructor Documentation

template<class Scalar , class GridView >
Ewoms::EcfvStencil< Scalar, GridView >::EcfvStencil ( const GridView &  gridView)
inline

Member Function Documentation

template<class Scalar , class GridView >
const SubControlVolumeFace& Ewoms::EcfvStencil< Scalar, GridView >::boundaryFace ( int  bfIdx) const
inline

Returns the boundary face object belonging to a given boundary face index.

template<class Scalar , class GridView >
const Element& Ewoms::EcfvStencil< Scalar, GridView >::element ( ) const
inline

Return the element to which the stencil refers.

Referenced by Ewoms::EcfvStencil< Scalar, GridView >::globalSpaceIndex().

template<class Scalar , class GridView >
const Element& Ewoms::EcfvStencil< Scalar, GridView >::element ( int  dofIdx = 0) const
inline

Return the element given the index of a degree of freedom.

If no degree of freedom index is passed, the element which was passed to the update() method is returned...

References Ewoms::EcfvStencil< Scalar, GridView >::numDof().

template<class Scalar , class GridView >
int Ewoms::EcfvStencil< Scalar, GridView >::globalSpaceIndex ( int  dofIdx) const
inline

Return the global space index given the index of a degree of freedom.

References Ewoms::EcfvStencil< Scalar, GridView >::element(), and Ewoms::EcfvStencil< Scalar, GridView >::numDof().

template<class Scalar , class GridView >
const GridView& Ewoms::EcfvStencil< Scalar, GridView >::gridView ( ) const
inline

Return the grid view of the element to which the stencil refers.

template<class Scalar , class GridView >
const SubControlVolumeFace& Ewoms::EcfvStencil< Scalar, GridView >::interiorFace ( int  bfIdx) const
inline

Returns the face object belonging to a given face index in the interior of the domain.

template<class Scalar , class GridView >
int Ewoms::EcfvStencil< Scalar, GridView >::numBoundaryFaces ( ) const
inline

Returns the number of boundary faces of the stencil.

template<class Scalar , class GridView >
int Ewoms::EcfvStencil< Scalar, GridView >::numDof ( ) const
inline

Returns the number of degrees of freedom which the current element interacts with.

Referenced by Ewoms::EcfvStencil< Scalar, GridView >::element(), and Ewoms::EcfvStencil< Scalar, GridView >::globalSpaceIndex().

template<class Scalar , class GridView >
int Ewoms::EcfvStencil< Scalar, GridView >::numInteriorFaces ( ) const
inline

Returns the number of interior faces of the stencil.

template<class Scalar , class GridView >
int Ewoms::EcfvStencil< Scalar, GridView >::numPrimaryDof ( ) const
inline

Returns the number of degrees of freedom which are contained by within the current element.

Primary DOFs are always expected to have a lower index than "secondary" DOFs.

For element centered finite elements, this is only the central DOF.

template<class Scalar , class GridView >
Dune::PartitionType Ewoms::EcfvStencil< Scalar, GridView >::partitionType ( int  dofIdx) const
inline

Return partition type of a given degree of freedom.

template<class Scalar , class GridView >
const SubControlVolume& Ewoms::EcfvStencil< Scalar, GridView >::subControlVolume ( int  dofIdx) const
inline

Returns the sub-control volume object belonging to a given degree of freedom.

template<class Scalar , class GridView >
void Ewoms::EcfvStencil< Scalar, GridView >::update ( const Element &  element)
inline
template<class Scalar , class GridView >
void Ewoms::EcfvStencil< Scalar, GridView >::updateCenterGradients ( )
inline
template<class Scalar , class GridView >
void Ewoms::EcfvStencil< Scalar, GridView >::updateTopology ( const Element &  element)
inline

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