Interface for interpolation methods that provide matrix and RHS contributions for advected face values. More...
#include <FVAdvectedInterpolationMethod.h>
Classes | |
| struct | AdvectedSystemContribution |
| Matrix/RHS contribution for an advected face interpolation. More... | |
Public Member Functions | |
| virtual AdvectedSystemContribution | advectedInterpolate (const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *elem_grad, const VectorValue< Real > *neighbor_grad, Real mass_flux) const =0 |
| Compute the matrix weights for the advected face value. More... | |
| AdvectedSystemContribution | advectedInterpolate (const Moose::FunctorBase< Real > &functor, const FaceInfo &face, const Moose::StateArg &state, const Real mass_flux) const |
| Convenience overload that evaluates a scalar Moose functor at the adjacent cell centers and, if needed, its cell gradients before applying this interpolation method. More... | |
| virtual Real | advectedInterpolateValue (const FaceInfo &face, Real elem_value, Real neighbor_value, const VectorValue< Real > *elem_grad, const VectorValue< Real > *neighbor_grad, Real mass_flux) const |
| Compute the advected face value. More... | |
| Real | advectedInterpolateValue (const Moose::FunctorBase< Real > &functor, const FaceInfo &face, const Moose::StateArg &state, const Real mass_flux) const |
| Convenience overload that evaluates a scalar Moose functor at the adjacent cell centers and, if needed, its cell gradients before applying this interpolation method. More... | |
| virtual bool | needsGradients () const |
| Whether advected interpolation requires adjacent-cell gradients. More... | |
| virtual Moose::FV::GradientLimiterType | gradientLimiter () const |
| Limiter used by interpolations that require limited gradients. More... | |
Interface for interpolation methods that provide matrix and RHS contributions for advected face values.
Definition at line 22 of file FVAdvectedInterpolationMethod.h.
|
pure virtual |
Compute the matrix weights for the advected face value.
Interpolation is used on internal faces, boundary treatment is localized to the boundary conditions.
| face | The face being interpolated. |
| elem_value | Element-side scalar value. |
| neighbor_value | Neighbor-side scalar value. |
| elem_grad | Element-side cell gradient (required). |
| neighbor_grad | Neighbor-side cell gradient (required). |
| mass_flux | Face mass flux for determining upwind direction. |
Implemented in FVAdvectedVenkatakrishnanDeferredCorrection, FVGeometricAverage, FVAdvectedMinmodWeightBased, FVAdvectedVanLeerWeightBased, and FVAdvectedUpwind.
Referenced by advectedInterpolate(), advectedInterpolateValue(), and LinearFVAdvection::setupFaceData().
| FVAdvectedInterpolationMethod::AdvectedSystemContribution FVAdvectedInterpolationMethod::advectedInterpolate | ( | const Moose::FunctorBase< Real > & | functor, |
| const FaceInfo & | face, | ||
| const Moose::StateArg & | state, | ||
| const Real | mass_flux | ||
| ) | const |
Convenience overload that evaluates a scalar Moose functor at the adjacent cell centers and, if needed, its cell gradients before applying this interpolation method.
This will provide contributions to the matrix and right hand side of a linear system.
| functor | The function which will be interpolated onto the face. |
| face | The face which will be use for interpolation. |
| state | The state argument for which we are performing the interpolation. |
| mass_flux | The mass flux which will be used for the interpolation. |
Definition at line 13 of file FVAdvectedInterpolationMethod.C.
|
virtual |
Compute the advected face value.
Interpolation is used on internal faces, boundary treatment is localized to the boundary conditions.
| face | The face being interpolated. |
| elem_value | Element-side scalar value. |
| neighbor_value | Neighbor-side scalar value. |
| elem_grad | Element-side cell gradient (required). |
| neighbor_grad | Neighbor-side cell gradient (required). |
| mass_flux | Face mass flux for determining upwind direction. |
Reimplemented in FVGeometricAverage, FVAdvectedMinmodWeightBased, FVAdvectedVanLeerWeightBased, and FVAdvectedUpwind.
Definition at line 36 of file FVAdvectedInterpolationMethod.C.
Referenced by advectedInterpolateValue().
| Real FVAdvectedInterpolationMethod::advectedInterpolateValue | ( | const Moose::FunctorBase< Real > & | functor, |
| const FaceInfo & | face, | ||
| const Moose::StateArg & | state, | ||
| const Real | mass_flux | ||
| ) | const |
Convenience overload that evaluates a scalar Moose functor at the adjacent cell centers and, if needed, its cell gradients before applying this interpolation method.
This will return the interpolated face value.
| functor | The function which will be interpolated onto the face. |
| face | The face which will be use for interpolation. |
| state | The state argument for which we are performing the interpolation. |
| mass_flux | The mass flux which will be used for the interpolation. |
Definition at line 50 of file FVAdvectedInterpolationMethod.C.
|
inlinevirtual |
Limiter used by interpolations that require limited gradients.
Reimplemented in FVAdvectedVenkatakrishnanDeferredCorrection.
Definition at line 102 of file FVAdvectedInterpolationMethod.h.
Referenced by LinearFVAdvection::LinearFVAdvection(), and LinearFVAdvection::setupFaceData().
|
inlinevirtual |
Whether advected interpolation requires adjacent-cell gradients.
Reimplemented in FVAdvectedVenkatakrishnanDeferredCorrection, FVAdvectedMinmodWeightBased, and FVAdvectedVanLeerWeightBased.
Definition at line 97 of file FVAdvectedInterpolationMethod.h.
Referenced by advectedInterpolate(), advectedInterpolateValue(), LinearFVAdvection::LinearFVAdvection(), and LinearFVAdvection::setupFaceData().
1.8.14