A sampledSurface defined by a surface of iso value. More...
Public Member Functions | |
TypeName ("isoSurface") | |
Runtime type information. More... | |
isoSurface (const word &name, const polyMesh &mesh, const dictionary &dict) | |
Construct from dictionary. More... | |
virtual | ~isoSurface () |
Destructor. More... | |
virtual wordList | fields () const |
Return the list of fields required. More... | |
virtual bool | needsUpdate () const |
Does the surface need an update? More... | |
virtual bool | expire () |
Mark the surface as needing an update. More... | |
virtual bool | update () |
Update the surface as required. More... | |
virtual const pointField & | points () const |
Points of surface. More... | |
virtual const faceList & | faces () const |
Faces of surface. More... | |
virtual tmp< scalarField > | sample (const volScalarField &) const |
Sample field on surface. More... | |
virtual tmp< vectorField > | sample (const volVectorField &) const |
Sample field on surface. More... | |
virtual tmp< sphericalTensorField > | sample (const volSphericalTensorField &) const |
Sample field on surface. More... | |
virtual tmp< symmTensorField > | sample (const volSymmTensorField &) const |
Sample field on surface. More... | |
virtual tmp< tensorField > | sample (const volTensorField &) const |
Sample field on surface. More... | |
virtual tmp< scalarField > | interpolate (const interpolation< scalar > &) const |
Interpolate field on surface. More... | |
virtual tmp< vectorField > | interpolate (const interpolation< vector > &) const |
Interpolate field on surface. More... | |
virtual tmp< sphericalTensorField > | interpolate (const interpolation< sphericalTensor > &) const |
Interpolate field on surface. More... | |
virtual tmp< symmTensorField > | interpolate (const interpolation< symmTensor > &) const |
Interpolate field on surface. More... | |
virtual tmp< tensorField > | interpolate (const interpolation< tensor > &) const |
Interpolate field on surface. More... | |
virtual void | print (Ostream &) const |
Write. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | sampleField (const GeometricField< Type, fvPatchField, volMesh > &vField) const |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interpolateField (const interpolation< Type > &interpolator) const |
Public Member Functions inherited from sampledSurface | |
TypeName ("sampledSurface") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, sampledSurface, word,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict)) | |
Declare run-time constructor selection table. More... | |
sampledSurface (const word &name, const polyMesh &, const bool interpolate=false) | |
Construct from name, mesh. More... | |
sampledSurface (const word &name, const polyMesh &, const dictionary &) | |
Construct from dictionary. More... | |
autoPtr< sampledSurface > | clone () const |
Clone. More... | |
virtual | ~sampledSurface () |
Destructor. More... | |
const polyMesh & | mesh () const |
Access to the underlying mesh. More... | |
const word & | name () const |
Name of surface. More... | |
bool | interpolate () const |
Interpolation requested for surface. More... | |
virtual const vectorField & | Sf () const |
Return face area vectors. More... | |
virtual const scalarField & | magSf () const |
Return face area magnitudes. More... | |
virtual const vectorField & | Cf () const |
Return face centres as vectorField. More... | |
scalar | area () const |
The total surface area. More... | |
template<class Type > | |
Type | integrate (const Field< Type > &) const |
Integration of a field across the surface. More... | |
template<class Type > | |
Type | integrate (const tmp< Field< Type >> &) const |
Integration of a field across the surface. More... | |
template<class Type > | |
Type | average (const Field< Type > &) const |
Area-averaged value of a field across the surface. More... | |
template<class Type > | |
Type | average (const tmp< Field< Type >> &) const |
Area-averaged value of a field across the surface. More... | |
tmp< Field< scalar > > | project (const Field< scalar > &) const |
Project field onto surface. More... | |
tmp< Field< scalar > > | project (const Field< vector > &) const |
Project field onto surface. More... | |
tmp< Field< vector > > | project (const Field< sphericalTensor > &) const |
Project field onto surface. More... | |
tmp< Field< vector > > | project (const Field< symmTensor > &) const |
Project field onto surface. More... | |
tmp< Field< vector > > | project (const Field< tensor > &) const |
Project field onto surface. More... | |
template<class Type > | |
tmp< GeometricField< Type, fvPatchField, volMesh > > | pointAverage (const GeometricField< Type, pointPatchField, pointMesh > &pfld) const |
Interpolate from points to cell centre. More... | |
virtual tmp< scalarField > | sample (const surfaceScalarField &) const |
Surface sample field on surface. More... | |
virtual tmp< vectorField > | sample (const surfaceVectorField &) const |
Surface Sample field on surface. More... | |
virtual tmp< sphericalTensorField > | sample (const surfaceSphericalTensorField &) const |
Surface sample field on surface. More... | |
virtual void | rename (const word &newName) |
Rename. More... | |
template<class ReturnType , class Type > | |
Foam::tmp< Foam::Field< ReturnType > > | project (const tmp< Field< Type >> &field) const |
template<class Type > | |
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > | pointAverage (const GeometricField< Type, pointPatchField, pointMesh > &pfld) const |
Public Member Functions inherited from MeshedSurface< face > | |
MeshedSurface () | |
Construct null. More... | |
MeshedSurface (pointField &&, List< face > &&, surfZoneList &&) | |
Construct by transferring components (points, faces, zones). More... | |
MeshedSurface (pointField &&, List< face > &&, const labelUList &zoneSizes=labelUList(), const UList< word > &zoneNames=UList< word >()) | |
Construct by transferring components (points, faces). More... | |
MeshedSurface (const MeshedSurface &) | |
Copy constructor. More... | |
MeshedSurface (const UnsortedMeshedSurface< face > &) | |
Construct from a UnsortedMeshedSurface. More... | |
MeshedSurface (const polyBoundaryMesh &, const bool globalPoints=false) | |
Construct from a boundary mesh with local points/faces. More... | |
MeshedSurface (const surfMesh &) | |
Construct from a surfMesh. More... | |
MeshedSurface (UnsortedMeshedSurface< face > &&) | |
Construct by transferring the contents from a UnsortedMeshedSurface. More... | |
MeshedSurface (MeshedSurface< face > &&) | |
Construct by transferring the contents from a MeshedSurface. More... | |
MeshedSurface (const fileName &) | |
Construct from file name (uses extension to determine type) More... | |
MeshedSurface (const fileName &, const word &ext) | |
Construct from file name (uses extension to determine type) More... | |
MeshedSurface (const Time &, const word &surfName="") | |
Construct from database. More... | |
MeshedSurface (const MeshedSurface< face > &surf) | |
ClassName ("MeshedSurface") | |
Runtime type information. More... | |
bool | isTri () |
Specialisation for holding triangulated information. More... | |
declareRunTimeSelectionTable (autoPtr, MeshedSurface, fileExtension,(const fileName &name),(name)) | |
virtual | ~MeshedSurface () |
Destructor. More... | |
declareMemberFunctionSelectionTable (void, UnsortedMeshedSurface, write, fileExtension,(const fileName &name, const MeshedSurface< face > &surf),(name, surf)) | |
virtual void | write (const fileName &name) const |
Generic write routine. Chooses writer based on extension. More... | |
void | write (const Time &, const word &surfName="") const |
Write to database. More... | |
label | size () const |
The surface size is the number of faces. More... | |
const List< face > & | faces () const |
Return const access to the faces. More... | |
const List< surfZone > & | surfZones () const |
Const access to the surface zones. More... | |
virtual void | addZones (const UList< surfZone > &, const bool cullEmpty=false) |
Add surface zones. More... | |
virtual void | addZones (const labelUList &sizes, const UList< word > &names, const bool cullEmpty=false) |
Add surface zones. More... | |
virtual void | addZones (const labelUList &sizes, const bool cullEmpty=false) |
Add surface zones. More... | |
virtual void | removeZones () |
Remove surface zones. More... | |
virtual void | clear () |
Clear all storage. More... | |
virtual void | movePoints (const pointField &) |
Move points. More... | |
virtual void | scalePoints (const scalar) |
Scale points. A non-positive factor is ignored. More... | |
virtual void | reset (pointField &&points, List< face > &&faces, surfZoneList &&zones) |
Reset primitive data (points, faces and zones) More... | |
virtual void | reset (List< point > &&points, List< face > &&faces, surfZoneList &&zones) |
Reset primitive data (points, faces and zones) More... | |
virtual void | cleanup (const bool verbose) |
Remove invalid faces. More... | |
virtual bool | stitchFaces (const scalar tol=small, const bool verbose=false) |
virtual bool | checkFaces (const bool verbose=false) |
virtual label | triangulate () |
Triangulate in-place, returning the number of triangles added. More... | |
virtual label | triangulate (List< label > &faceMap) |
Triangulate in-place, returning the number of triangles added. More... | |
label | triangulate () |
Specialisation for holding triangulated information. More... | |
label | triangulate (List< label > &faceMap) |
Specialisation for holding triangulated information. More... | |
MeshedSurface | subsetMesh (const labelHashSet &include, labelList &pointMap, labelList &faceMap) const |
Return new surface. More... | |
MeshedSurface | subsetMesh (const labelHashSet &include) const |
Return new surface. More... | |
void | transfer (MeshedSurface< face > &) |
Transfer the contents of the argument and annul the argument. More... | |
void | transfer (UnsortedMeshedSurface< face > &) |
Transfer the contents of the argument and annul the argument. More... | |
bool | read (const fileName &, const word &ext) |
Read from file. Chooses reader based on explicit extension. More... | |
virtual bool | read (const fileName &) |
Read from file. Chooses reader based on detected extension. More... | |
void | writeStats (Ostream &os) const |
void | operator= (const MeshedSurface< face > &) |
operator MeshedSurfaceProxy< face > () const | |
Conversion operator to MeshedSurfaceProxy. More... | |
Public Member Functions inherited from PrimitivePatch< FaceList, PointField > | |
PrimitivePatch (const FaceList &faces, const Field< PointType > &points) | |
Construct from components. More... | |
PrimitivePatch (FaceList &&faces, Field< PointType > &&points) | |
Move constructor from components. More... | |
PrimitivePatch (FaceList &faces, Field< PointType > &points, const bool reuse) | |
Construct from components, reuse storage. More... | |
PrimitivePatch (const PrimitivePatch< FaceList, PointField > &) | |
Copy constructor. More... | |
PrimitivePatch (PrimitivePatch< FaceList, PointField > &&) | |
Move constructor. More... | |
autoPtr< PrimitivePatch< FaceList, PointField > > | clone () const |
Construct and return a clone. More... | |
~PrimitivePatch () | |
Destructor. More... | |
const Field< PointType > & | points () const |
Return reference to global points. More... | |
label | nPoints () const |
Return number of points supporting patch faces. More... | |
label | nEdges () const |
Return number of edges in patch. More... | |
const edgeList & | edges () const |
Return list of edges, address into LOCAL point list. More... | |
label | nInternalEdges () const |
Number of internal edges. More... | |
bool | isInternalEdge (const label edgeI) const |
Is internal edge? More... | |
const labelList & | boundaryPoints () const |
Return list of boundary points,. More... | |
const labelListList & | faceFaces () const |
Return face-face addressing. More... | |
const labelListList & | edgeFaces () const |
Return edge-face addressing. More... | |
const labelListList & | faceEdges () const |
Return face-edge addressing. More... | |
const labelListList & | pointEdges () const |
Return point-edge addressing. More... | |
const labelListList & | pointFaces () const |
Return point-face addressing. More... | |
const List< FaceType > & | localFaces () const |
Return patch faces addressing into local point list. More... | |
const labelList & | meshPoints () const |
Return labelList of mesh points in patch. They are constructed. More... | |
const Map< label > & | meshPointMap () const |
Mesh point map. Given the global point index find its. More... | |
const Field< PointType > & | localPoints () const |
Return pointField of points in patch. More... | |
const labelList & | localPointOrder () const |
Return orders the local points for most efficient search. More... | |
label | whichPoint (const label gp) const |
Given a global point index, return the local point index. More... | |
label | whichEdge (const edge &) const |
Given an edge in local point labels, return its. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
Return labels of patch edges in the global edge list using. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
Return labels of patch edges in the global edge list using. More... | |
const Field< PointType > & | faceCentres () const |
Return face centres for patch. More... | |
const Field< PointType > & | faceAreas () const |
Return face areas for patch. More... | |
const Field< PointType > & | faceNormals () const |
Return face normals for patch. More... | |
const Field< PointType > & | pointNormals () const |
Return point normals for patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const |
Project vertices of patch onto another patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const |
Project vertices of patch onto another patch. More... | |
const labelListList & | edgeLoops () const |
Return list of closed loops of boundary vertices. More... | |
surfaceTopo | surfaceType () const |
Calculate surface type formed by patch. More... | |
bool | checkTopology (const bool report=false, labelHashSet *setPtr=nullptr) const |
Check surface formed by patch for manifoldness (see above). More... | |
bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=nullptr) const |
Checks primitivePatch for faces sharing point but not edge. More... | |
void | clearOut () |
void | clearGeom () |
void | clearTopology () |
void | clearPatchMeshAddr () |
void | operator= (const PrimitivePatch< FaceList, PointField > &) |
Assignment operator. More... | |
void | operator= (PrimitivePatch< FaceList, PointField > &&) |
Move assignment operator. More... | |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
Public Member Functions inherited from surfaceFormatsCore | |
surfaceFormatsCore () | |
Construct null. More... | |
virtual | ~surfaceFormatsCore () |
Destructor. More... | |
Additional Inherited Members | |
Public Types inherited from MeshedSurface< face > | |
typedef face | FaceType |
Face type used. More... | |
Public Types inherited from PrimitivePatch< FaceList, PointField > | |
enum | surfaceTopo { MANIFOLD, OPEN, ILLEGAL } |
Enumeration defining the surface type. Used in check routines. More... | |
typedef FaceList | FaceListType |
typedef std::remove_reference< FaceList >::type::value_type | FaceType |
typedef PointField | PointFieldType |
typedef std::remove_reference< PointField >::type::value_type | PointType |
Static Public Member Functions inherited from sampledSurface | |
static autoPtr< sampledSurface > | New (const word &name, const polyMesh &, const dictionary &) |
Return a reference to the selected surface. More... | |
Static Public Member Functions inherited from MeshedSurface< face > | |
static bool | isTri () |
Face storage only handles triangulated faces. More... | |
static bool | canRead (const fileName &, const bool verbose=false) |
Can we read this file format? More... | |
static bool | canReadType (const word &ext, const bool verbose=false) |
Can we read this file format? More... | |
static bool | canWriteType (const word &ext, const bool verbose=false) |
Can we write this file format? More... | |
static wordHashSet | readTypes () |
static wordHashSet | writeTypes () |
static autoPtr< MeshedSurface > | New (const fileName &, const word &ext) |
Select constructed from filename (explicit extension) More... | |
static autoPtr< MeshedSurface > | New (const fileName &) |
Select constructed from filename (implicit extension) More... | |
static void | write (const fileName &, const MeshedSurface< face > &) |
Write to file. More... | |
Static Public Member Functions inherited from surfaceFormatsCore | |
static bool | checkSupport (const wordHashSet &available, const word &ext, const bool verbose, const word &functionName) |
static fileName | localMeshFileName (const word &surfName="") |
Return the local file name (within time directory) More... | |
static fileName | findMeshInstance (const Time &, const word &surfName="") |
Find instance with surfName. More... | |
static fileName | findMeshFile (const Time &, const word &surfName="") |
Find mesh file with surfName. More... | |
Static Public Attributes inherited from surfaceFormatsCore | |
static word | nativeExt |
The file extension corresponding to 'native' surface format. More... | |
Protected Member Functions inherited from sampledSurface | |
virtual void | clearGeom () const |
Protected Member Functions inherited from MeshedSurface< face > | |
void | transcribe (MeshedSurface< face > &) |
Transfer points/zones and transcribe face -> triFace. More... | |
void | transcribe (MeshedSurface< face > &surf) |
void | transcribe (MeshedSurface< face > &surf) |
void | checkZones () |
Basic sanity check on zones. More... | |
pointField & | storedPoints () |
Non-const access to global points. More... | |
List< face > & | storedFaces () |
Non-const access to the faces. More... | |
surfZoneList & | storedZones () |
Non-const access to the zones. More... | |
void | sortFacesAndStore (List< face > &&unsortedFaces, List< label > &&zoneIds, const bool sorted) |
Sort faces by zones and store sorted faces. More... | |
virtual void | remapFaces (const labelUList &faceMap) |
Set new zones from faceMap. More... | |
Static Protected Member Functions inherited from surfaceFormatsCore | |
template<class Container > | |
static List< surfZone > | oneZone (const Container &container, const word &name="zone0") |
Return a list with a single entry,. More... | |
static string | getLineNoComment (IFstream &) |
Read non-comment line. More... | |
A sampledSurface defined by a surface of iso value.
{ type isoSurface; isoField p; isoValue 1e5; filtering full; interpolate yes; }
Property | Description | Required | Default value |
---|---|---|---|
isoField | the field to get an iso-surface of | yes | |
isoValue | the iso-surface value | yes | |
filtering | the level of filtering to perform on the iso-surface | no | full |
interpolate | interpolate values to the surface points | no | no |
Definition at line 100 of file sampledIsoSurface.H.
isoSurface | ( | const word & | name, |
const polyMesh & | mesh, | ||
const dictionary & | dict | ||
) |
Construct from dictionary.
Definition at line 238 of file sampledIsoSurface.C.
|
virtual |
Destructor.
Definition at line 265 of file sampledIsoSurface.C.
TypeName | ( | "isoSurface" | ) |
Runtime type information.
|
virtual |
Return the list of fields required.
Reimplemented from sampledSurface.
Definition at line 271 of file sampledIsoSurface.C.
|
virtual |
Does the surface need an update?
Implements sampledSurface.
Definition at line 277 of file sampledIsoSurface.C.
References mesh, fvMesh::time(), and TimeState::timeIndex().
|
virtual |
Mark the surface as needing an update.
May also free up unneeded data. Return false if surface was already marked as expired.
Implements sampledSurface.
Definition at line 285 of file sampledIsoSurface.C.
References sampledSurface::clearGeom(), and PrimitivePatch<::Foam::List< Face >, pointField >::clearGeom().
|
virtual |
Update the surface as required.
Do nothing (and return false) if no update was needed
Implements sampledSurface.
Definition at line 303 of file sampledIsoSurface.C.
References isoSurface::sample().
|
inlinevirtual |
Points of surface.
Implements sampledSurface.
Definition at line 184 of file sampledIsoSurface.H.
References PrimitivePatch<::Foam::List< Face >, pointField >::points().
Referenced by cuttingPlane::points(), and distanceSurface::points().
|
inlinevirtual |
Faces of surface.
Implements sampledSurface.
Definition at line 190 of file sampledIsoSurface.H.
References sampledSurface::interpolate(), isoSurface::print(), and isoSurface::sample().
Referenced by cuttingPlane::faces(), and distanceSurface::faces().
|
virtual |
Sample field on surface.
Implements sampledSurface.
Definition at line 311 of file sampledIsoSurface.C.
Referenced by isoSurface::faces(), isoSurface::sample(), and isoSurface::update().
|
virtual |
Sample field on surface.
Implements sampledSurface.
Definition at line 321 of file sampledIsoSurface.C.
References isoSurface::sample().
|
virtual |
Sample field on surface.
Implements sampledSurface.
Definition at line 331 of file sampledIsoSurface.C.
References isoSurface::sample().
|
virtual |
Sample field on surface.
Implements sampledSurface.
Definition at line 341 of file sampledIsoSurface.C.
References isoSurface::sample().
|
virtual |
Sample field on surface.
Implements sampledSurface.
Definition at line 351 of file sampledIsoSurface.C.
References sampledSurface::interpolate().
|
virtual |
Interpolate field on surface.
Implements sampledSurface.
Definition at line 361 of file sampledIsoSurface.C.
References sampledSurface::interpolate().
|
virtual |
Interpolate field on surface.
Implements sampledSurface.
Definition at line 371 of file sampledIsoSurface.C.
References sampledSurface::interpolate().
|
virtual |
Interpolate field on surface.
Implements sampledSurface.
Definition at line 380 of file sampledIsoSurface.C.
References sampledSurface::interpolate().
|
virtual |
Interpolate field on surface.
Implements sampledSurface.
Definition at line 390 of file sampledIsoSurface.C.
References sampledSurface::interpolate().
|
virtual |
Interpolate field on surface.
Implements sampledSurface.
Definition at line 400 of file sampledIsoSurface.C.
|
virtual |
Write.
Reimplemented from sampledSurface.
Definition at line 408 of file sampledIsoSurface.C.
References Foam::name(), and points.
Referenced by isoSurface::faces().
Foam::tmp<Foam::Field<Type> > sampleField | ( | const GeometricField< Type, fvPatchField, volMesh > & | vField | ) | const |
Definition at line 34 of file sampledIsoSurfaceTemplates.C.
Foam::tmp<Foam::Field<Type> > interpolateField | ( | const interpolation< Type > & | interpolator | ) | const |
Definition at line 48 of file sampledIsoSurfaceTemplates.C.
References f(), forAll, interpolation< Type >::interpolate(), points, and tmp< T >::ref().