83#ifndef sampledIsoSurface_H
84#define sampledIsoSurface_H
99class sampledIsoSurface
101 public sampledSurface
106 const word isoField_;
109 List<scalar> isoValues_;
112 isoSurfaceParams isoParams_;
127 mutable word exposedPatchName_;
133 mutable label prevTimeIndex_;
142 mutable autoPtr<isoSurfaceBase> isoSurfacePtr_;
148 mutable autoPtr<fvMeshSubset> subMeshPtr_;
151 mutable autoPtr<bitSet> ignoreCellsPtr_;
157 mutable autoPtr<volScalarField> storedVolFieldPtr_;
167 mutable autoPtr<volScalarField> storedVolSubFieldPtr_;
177 void getIsoFields()
const;
184 bool updateGeometry()
const;
215 return bool(isoSurfacePtr_);
268 return *isoSurfacePtr_;
278 return isoSurfacePtr_->meshCells();
323 virtual tmp<scalarField>
sample
325 const interpolation<scalar>& sampler
329 virtual tmp<vectorField>
sample
331 const interpolation<vector>& sampler
335 virtual tmp<sphericalTensorField>
sample
337 const interpolation<sphericalTensor>& sampler
Minimal example by using system/controlDict.functions:
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
static const List< label > & null()
Return a null List.
const vectorField & Sf() const
Face area vectors (normals)
const scalarField & magSf() const
Face area magnitudes.
const vectorField & Cf() const
Face centres.
const List< Face > & surfFaces() const
Return const access to the faces.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
const Field< point_type > & points() const noexcept
Return reference to global points.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Abstract base class for volume field interpolation.
Preferences for controlling iso-surface algorithms.
Mesh consisting of general polyhedral cells.
A sampledSurface defined by a surface of iso value. It only recalculates the iso-surface if time chan...
virtual const pointField & points() const
Points of surface.
TypeName("sampledIsoSurface")
Runtime type information.
virtual void print(Ostream &os, int level=0) const
Print information.
const meshedSurface & surface() const
The currently created surface geometry.
virtual ~sampledIsoSurface()
Destructor.
virtual const faceList & faces() const
Faces of surface.
virtual const vectorField & Cf() const
Face centres.
virtual const labelList & zoneIds() const
Per-face zone/region information.
virtual const scalarField & magSf() const
Face area magnitudes.
virtual bool expire()
Mark the surface as needing an update.
virtual bool needsUpdate() const
Does the surface need an update?
virtual bool update()
Update the surface as required.
virtual const vectorField & Sf() const
Face area magnitudes.
const labelList & meshCells() const
For each face, the original cell in mesh.
bool hasIsoSurface() const
Is currently backed by an isoSurfacePtr_.
An abstract class for surfaces with sampling.
const word & name() const noexcept
Name of surface.
const polyMesh & mesh() const noexcept
Access to the underlying mesh.
bool interpolate() const noexcept
Same as isPointData()
A class for managing temporary objects.
A List of wordRe with additional matching capabilities.
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
GeometricField< scalar, pointPatchField, pointMesh > pointScalarField
List< label > labelList
A List of labels.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
vectorField pointField
pointField is a vectorField.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
MeshedSurface< face > meshedSurface
Field< vector > vectorField
Specialisation of Field<T> for vector.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.