GEOSX
Classes | Public Member Functions | List of all members
geosx::BoundaryStencil Class Reference

#include <BoundaryStencil.hpp>

Inheritance diagram for geosx::BoundaryStencil:
Inheritance graph
[legend]

Classes

struct  Order
 Defines the order of element/face in the stencil. More...
 

Public Member Functions

 BoundaryStencil ()
 default constructor
 
virtual void add (localIndex const numPts, localIndex const *const elementRegionIndices, localIndex const *const elementSubRegionIndices, localIndex const *const elementIndices, real64 const *const weights, localIndex const connectorIndex) override final
 Add an entry to the stencil. More...
 
virtual localIndex size () const override final
 Give the number of stencil entries. More...
 
constexpr localIndex stencilSize (localIndex const index) const
 Gives the number of points in a stencil entry. More...
 
- Public Member Functions inherited from geosx::StencilBase< BoundaryStencil_Traits, BoundaryStencil >
 StencilBase (StencilBase const &)=default
 Constructor.
 
 StencilBase (StencilBase &&)=default
 Move constructor.
 
virtual ~StencilBase ()=default
 Destructor.
 
virtual void reserve (localIndex const size)
 Reserve the size of the stencil. More...
 
virtual void move (LvArray::MemorySpace const space)
 Move the data arrays associated with the stencil to a specified memory space. More...
 
virtual bool zero (localIndex const connectorIndex)
 Zero weights for a stencil entry. More...
 
void setName (string const &name)
 Set the name used in data movement logging callbacks. More...
 
BoundaryStencil_Traits ::IndexContainerViewConstType getElementRegionIndices () const
 Const access to the element regions indices. More...
 
BoundaryStencil_Traits ::IndexContainerViewConstType getElementSubRegionIndices () const
 Const access to the element subregions indices. More...
 
BoundaryStencil_Traits ::IndexContainerViewConstType getElementIndices () const
 Const access to the element indices. More...
 
BoundaryStencil_Traits ::WeightContainerViewConstType getWeights () const
 Const access to the stencil weights. More...
 

Additional Inherited Members

- Public Types inherited from geosx::BoundaryStencil_Traits
using IndexContainerType = array2d< localIndex >
 The array type that will be used to store the indices of the stencil contributors.
 
using IndexContainerViewType = traits::ViewType< IndexContainerType >
 The array view type for the stencil indices.
 
using IndexContainerViewConstType = traits::ViewTypeConst< IndexContainerType >
 The array view to const type for the stencil indices.
 
using WeightContainerType = array2d< real64 >
 The array type that is used to store the weights of the stencil contributors.
 
using WeightContainerViewType = traits::ViewType< WeightContainerType >
 The array view type for the stencil weights.
 
using WeightContainerViewConstType = traits::ViewTypeConst< WeightContainerType >
 The array view to const type for the stencil weights.
 
- Static Public Attributes inherited from geosx::BoundaryStencil_Traits
static constexpr localIndex NUM_POINT_IN_FLUX = 2
 Number of points the flux is between (always 2 for TPFA)
 
static constexpr localIndex MAX_STENCIL_SIZE = 2
 Maximum number of points in a stencil (this is 2 for TPFA)
 
- Protected Attributes inherited from geosx::StencilBase< BoundaryStencil_Traits, BoundaryStencil >
BoundaryStencil_Traits ::IndexContainerType m_elementRegionIndices
 The container for the element region indices for each point in each stencil.
 
BoundaryStencil_Traits ::IndexContainerType m_elementSubRegionIndices
 The container for the element sub region indices for each point in each stencil.
 
BoundaryStencil_Traits ::IndexContainerType m_elementIndices
 The container for the element indices for each point in each stencil.
 
BoundaryStencil_Traits ::WeightContainerType m_weights
 The container for the weights for each point in each stencil.
 
map< localIndex, localIndexm_connectorIndices
 The map that provides the stencil index given the index of the underlying connector object.
 

Detailed Description

Provides management of the boundary stencil points (stencils used to prescribe boundary conditions on domain boundaries, i.e. faces)

Definition at line 65 of file BoundaryStencil.hpp.

Member Function Documentation

◆ add()

virtual void geosx::BoundaryStencil::add ( localIndex const  numPts,
localIndex const *const  elementRegionIndices,
localIndex const *const  elementSubRegionIndices,
localIndex const *const  elementIndices,
real64 const *const  weights,
localIndex const  connectorIndex 
)
finaloverridevirtual

Add an entry to the stencil.

Parameters
[in]numPtsThe number of points in the stencil entry
[in]elementRegionIndicesThe element region indices for each point in the stencil entry
[in]elementSubRegionIndicesThe element sub-region indices for each point in the stencil entry
[in]elementIndicesThe element indices for each point in the stencil entry
[in]weightsThe weights each point in the stencil entry
[in]connectorIndexThe index of the connector element that the stencil acts across

Implements geosx::StencilBase< BoundaryStencil_Traits, BoundaryStencil >.

◆ size()

virtual localIndex geosx::BoundaryStencil::size ( ) const
inlinefinaloverridevirtual

Give the number of stencil entries.

Returns
The number of stencil entries

Implements geosx::StencilBase< BoundaryStencil_Traits, BoundaryStencil >.

Definition at line 92 of file BoundaryStencil.hpp.

◆ stencilSize()

constexpr localIndex geosx::BoundaryStencil::stencilSize ( localIndex const  index) const
inline

Gives the number of points in a stencil entry.

Parameters
[in]indexof the stencil entry for which to query the size
Returns
the size of a stencil entry

Definition at line 100 of file BoundaryStencil.hpp.


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