All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Ewoms::FvBaseBoundaryContext< TypeTag > Class Template Reference

Represents all quantities which available on boundary segments. More...

#include <fvbaseboundarycontext.hh>

Public Member Functions

 FvBaseBoundaryContext (const ElementContext &elemCtx)
 The constructor.
 
const Problem & problem () const
 
const Model & model () const
 
const GridView & gridView () const
 
const Element & element () const
 
const ElementContext & elementContext () const
 Returns a reference to the element context object.
 
const GradientCalculator & gradientCalculator () const
 Returns a reference to the current gradient calculator.
 
size_t numDof (unsigned timeIdx) const
 
size_t numPrimaryDof (unsigned timeIdx) const
 
size_t numInteriorFaces (unsigned timeIdx) const
 
size_t numBoundaryFaces (unsigned timeIdx) const
 Return the number of boundary segments of the current element.
 
const Stencil & stencil (unsigned timeIdx) const
 
Vector normal (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Returns the outer unit normal of the boundary segment. More...
 
Scalar boundarySegmentArea (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Returns the area [m^2] of a given boudary segment.
 
const GlobalPosition & pos (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the position of a local entity in global coordinates. More...
 
const GlobalPosition & cvCenter (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the position of a control volume's center in global coordinates. More...
 
unsigned focusDofIndex () const
 Return the local sub-control volume index upon which the linearization is currently focused.
 
unsigned interiorScvIndex (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the local sub-control volume index of the interior of a boundary segment. More...
 
unsigned globalSpaceIndex (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the global space index of the sub-control volume at the interior of a boundary segment. More...
 
const IntensiveQuantities & intensiveQuantities (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the intensive quantities for the finite volume in the interiour of a boundary segment. More...
 
const ExtensiveQuantities & extensiveQuantities (unsigned boundaryFaceIdx, unsigned timeIdx) const
 Return the extensive quantities for a given boundary face. More...
 
const Intersection & intersection (unsigned boundaryFaceIdx OPM_UNUSED) const
 Return the intersection for the neumann segment. More...
 
IntersectionIterator & intersectionIt ()
 Return the intersection for the neumann segment. More...
 

Protected Attributes

const ElementContext & elemCtx_
 
IntersectionIterator intersectionIt_
 

Detailed Description

template<class TypeTag>
class Ewoms::FvBaseBoundaryContext< TypeTag >

Represents all quantities which available on boundary segments.

Member Function Documentation

template<class TypeTag >
const GlobalPosition& Ewoms::FvBaseBoundaryContext< TypeTag >::cvCenter ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the position of a control volume's center in global coordinates.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
const Element& Ewoms::FvBaseBoundaryContext< TypeTag >::element ( ) const
inline

template<class TypeTag >
const ExtensiveQuantities& Ewoms::FvBaseBoundaryContext< TypeTag >::extensiveQuantities ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the extensive quantities for a given boundary face.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
unsigned Ewoms::FvBaseBoundaryContext< TypeTag >::globalSpaceIndex ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the global space index of the sub-control volume at the interior of a boundary segment.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
const GridView& Ewoms::FvBaseBoundaryContext< TypeTag >::gridView ( ) const
inline

template<class TypeTag >
const IntensiveQuantities& Ewoms::FvBaseBoundaryContext< TypeTag >::intensiveQuantities ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the intensive quantities for the finite volume in the interiour of a boundary segment.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
unsigned Ewoms::FvBaseBoundaryContext< TypeTag >::interiorScvIndex ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the local sub-control volume index of the interior of a boundary segment.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
const Intersection& Ewoms::FvBaseBoundaryContext< TypeTag >::intersection ( unsigned boundaryFaceIdx  OPM_UNUSED) const
inline

Return the intersection for the neumann segment.

TODO/HACK: The intersection should take a local index as an argument. since that's not supported efficiently by the DUNE grid interface, we just ignore the index argument here!

Parameters
boundaryFaceIdxThe local index of the boundary segment
template<class TypeTag >
IntersectionIterator& Ewoms::FvBaseBoundaryContext< TypeTag >::intersectionIt ( )
inline

Return the intersection for the neumann segment.

TODO/HACK: the intersection iterator can basically be considered as an index which is manipulated externally, but context classes should not store any indices. it is done this way for performance reasons

template<class TypeTag >
const Model& Ewoms::FvBaseBoundaryContext< TypeTag >::model ( ) const
inline

template<class TypeTag >
Vector Ewoms::FvBaseBoundaryContext< TypeTag >::normal ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Returns the outer unit normal of the boundary segment.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
size_t Ewoms::FvBaseBoundaryContext< TypeTag >::numDof ( unsigned  timeIdx) const
inline

template<class TypeTag >
size_t Ewoms::FvBaseBoundaryContext< TypeTag >::numInteriorFaces ( unsigned  timeIdx) const
inline

template<class TypeTag >
size_t Ewoms::FvBaseBoundaryContext< TypeTag >::numPrimaryDof ( unsigned  timeIdx) const
inline

template<class TypeTag >
const GlobalPosition& Ewoms::FvBaseBoundaryContext< TypeTag >::pos ( unsigned  boundaryFaceIdx,
unsigned  timeIdx 
) const
inline

Return the position of a local entity in global coordinates.

Parameters
boundaryFaceIdxThe local index of the boundary segment
timeIdxThe index of the solution used by the time discretization
template<class TypeTag >
const Problem& Ewoms::FvBaseBoundaryContext< TypeTag >::problem ( ) const
inline

template<class TypeTag >
const Stencil& Ewoms::FvBaseBoundaryContext< TypeTag >::stencil ( unsigned  timeIdx) const
inline


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