https://mooseframework.inl.gov
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. More...
 
ElemArg makeNeighbor () const
 Make a ElemArg from our data using the face information neighbor. More...
 

Public Attributes

const FaceInfofi
 a face information object which defines our location in space More...
 
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 More...
 
bool elem_is_upwind
 a boolean which states whether the face information element is upwind of the face More...
 
bool correct_skewness
 Whether to perform skew correction. More...
 
const libMesh::Elemface_side
 A member that can be used to indicate whether there is a sidedness to this face. More...
 
const Moose::StateArgstate_limiter
 A member that can be used to define the instance in which the limiters are executed. More...
 

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 More...
 

Detailed Description

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

Definition at line 171 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 203 of file MooseFunctorArguments.h.

Referenced by Function::evaluate().

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

◆ makeElem()

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

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

Definition at line 208 of file MooseFunctorArguments.h.

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

208 { return {&fi->elem(), correct_skewness}; }
const Elem & elem() const
Definition: FaceInfo.h:81
bool correct_skewness
Whether to perform skew correction.
const FaceInfo * fi
a face information object which defines our location in space

◆ makeNeighbor()

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

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

Definition at line 213 of file MooseFunctorArguments.h.

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

213 { return {fi->neighborPtr(), correct_skewness}; }
bool correct_skewness
Whether to perform skew correction.
const Elem * neighborPtr() const
Definition: FaceInfo.h:84
const FaceInfo * fi
a face information object which defines our location in space

Friends And Related Function 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 219 of file MooseFunctorArguments.h.

220  {
221  return std::make_tuple(
222  l.fi, l.limiter_type, l.elem_is_upwind, l.correct_skewness, l.face_side) <
223  std::make_tuple(r.fi, r.limiter_type, r.elem_is_upwind, r.correct_skewness, r.face_side);
224  }

Member Data Documentation

◆ correct_skewness

bool Moose::FaceArg::correct_skewness

◆ elem_is_upwind

bool Moose::FaceArg::elem_is_upwind

a boolean which states whether the face information element is upwind of the face

Definition at line 181 of file MooseFunctorArguments.h.

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

◆ 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 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 195 of file MooseFunctorArguments.h.

Referenced by PiecewiseByBlockLambdaFunctor< T >::evaluate(), Function::evaluate(), MooseVariableFV< Real >::evaluate(), and MooseVariableFE< Real >::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 178 of file MooseFunctorArguments.h.

Referenced by Moose::FV::containerInterpolate(), MooseVariableFV< Real >::evaluate(), Moose::FV::fullLimitedInterpolation(), Moose::FV::interpCoeffsAndAdvected(), 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 198 of file MooseFunctorArguments.h.

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


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