https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FVFaceInterpolationMethod.C
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
11
12Real
14 const FaceInfo & face,
15 const Moose::StateArg & state) const
16{
17 mooseAssert(face.neighborPtr(),
18 "Face interpolation with a Moose functor requires a two-sided internal face.");
19
20 const Real elem_value = functor(Moose::ElemArg{face.elemPtr(), false}, state);
21 const Real neighbor_value = functor(Moose::ElemArg{face.neighborPtr(), false}, state);
22 return interpolate(face, elem_value, neighbor_value);
23}
virtual Real interpolate(const FaceInfo &face, Real elem_value, Real neighbor_value) const =0
Face interpolation operation for this method.
This data structure is used to store geometric and variable related metadata about each cell face in ...
Definition FaceInfo.h:38
const Elem * neighborPtr() const
Definition FaceInfo.h:88
const Elem * elemPtr() const
Definition FaceInfo.h:86
Base class template for functor objects.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
A structure that is used to evaluate Moose functors logically at an element/cell center.
State argument for evaluating functors.