|
My Project
|
Represents the stencil (finite volume geometry) of a single element in the ECFV discretization. More...
#include <ecfvstencil.hh>
Classes | |
| class | EcfvSubControlVolumeFace |
| Represents a face of a sub-control volume. More... | |
| class | SubControlVolume |
| Represents a sub-control volume. More... | |
Public Types | |
| using | Entity = Element |
| using | Mapper = ElementMapper |
| using | LocalGeometry = typename Element::Geometry |
| using | SubControlVolumeFace = EcfvSubControlVolumeFace< needFaceIntegrationPos, needFaceNormal > |
| using | BoundaryFace = EcfvSubControlVolumeFace< true, needFaceNormal > |
Public Member Functions | |
| EcfvStencil (const GridView &gridView, const Mapper &mapper) | |
| void | updateTopology (const Element &element) |
| void | updatePrimaryTopology (const Element &element) |
| void | update (const Element &element) |
| void | updateCenterGradients () |
| const Element & | element () const |
| Return the element to which the stencil refers. | |
| const GridView & | gridView () const |
| Return the grid view of the element to which the stencil refers. | |
| size_t | numDof () const |
| Returns the number of degrees of freedom which the current element interacts with. | |
| size_t | numPrimaryDof () const |
| Returns the number of degrees of freedom which are contained by within the current element. | |
| unsigned | globalSpaceIndex (unsigned dofIdx) const |
| Return the global space index given the index of a degree of freedom. | |
| Dune::PartitionType | partitionType (unsigned dofIdx) const |
| Return partition type of a given degree of freedom. | |
| const Element & | element (unsigned dofIdx) const |
| Return the element given the index of a degree of freedom. | |
| const Entity & | entity (unsigned dofIdx) const |
| Return the entity given the index of a degree of freedom. | |
| const SubControlVolume & | subControlVolume (unsigned dofIdx) const |
| Returns the sub-control volume object belonging to a given degree of freedom. | |
| size_t | numInteriorFaces () const |
| Returns the number of interior faces of the stencil. | |
| const SubControlVolumeFace & | interiorFace (unsigned faceIdx) const |
| Returns the face object belonging to a given face index in the interior of the domain. | |
| size_t | numBoundaryFaces () const |
| Returns the number of boundary faces of the stencil. | |
| const BoundaryFace & | boundaryFace (unsigned bfIdx) const |
| Returns the boundary face object belonging to a given boundary face index. | |
Protected Attributes | |
| const GridView & | gridView_ |
| const ElementMapper & | elementMapper_ |
| std::vector< Element > | elements_ |
| std::vector< SubControlVolume > | subControlVolumes_ |
| std::vector< SubControlVolumeFace > | interiorFaces_ |
| std::vector< BoundaryFace > | boundaryFaces_ |
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.
|
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...
|
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.