https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Friends | List of all members
Moose::FaceArg Struct Reference

A structure defining a "face" evaluation calling argument for Moose functors. More...

#include <MooseFunctorArguments.h>

Public Member Functions

libMesh::Point getPoint () const
 
ElemArg makeElem () const
 Make a ElemArg from our data using the face information element.
 
ElemArg makeNeighbor () const
 Make a ElemArg from our data using the face information neighbor.
 

Public Attributes

const FaceInfofi
 a face information object which defines our location in space
 
Moose::FV::LimiterType limiter_type
 a limiter which defines how the functor evaluated on either side of the face should be interpolated to the face
 
bool elem_is_upwind
 a boolean which states whether the face information element is upwind of the face
 
bool correct_skewness
 Whether to perform skew correction.
 
const libMesh::Elemface_side
 A member that can be used to indicate whether there is a sidedness to this face.
 
const Moose::StateArgstate_limiter
 A member that can be used to define the instance in which the limiters are executed.
 

Friends

bool operator< (const FaceArg &l, const FaceArg &r)
 friend function that allows this structure to be used as keys in ordered containers like sets and maps
 

Detailed Description

A structure defining a "face" evaluation calling argument for Moose functors.

Definition at line 188 of file MooseFunctorArguments.h.

Member Function Documentation

◆ getPoint()

libMesh::Point Moose::FaceArg::getPoint ( ) const
inline
Returns
The conceptual physical location of this data structure

Definition at line 220 of file MooseFunctorArguments.h.

220{ return fi->faceCentroid(); }
const Point & faceCentroid() const
Returns the coordinates of the face centroid.
Definition FaceInfo.h:75
const FaceInfo * fi
a face information object which defines our location in space

Referenced by Function::evaluate().

◆ makeElem()

ElemArg Moose::FaceArg::makeElem ( ) const
inline

Make a ElemArg from our data using the face information element.

Definition at line 225 of file MooseFunctorArguments.h.

225{ return {&fi->elem(), correct_skewness}; }
const Elem & elem() const
Definition FaceInfo.h:85
bool correct_skewness
Whether to perform skew correction.

Referenced by Moose::FV::containerInterpolate(), Moose::FV::greenGaussGradient(), Moose::FV::interpCoeffsAndAdvected(), Moose::FV::interpolate(), Moose::FV::interpolate(), and Moose::FV::linearInterpolation().

◆ makeNeighbor()

ElemArg Moose::FaceArg::makeNeighbor ( ) const
inline

Make a ElemArg from our data using the face information neighbor.

Definition at line 230 of file MooseFunctorArguments.h.

230{ return {fi->neighborPtr(), correct_skewness}; }
const Elem * neighborPtr() const
Definition FaceInfo.h:88

Referenced by Moose::FV::containerInterpolate(), Moose::FV::greenGaussGradient(), Moose::FV::interpCoeffsAndAdvected(), Moose::FV::interpolate(), Moose::FV::interpolate(), and Moose::FV::linearInterpolation().

Friends And Related Symbol Documentation

◆ operator<

bool operator< ( const FaceArg l,
const FaceArg r 
)
friend

friend function that allows this structure to be used as keys in ordered containers like sets and maps

Definition at line 236 of file MooseFunctorArguments.h.

237 {
238 return std::make_tuple(
239 l.fi, l.limiter_type, l.elem_is_upwind, l.correct_skewness, l.face_side) <
240 std::make_tuple(r.fi, r.limiter_type, r.elem_is_upwind, r.correct_skewness, r.face_side);
241 }

Member Data Documentation

◆ correct_skewness

bool Moose::FaceArg::correct_skewness

◆ elem_is_upwind

bool Moose::FaceArg::elem_is_upwind

◆ face_side

const libMesh::Elem* Moose::FaceArg::face_side

A member that can be used to indicate whether there is a sidedness to this face.

For example, a block restricted diffusion kernel may use this to specify that a diffusion coefficient should be evaluated on the elem side of the face, ignoring possible jumps in the diffusion coefficient between the elem and neighbor sides of the face. If this is null, then a functor that is itself block restricted may modify the value to indicate \emph its sidedness. If there is ever a mismatch between the specified sidedness of a physics object and the sidedness of a functor, then we will error If unspecified (nullptr), the evaluation will be two-sided, unless the functor is not defined on one side of the face.

Definition at line 212 of file MooseFunctorArguments.h.

Referenced by Function::evaluate(), MooseVariableFV< OutputType >::evaluate(), PiecewiseByBlockLambdaFunctor< T >::evaluate(), and MooseVariableFE< OutputType >::faceEvaluate().

◆ fi

const FaceInfo* Moose::FaceArg::fi

◆ limiter_type

Moose::FV::LimiterType Moose::FaceArg::limiter_type

a limiter which defines how the functor evaluated on either side of the face should be interpolated to the face

Definition at line 195 of file MooseFunctorArguments.h.

Referenced by Moose::FV::containerInterpolate(), MooseVariableFV< OutputType >::evaluate(), Moose::FV::fullLimitedInterpolation(), Moose::FV::interpCoeffsAndAdvected(), Moose::FV::interpolate(), Moose::FV::interpolate(), and Moose::FV::linearInterpolation().

◆ state_limiter

const Moose::StateArg* Moose::FaceArg::state_limiter

A member that can be used to define the instance in which the limiters are executed.

Definition at line 215 of file MooseFunctorArguments.h.

Referenced by Moose::FV::interpCoeffsAndAdvected(), Moose::FV::interpolate(), and Moose::FV::interpolate().


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