This function object generates streamline data by sampling a set of user-specified fields along a particle track, transported by a user-specified velocity field, constrained to a patch. More...
Public Member Functions | |
TypeName ("wallBoundedStreamLine") | |
Runtime type information. More... | |
wallBoundedStreamLine (const word &name, const Time &runTime, const dictionary &dict) | |
Construct from Time and dictionary. More... | |
virtual | ~wallBoundedStreamLine () |
Destructor. More... | |
virtual bool | read (const dictionary &) |
Read the field average data. More... | |
virtual bool | execute () |
Do nothing. More... | |
virtual bool | write () |
Calculate and write the wall-bounded streamlines. More... | |
virtual void | updateMesh (const mapPolyMesh &) |
Update for changes of mesh. More... | |
virtual void | movePoints (const polyMesh &) |
Update for mesh point-motion. More... | |
Public Member Functions inherited from functionObject | |
virtual const word & | type () const =0 |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, functionObject, dictionary,(const word &name, const Time &runTime, const dictionary &dict),(name, runTime, dict)) | |
functionObject (const word &name) | |
Construct from components. More... | |
autoPtr< functionObject > | clone () const |
Return clone. More... | |
virtual | ~functionObject () |
Destructor. More... | |
const word & | name () const |
Return the name of this functionObject. More... | |
virtual bool | end () |
Called when Time::run() determines that the time-loop exits. More... | |
virtual bool | adjustTimeStep () |
Called at the end of Time::adjustDeltaT() if adjustTime is true. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from functionObject | |
static autoPtr< functionObject > | New (const word &name, const Time &, const dictionary &) |
Select from dictionary, based on its "type" entry. More... | |
Public Attributes inherited from functionObject | |
Switch | log |
Switch write log to Info. More... | |
Static Public Attributes inherited from functionObject | |
static int | debug |
static bool | postProcess |
Global post-processing mode switch. More... | |
This function object generates streamline data by sampling a set of user-specified fields along a particle track, transported by a user-specified velocity field, constrained to a patch.
Example of function object specification:
wallBoundedStreamLine1 { type wallBoundedStreamLine; libs ("libfieldFunctionObjects.so"); ... setFormat vtk; U UNear; trackForward yes; fields ( UNear p ); lifeTime 10000; trackLength 1e-3; nSubCycle 5; cloudName particleTracks; seedSampleSet patchSeed; patchSeedCoeffs { type patchSeed; patches (wall); axis x; maxPoints 20000; } }
Property | Description | Required | Default value |
---|---|---|---|
type | Type name: wallBoundedStreamLine | yes | |
setFormat | Output data type | yes | |
U | Tracking velocity field name | yes | |
fields | Fields to sample | yes | |
lifetime | Maximum number of particle tracking steps | yes | |
trackLength | Tracking segment length | no | |
nSubCycle | Number of tracking steps per cell | no | |
cloudName | Cloud name to use | yes | |
seedSampleSet | Seeding method (see below) | yes |
Where seedSampleSet
is typically one of
uniform | : | uniform particle seeding |
cloud | : | cloud of points |
patchSeed | : | seeding via patch faces |
triSurfaceMeshPointSet | : | points according to a tri-surface mesh |
trackLength
OR nSubCycle
option should be usedDefinition at line 196 of file wallBoundedStreamLine.H.
wallBoundedStreamLine | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Construct from Time and dictionary.
Definition at line 406 of file wallBoundedStreamLine.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::read().
|
virtual |
Destructor.
Definition at line 434 of file wallBoundedStreamLine.C.
TypeName | ( | "wallBoundedStreamLine" | ) |
Runtime type information.
|
virtual |
Read the field average data.
Reimplemented from functionObject.
Definition at line 440 of file wallBoundedStreamLine.C.
References Foam::abort(), primitiveMesh::cells(), polyMeshTetDecomposition::checkFaceTets(), HashTable< T, Key, Hash >::clear(), Foam::e, HashTableCore::end(), Foam::endl(), Foam::exit(), polyMesh::faces(), Foam::FatalError, FatalErrorInFunction, Foam::FatalIOError, FatalIOErrorInFunction, HashTable< T, Key, Hash >::find(), Foam::findIndex(), forAll, forAllConstIter(), dictionary::found(), Foam::Info, HashTable< T, Key, Hash >::insert(), IOWarningInFunction, dictionary::lookup(), dictionary::lookupOrDefault(), polyMeshTetDecomposition::minTetQuality, MeshObject< polyMesh, GeometricMeshObject, meshSearchMeshObject >::New(), writer< Type >::New(), sampledSet::New(), face::nextLabel(), primitiveMesh::nFaces(), Foam::nl, Foam::returnReduce(), dictionary::subDict(), Foam::type(), and WarningInFunction.
|
virtual |
|
virtual |
Calculate and write the wall-bounded streamlines.
Implements functionObject.
Definition at line 597 of file wallBoundedStreamLine.C.
References polyMesh::defaultRegion, mapDistributeBase::distribute(), Foam::endl(), forAll, Foam::Info, UPstream::master(), Foam::mkDir(), n, Foam::name(), fvMesh::name(), Foam::nl, UPstream::nProcs(), UPstream::parRun(), fileName::path(), Time::path(), UPstream::scheduled, DynamicList< T, SizeInc, SizeMult, SizeDiv >::setSize(), List< T >::setSize(), List< T >::size(), objectRegistry::time(), fvMesh::time(), Time::timeName(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::transfer(), wallBoundedStreamLine::updateMesh(), Ostream::write(), and List< T >::xfer().
|
virtual |
Update for changes of mesh.
Reimplemented from functionObject.
Definition at line 838 of file wallBoundedStreamLine.C.
References mapPolyMesh::mesh(), wallBoundedStreamLine::movePoints(), and Foam::read().
Referenced by wallBoundedStreamLine::write().
|
virtual |
Update for mesh point-motion.
Reimplemented from functionObject.
Definition at line 852 of file wallBoundedStreamLine.C.
References Foam::read().
Referenced by wallBoundedStreamLine::updateMesh().