38 Foam::sampledDistanceSurface::sampleOnFaces
55 Foam::sampledDistanceSurface::sampleOnPoints
60 if (this->hasIsoSurface())
62 return this->sampleOnIsoSurfacePoints(interpolator);
77 Foam::sampledDistanceSurface::sampleOnIsoSurfacePoints
82 if (!this->hasIsoSurface())
85 <<
"cannot call without an iso-surface" <<
nl 90 const auto& volFld = interpolator.
psi();
92 tmp<VolumeField<Type>> tvolFld(volFld);
93 tmp<PointField<Type>> tpointFld;
103 tvolFld.reset(pointAverage(tpointFld()));
106 return this->isoSurfaceInterpolate(tvolFld(), tpointFld());
errorManipArg< error, int > exit(error &err, const int errNo=1)
Forwards and collection of common volume field types.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const labelList & meshCells() const
For each face, the original cell in mesh.
static const volPointInterpolation & New(const fvMesh &mesh, Args &&... args)
Get existing or create MeshObject registered with typeName.
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
constexpr char nl
The newline '\n' character (0x0a)
virtual const pointField & points() const
Points of surface.
static tmp< Field< Type > > sampleOnPoints(const interpolation< Type > &interpolator, const labelUList &elements, const faceList &fcs, const pointField &pts)
Loop for interpolating volume elements to face points.
static tmp< Field< Type > > sampleOnFaces(const interpolation< Type > &sampler, const labelUList &elements, const faceList &fcs, const pointField &pts, const Type &defaultValue=Type(Zero))
Loop for sampling volume elements to faces.
virtual const faceList & faces() const
Faces of surface.
Abstract base class for volume field interpolation.
A class for managing temporary objects.
const GeometricField< Type, fvPatchField, volMesh > & psi() const noexcept
Return the field to be interpolated.