Go to the documentation of this file.
127 #ifndef sampledSurfaces_H
128 #define sampledSurfaces_H
149 class sampledSurfaces
151 public functionObjects::fvMeshFunctionObject,
152 public PtrList<sampledSurface>
157 static scalar mergeTol_;
160 enum sampleActionType :
unsigned
165 ACTION_SURF_MESH = 0x4,
173 const bool loadFromFiles_;
182 fileName outputPath_;
188 wordRes fieldSelection_;
191 word sampleFaceScheme_;
194 word sampleNodeScheme_;
200 PtrList<surfaceWriter> writers_;
203 List<unsigned> actions_;
212 const PtrList<sampledSurface>& surfaces()
const
218 PtrList<sampledSurface>& surfaces()
233 bool performAction(
unsigned request);
244 const word& fieldName
264 template<
class GeoField>
285 template<
class Type,
class GeoMeshType>
286 bool storeRegistryField
289 const word& fieldName,
295 template<
class Container,
class Predicate>
296 static bool testAny(
const Container& items,
const Predicate& pred);
299 virtual bool needsUpdate()
const;
305 virtual bool expire(
const bool force=
false);
309 virtual bool update();
341 const bool loadFromFiles =
false
362 virtual bool write();
377 static scalar
mergeTol(
const scalar tol);
List< label > labelList
A List of labels.
TypeName("surfaces")
Runtime type information.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A class for handling words, derived from Foam::string.
Base class for surface writers.
A class for handling file names.
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
virtual void readUpdate(const polyMesh::readUpdateState state)
Update for changes of mesh due to readUpdate - expires the surfaces.
List< T > values(const HashTable< T, Key, Hash > &tbl, const bool doSort=false)
List of values from HashTable, optionally sorted.
virtual bool read(const dictionary &dict)
Read the sampledSurfaces dictionary.
virtual void updateMesh(const mapPolyMesh &mpm)
Update for changes of mesh - expires the surfaces.
Dimension set for the base types, which can be used to implement rigorous dimension checking for alge...
static scalar mergeTol()
Get merge tolerance.
Specialization of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
const dictionary formatOptions
Mesh consisting of general polyhedral cells.
bool verbose(const bool on)
Enable/disable verbose output.
Registry of regIOobjects.
Set of surfaces to sample.
A surface mesh consisting of general polygon faces and capable of holding fields.
virtual bool execute()
Sample and store if the sampleOnExecute is enabled.
Generic templated field type.
An abstract class for surfaces with sampling.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< ' ';}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< ' ';}gmvFile<< nl;for(const word &name :lagrangianScalarNames){ IOField< scalar > fld(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Base class for graphics format writing. Entry points are.
List of IOobjects with searching and retrieving facilities.
readUpdateState
Enumeration defining the state of the mesh after a read update.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const word & name() const noexcept
Return the name of this functionObject.
virtual const objectRegistry & obr() const
The region or sub-region registry being used.
A List of wordRe with additional matching capabilities.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
virtual bool write()
Sample and write.
virtual ~sampledSurfaces()=default
Destructor.
virtual void movePoints(const polyMesh &mesh)
Update for mesh point-motion - expires the surfaces.