16 const Real mass_flux)
const
19 "Advected interpolation with a Moose functor requires a two-sided internal face.");
23 const Real elem_value = functor(elem_arg, state);
24 const Real neighbor_value = functor(neighbor_arg, state);
29 const auto elem_grad = functor.
gradient(elem_arg, state);
30 const auto neighbor_grad = functor.
gradient(neighbor_arg, state);
32 face, elem_value, neighbor_value, &elem_grad, &neighbor_grad, mass_flux);
39 const VectorValue<Real> * elem_grad,
40 const VectorValue<Real> * neighbor_grad,
45 return result.weights_matrix.first * elem_value + result.weights_matrix.second * neighbor_value -
46 result.rhs_face_value;
53 const Real mass_flux)
const
56 "Advected interpolation with a Moose functor requires a two-sided internal face.");
60 const Real elem_value = functor(elem_arg, state);
61 const Real neighbor_value = functor(neighbor_arg, state);
66 const auto elem_grad = functor.
gradient(elem_arg, state);
67 const auto neighbor_grad = functor.
gradient(neighbor_arg, state);
69 face, elem_value, neighbor_value, &elem_grad, &neighbor_grad, mass_flux);
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.
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.
virtual bool needsGradients() const
Whether advected interpolation requires adjacent-cell gradients.
This data structure is used to store geometric and variable related metadata about each cell face in ...
const Elem * neighborPtr() const
const Elem * elemPtr() const
Base class template for functor objects.
GradientType gradient(const ElemArg &elem, const StateArg &state) const
Same as their evaluateGradient overloads with the same arguments but allows for caching implementatio...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Matrix/RHS contribution for an advected face interpolation.
A structure that is used to evaluate Moose functors logically at an element/cell center.
State argument for evaluating functors.