Go to the documentation of this file.
52 #ifndef sampledSurface_H
53 #define sampledSurface_H
104 mutable scalar
area_;
126 template<
class ReturnType,
class Type>
134 template<
class ReturnType,
class Type>
142 template<
class ReturnType,
class Type>
268 virtual bool expire() = 0;
272 virtual bool update() = 0;
virtual const vectorField & Sf() const
Return face area vectors.
friend Ostream & operator<<(Ostream &, const sampledSurface &)
Ostream operator.
void makeCf() const
Make Cf.
A class for handling words, derived from string.
virtual const faceList & faces() const =0
Faces of surface.
tmp< GeometricField< Type, fvPatchField, volMesh > > pointAverage(const GeometricField< Type, pointPatchField, pointMesh > &pfld) const
Interpolate from points to cell centre.
A class for managing temporary objects.
void makeSf() const
Make Sf.
Type average(const Field< Type > &) const
Area-averaged value of a field across the surface.
sampledSurface(const word &name, const polyMesh &, const bool interpolate=false)
Construct from name, mesh.
declareRunTimeSelectionTable(autoPtr, sampledSurface, word,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict))
Declare run-time constructor selection table.
virtual tmp< scalarField > sample(const volScalarField &) const =0
Sample field on surface.
static autoPtr< sampledSurface > New(const word &name, const polyMesh &, const dictionary &)
Return a reference to the selected surface.
scalar area() const
The total surface area.
void project(Field< ReturnType > &, const Field< Type > &) const
Project field onto surface.
Type integrate(const Field< Type > &) const
Integration of a field across the surface.
word name_
Name of sample surface.
Mesh consisting of general polyhedral cells.
virtual bool expire()=0
Mark the surface as needing an update.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
virtual const pointField & points() const =0
Points of surface.
Pre-declare SubField and related Field type.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
virtual void rename(const word &newName)
Rename.
autoPtr< sampledSurface > operator()(Istream &is) const
virtual const vectorField & Cf() const
Return face centres as vectorField.
autoPtr< sampledSurface > clone() const
Clone.
An abstract class for surfaces with sampling.
virtual const scalarField & magSf() const
Return face area magnitudes.
virtual void print(Ostream &) const
Write.
const bool interpolate_
Do we intend to interpolate the information?
iNew(const polyMesh &mesh)
A list of keyword definitions, which are a keyword followed by any number of values (e....
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
TypeName("sampledSurface")
Runtime type information.
const polyMesh & mesh_
Reference to mesh.
const polyMesh & mesh_
Reference to the volume mesh.
vectorField * SfPtr_
Face area vectors.
Macros to ease declaration of run-time selection tables.
virtual bool needsUpdate() const =0
Does the surface need an update?
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
Class used for the PtrLists read-construction.
const word & name() const
Name of surface.
virtual ~sampledSurface()
Destructor.
virtual void clearGeom() const
bool checkFieldSize(const Field< Type > &) const
Check field size matches surface size.
const polyMesh & mesh() const
Access to the underlying mesh.
scalarField * magSfPtr_
Mag face area vectors.
virtual bool update()=0
Update the surface as required.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
scalar area_
Total surface area.
Generic GeometricField class.
bool interpolate() const
Interpolation requested for surface.
vectorField * CfPtr_
Face centres.
void makeMagSf() const
Make magSf.