All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Ewoms::VcfvStencil< Scalar, GridView > Class Template Reference

Represents the finite volume geometry of a single element in the VCFV discretization. More...

#include <vcfvstencil.hh>

Classes

class  ScvGeometry
 
struct  SubControlVolume
 finite volume intersected with element More...
 
struct  SubControlVolumeFace
 interior face of a sub control volume More...
 

Public Types

typedef
GridView::Traits::template
Codim< dim >::Entity 
Entity
 
typedef
Dune::MultipleCodimMultipleGeomTypeMapper
< GridView,
Dune::MCMGVertexLayout > 
VertexMapper
 
typedef VertexMapper Mapper
 exported Mapper type
 
typedef SubControlVolumeFace BoundaryFace
 compatibility typedef
 

Public Member Functions

 VcfvStencil (const GridView &gridView, const VertexMapper &vertexMapper)
 
void updateTopology (const Element &e)
 Update the non-geometric part of the stencil. More...
 
void updatePrimaryTopology (const Element &element)
 
void update (const Element &e)
 
void updateScvGeometry (const Element &element)
 
unsigned numDof () const
 
unsigned numPrimaryDof () const
 
Dune::PartitionType partitionType (unsigned scvIdx) const
 
const SubControlVolumesubControlVolume (unsigned scvIdx) const
 
unsigned numInteriorFaces () const
 
unsigned numBoundaryFaces () const
 
const SubControlVolumeFaceinteriorFace (unsigned faceIdx) const
 
const BoundaryFaceboundaryFace (unsigned bfIdx) const
 
unsigned globalSpaceIndex (unsigned dofIdx) const
 Return the global space index given the index of a degree of freedom.
 
Entity entity (unsigned dofIdx) const
 Return the global space index given the index of a degree of freedom.
 

Detailed Description

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

Represents the finite volume geometry of a single element in the VCFV discretization.

The VCFV discretization is a vertex centered finite volume approach. This means that each vertex corresponds to a control volume which intersects each of the vertex' neighboring elements. If only looking at a single element of the primary grid (which is what this class does), the element is subdivided into multiple fragments of control volumes called sub-control volumes. Each of the element's vertices corresponds to exactly one sub-control volume in this scenario.

For the vertex-cented finite volume method the sub-control volumes are constructed by connecting the element's center with each edge of the element.

Member Function Documentation

template<class Scalar , class GridView >
void Ewoms::VcfvStencil< Scalar, GridView >::updateTopology ( const Element &  e)
inline

Update the non-geometric part of the stencil.

I.e., indices and neighboring information, but nothing else...


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