FreeFOAM The Cross-Platform CFD Toolkit
sampledIsoSurface Class Reference

A sampledSurface defined by a surface of iso value. Always triangulated. To be used in sampleSurfaces / functionObjects. Recalculates iso surface only if time changes. More...

#include <sampling/sampledIsoSurface.H>


Detailed Description

A sampledSurface defined by a surface of iso value. Always triangulated. To be used in sampleSurfaces / functionObjects. Recalculates iso surface only if time changes.

Source files

Definition at line 54 of file sampledIsoSurface.H.

+ Inheritance diagram for sampledIsoSurface:
+ Collaboration diagram for sampledIsoSurface:

List of all members.

Public Member Functions

 TypeName ("sampledIsoSurface")
 Runtime type information.
 sampledIsoSurface (const word &name, const polyMesh &mesh, const dictionary &dict)
 Construct from dictionary.
virtual ~sampledIsoSurface ()
virtual bool needsUpdate () const
 Does the surface need an update?
virtual bool expire ()
 Mark the surface as needing an update.
virtual bool update ()
 Update the surface as required.
virtual const pointFieldpoints () const
 Points of surface.
virtual const faceListfaces () const
 Faces of surface.
const isoSurfacesurface () const
void getIsoField ()
 Lookup or read isoField. Sets volFieldPtr_ and pointFieldPtr_.
virtual tmp< scalarFieldsample (const volScalarField &) const
 sample field on surface
virtual tmp< vectorFieldsample (const volVectorField &) const
 sample field on surface
virtual tmp< sphericalTensorFieldsample (const volSphericalTensorField &) const
 sample field on surface
virtual tmp< symmTensorFieldsample (const volSymmTensorField &) const
 sample field on surface
virtual tmp< tensorFieldsample (const volTensorField &) const
 sample field on surface
virtual tmp< scalarFieldinterpolate (const interpolation< scalar > &) const
 interpolate field on surface
virtual tmp< vectorFieldinterpolate (const interpolation< vector > &) const
 interpolate field on surface
virtual tmp< sphericalTensorFieldinterpolate (const interpolation< sphericalTensor > &) const
 interpolate field on surface
virtual tmp< symmTensorFieldinterpolate (const interpolation< symmTensor > &) const
 interpolate field on surface
virtual tmp< tensorFieldinterpolate (const interpolation< tensor > &) const
 interpolate field on surface
virtual void print (Ostream &) const
 Write.
- Public Member Functions inherited from sampledSurface
 TypeName ("sampledSurface")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, sampledSurface, word,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict))
 sampledSurface (const word &name, const polyMesh &)
 Construct from name, mesh.
 sampledSurface (const word &name, const polyMesh &, const dictionary &)
 Construct from dictionary.
autoPtr< sampledSurfaceclone () const
 Clone.
virtual ~sampledSurface ()
const polyMeshmesh () const
 Access to the underlying mesh.
const wordname () const
 Name of surface.
bool interpolate () const
 interpolation requested for surface
virtual const vectorFieldSf () const
 Return face area vectors.
virtual const scalarFieldmagSf () const
 Return face area magnitudes.
virtual const vectorFieldCf () const
 Return face centres as vectorField.
scalar area () const
 The total surface area.
template<class Type >
Type integrate (const Field< Type > &) const
 Integration of a field across the surface.
template<class Type >
Type integrate (const tmp< Field< Type > > &) const
 Integration of a field across the surface.
template<class Type >
Type average (const Field< Type > &) const
 Area-averaged value of a field across the surface.
template<class Type >
Type average (const tmp< Field< Type > > &) const
 Area-averaged value of a field across the surface.
tmp< Field< scalar > > project (const Field< scalar > &) const
 Project field onto surface.
tmp< Field< scalar > > project (const Field< vector > &) const
 Project field onto surface.
tmp< Field< vector > > project (const Field< sphericalTensor > &) const
 Project field onto surface.
tmp< Field< vector > > project (const Field< symmTensor > &) const
 Project field onto surface.
tmp< Field< vector > > project (const Field< tensor > &) const
 Project field onto surface.
virtual tmp< scalarFieldsample (const volScalarField &) const =0
 Sample field on surface.
virtual void rename (const word &newName)
 Rename.

Additional Inherited Members

- Static Public Member Functions inherited from sampledSurface
static autoPtr< sampledSurfaceNew (const word &name, const polyMesh &, const dictionary &)
 Return a reference to the selected surface.
- Protected Member Functions inherited from sampledSurface
virtual void clearGeom () const

Constructor & Destructor Documentation

~sampledIsoSurface ( )
virtual

Definition at line 547 of file sampledIsoSurface.C.


Member Function Documentation

TypeName ( "sampledIsoSurface"  )

Runtime type information.

bool needsUpdate ( ) const
virtual

Does the surface need an update?

Implements sampledSurface.

Definition at line 553 of file sampledIsoSurface.C.

References mesh, fvMesh::time(), and TimeState::timeIndex().

bool expire ( )
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 561 of file sampledIsoSurface.C.

bool update ( )
virtual

Update the surface as required.

Do nothing (and return false) if no update was needed

Implements sampledSurface.

Definition at line 582 of file sampledIsoSurface.C.

virtual const pointField& points ( ) const
inlinevirtual
virtual const faceList& faces ( ) const
inlinevirtual

Faces of surface.

Implements sampledSurface.

Definition at line 193 of file sampledIsoSurface.H.

References autoPtr< T >::empty(), forAll, autoPtr< T >::reset(), List< T >::size(), and sampledIsoSurface::surface().

const isoSurface& surface ( ) const
inline

Definition at line 210 of file sampledIsoSurface.H.

Referenced by sampledIsoSurface::faces(), and sampledIsoSurface::points().

void getIsoField ( )

Lookup or read isoField. Sets volFieldPtr_ and pointFieldPtr_.

virtual tmp<scalarField> sample ( const volScalarField ) const
virtual

sample field on surface

Foam::tmp< Foam::vectorField > sample ( const volVectorField vField) const
virtual

sample field on surface

Implements sampledSurface.

Definition at line 598 of file sampledIsoSurface.C.

Foam::tmp< Foam::symmTensorField > sample ( const volSphericalTensorField vField) const
virtual

sample field on surface

Implements sampledSurface.

Definition at line 607 of file sampledIsoSurface.C.

virtual tmp<symmTensorField> sample ( const volSymmTensorField ) const
virtual

sample field on surface

Implements sampledSurface.

Foam::tmp< Foam::tensorField > sample ( const volTensorField vField) const
virtual

sample field on surface

Implements sampledSurface.

Definition at line 625 of file sampledIsoSurface.C.

Foam::tmp< Foam::scalarField > interpolate ( const interpolation< scalar > &  interpolator) const
virtual

interpolate field on surface

Implements sampledSurface.

Definition at line 634 of file sampledIsoSurface.C.

Foam::tmp< Foam::vectorField > interpolate ( const interpolation< vector > &  interpolator) const
virtual

interpolate field on surface

Implements sampledSurface.

Definition at line 643 of file sampledIsoSurface.C.

Foam::tmp< Foam::sphericalTensorField > interpolate ( const interpolation< sphericalTensor > &  interpolator) const
virtual

interpolate field on surface

Implements sampledSurface.

Definition at line 651 of file sampledIsoSurface.C.

Foam::tmp< Foam::symmTensorField > interpolate ( const interpolation< symmTensor > &  interpolator) const
virtual

interpolate field on surface

Implements sampledSurface.

Definition at line 660 of file sampledIsoSurface.C.

Foam::tmp< Foam::tensorField > interpolate ( const interpolation< tensor > &  interpolator) const
virtual

interpolate field on surface

Implements sampledSurface.

Definition at line 669 of file sampledIsoSurface.C.

void print ( Ostream os) const
virtual

Write.

Reimplemented from sampledSurface.

Definition at line 677 of file sampledIsoSurface.C.

References Foam::name().


The documentation for this class was generated from the following files: