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") | |
wallBoundedStreamLine (const word &name, const Time &runTime, const dictionary &dict) | |
wallBoundedStreamLine (const word &name, const Time &runTime, const dictionary &dict, const wordList &fieldNames) | |
wallBoundedStreamLine (const wallBoundedStreamLine &)=delete | |
void | operator= (const wallBoundedStreamLine &)=delete |
virtual | ~wallBoundedStreamLine ()=default |
virtual bool | read (const dictionary &) |
virtual void | track () |
![]() | |
TypeName ("streamLineBase") | |
streamLineBase (const word &name, const Time &runTime, const dictionary &dict) | |
streamLineBase (const word &name, const Time &runTime, const dictionary &dict, const wordList &fieldNames) | |
virtual | ~streamLineBase () |
virtual bool | execute () |
virtual bool | write () |
virtual void | updateMesh (const mapPolyMesh &) |
virtual void | movePoints (const polyMesh &) |
![]() | |
TypeName ("fvMeshFunctionObject") | |
fvMeshFunctionObject (const word &name, const Time &runTime, const dictionary &dict) | |
fvMeshFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict) | |
virtual | ~fvMeshFunctionObject ()=default |
![]() | |
TypeName ("regionFunctionObject") | |
regionFunctionObject (const word &name, const Time &runTime, const dictionary &dict) | |
regionFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict) | |
virtual | ~regionFunctionObject ()=default |
template<class ObjectType > | |
const ObjectType * | lookupObjectPtr (const word &fieldName) const |
template<class ObjectType > | |
ObjectType * | lookupObjectRefPtr (const word &fieldName) const |
![]() | |
stateFunctionObject (const word &name, const Time &runTime) | |
virtual | ~stateFunctionObject ()=default |
dictionary & | propertyDict () |
bool | foundProperty (const word &entryName) const |
void | clearTrigger () |
label | getTrigger () const |
bool | setTrigger (const label triggeri, bool increaseOnly=true) |
bool | getDict (const word &entryName, dictionary &dict) const |
bool | getObjectDict (const word &objectName, const word &entryName, dictionary &dict) const |
template<class Type > | |
Type | getProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const |
template<class Type > | |
bool | getProperty (const word &entryName, Type &value) const |
template<class Type > | |
void | setProperty (const word &entryName, const Type &value) |
template<class Type > | |
Type | getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
template<class Type > | |
bool | getObjectProperty (const word &objectName, const word &entryName, Type &value) const |
template<class Type > | |
void | setObjectProperty (const word &objectName, const word &entryName, const Type &value) |
template<class Type > | |
void | setResult (const word &entryName, const Type &value) |
template<class Type > | |
void | setObjectResult (const word &objectName, const word &entryName, const Type &value) |
template<class Type > | |
Type | getResult (const word &entryName, const Type &defaultValue=Type(Zero)) const |
template<class Type > | |
Type | getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
template<class Type > | |
bool | getObjectResult (const word &objectName, const word &entryName, Type &value) const |
word | resultType (const word &entryName) const |
word | objectResultType (const word &objectName, const word &entryName) const |
wordList | objectResultEntries () const |
wordList | objectResultEntries (const word &objectName) const |
void | writeResultEntries (Ostream &os) const |
void | writeResultEntries (const word &objectName, Ostream &os) const |
void | writeAllResultEntries (Ostream &os) const |
![]() | |
timeFunctionObject (const word &name, const Time &runTime) | |
virtual | ~timeFunctionObject ()=default |
const Time & | time () const |
objectRegistry & | storedObjects () |
const objectRegistry & | storedObjects () const |
![]() | |
declareRunTimeSelectionTable (autoPtr, functionObject, dictionary,(const word &name, const Time &runTime, const dictionary &dict),(name, runTime, dict)) | |
functionObject (const word &name, const bool withNamePrefix=defaultUseNamePrefix) | |
autoPtr< functionObject > | clone () const |
virtual | ~functionObject ()=default |
virtual const word & | type () const =0 |
const word & | name () const noexcept |
bool | useNamePrefix () const noexcept |
bool | useNamePrefix (bool on) noexcept |
virtual bool | execute (const label subIndex) |
virtual bool | end () |
virtual bool | adjustTimeStep () |
virtual bool | filesModified () const |
Protected Member Functions | |
Tuple2< tetIndices, point > | findNearestTet (const bitSet &isWallPatch, const point &seedPt, const label celli) const |
point | pushIn (const triPointRef &tri, const point &pt) const |
![]() | |
const word & | sampledSetAxis () const |
const sampledSet & | sampledSetPoints () const |
autoPtr< indirectPrimitivePatch > | wallPatch () const |
void | initInterpolations (const label nSeeds, label &UIndex, PtrList< volScalarField > &vsFlds, PtrList< interpolation< scalar >> &vsInterp, PtrList< volVectorField > &vvFlds, PtrList< interpolation< vector >> &vvInterp) |
void | storePoint (const label tracki, const scalar w, const label lefti, const label righti, DynamicList< point > &newTrack, DynamicList< List< scalar >> &newScalars, DynamicList< List< vector >> &newVectors) const |
void | trimToBox (const treeBoundBox &bb, const label tracki, PtrList< DynamicList< point >> &newTracks, PtrList< DynamicList< scalarList >> &newScalars, PtrList< DynamicList< vectorList >> &newVectors) const |
void | trimToBox (const treeBoundBox &bb) |
virtual bool | writeToFile () |
virtual void | resetFieldNames (const word &newUName, const wordList &newFieldNames) |
![]() | |
fvMeshFunctionObject (const fvMeshFunctionObject &)=delete | |
void | operator= (const fvMeshFunctionObject &)=delete |
![]() | |
virtual const objectRegistry & | obr () const |
template<class ObjectType > | |
bool | foundObject (const word &fieldName) const |
template<class ObjectType > | |
const ObjectType * | cfindObject (const word &fieldName) const |
template<class ObjectType > | |
const ObjectType * | findObject (const word &fieldName) const |
template<class ObjectType > | |
ObjectType * | findObject (const word &fieldName) |
template<class ObjectType > | |
ObjectType * | getObjectPtr (const word &fieldName) const |
template<class ObjectType > | |
const ObjectType & | lookupObject (const word &fieldName) const |
template<class ObjectType > | |
ObjectType & | lookupObjectRef (const word &fieldName) const |
template<class ObjectType > | |
bool | store (word &fieldName, const tmp< ObjectType > &tfield, bool cacheable=false) |
template<class ObjectType > | |
bool | storeInDb (const word &fieldName, const tmp< ObjectType > &tfield, const objectRegistry &obr) |
bool | writeObject (const word &fieldName) |
bool | clearObject (const word &fieldName) |
void | clearObjects (const wordList &objNames) |
regionFunctionObject (const regionFunctionObject &)=delete | |
void | operator= (const regionFunctionObject &)=delete |
![]() | |
const functionObjects::properties & | stateDict () const |
functionObjects::properties & | stateDict () |
stateFunctionObject (const stateFunctionObject &)=delete | |
void | operator= (const stateFunctionObject &)=delete |
![]() | |
void | clearOutputObjects (const wordList &objNames) |
timeFunctionObject (const timeFunctionObject &)=delete | |
void | operator= (const timeFunctionObject &)=delete |
![]() | |
word | scopedName (const word &name) const |
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.
Operand | Type | Location |
---|---|---|
input | - | - |
output file | - | $FOAM_CASE/postProcessing/<FO>/<time>/<file> |
output field | - | - |
system/controlDict.functions
: wallBoundedStreamLine1 { // Mandatory entries (unmodifiable) type wallBoundedStreamLine; libs (fieldFunctionObjects); // Mandatory entries (runtime modifiable) U <fieldTrack>; fields (<fieldTrack> <field1> ... <fieldN>); setFormat vtk; direction bidirectional; lifeTime 10000; cloud particleTracks; seedSampleSet { type patchSeed; patches (wall); axis x; maxPoints 20000; } // Optional entries (runtime modifiable) bounds (0.2 -10 -10)(0.22 10 10); trackLength 1e-3; nSubCycle 1; interpolationScheme cellPoint; // Deprecated // trackForward true; // Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Req'd | Dflt |
---|---|---|---|---|
type | Type name: wallBoundedStreamLine | word | yes | - |
libs | Library name: fieldFunctionObjects | word | yes | - |
U | Name of tracking velocity field | word | yes | - |
fields | Names of operand fields to sample | wordList | yes | - |
setFormat | Type of output data | word | yes | - |
direction | Direction to track | vector | yes | - |
lifetime | Maximum number of particle tracking steps | label | yes | - |
cloud | Name of cloud | word | yes | - |
seedSampleSet | Name of seeding method (see below) | word | yes | - |
bounds | Bounding box to trim tracks | vector | no | invertedBox |
trackLength | Tracking segment length | scalar | no | VGREAT |
nSubCycle | Number of tracking steps per cell | label | no | 1 |
interpolationScheme | Interp. scheme for sample | word | no | cellPoint |
Options for the seedSampleSet
entry:
uniform | uniform particle seeding cloud | cloud of points patchSeed | seeding via patch faces triSurfaceMeshPointSet | points according to a tri-surface mesh
Options for the setFormat
entry:
csv ensight gnuplot jplot nastran raw vtk xmgr
Options for the direction
entry:
bidirectional forward backward
The inherited entries are elaborated in:
Usage by the postProcess
utility is not available.
trackLength
OR nSubCycle
option should be used.Definition at line 260 of file wallBoundedStreamLine.H.
wallBoundedStreamLine | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict | ||
) |
Definition at line 274 of file wallBoundedStreamLine.C.
References Foam::read().
wallBoundedStreamLine | ( | const word & | name, |
const Time & | runTime, | ||
const dictionary & | dict, | ||
const wordList & | fieldNames | ||
) |
Definition at line 287 of file wallBoundedStreamLine.C.
References Foam::read().
|
delete |
|
virtualdefault |
|
protected |
Definition at line 49 of file wallBoundedStreamLine.C.
References PointHit< PointType >::distance(), f(), triangle::nearestPoint(), PointHit< PointType >::rawPoint(), and Foam::sqr().
Referenced by wallBoundedStreamLine::track().
|
protected |
Definition at line 109 of file wallBoundedStreamLine.C.
References triangle::centre().
Referenced by wallBoundedStreamLine::track().
TypeName | ( | "wallBoundedStreamLine" | ) |
|
delete |
|
virtual |
Reimplemented from streamLineBase.
Definition at line 302 of file wallBoundedStreamLine.C.
References Foam::abort(), polyMeshTetDecomposition::checkFaceTets(), HashTable::clear(), Foam::expressions::patchExpr::debug, dict, Foam::constant::electromagnetic::e, Foam::endl(), f(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIters(), polyMeshTetDecomposition::minTetQuality, IOobject::name(), streamLineBase::read(), Foam::returnReduce(), and WarningInFunction.
|
virtual |
Implements streamLineBase.
Definition at line 125 of file wallBoundedStreamLine.C.
References Cloud::addParticle(), streamLineBase::allScalars_, streamLineBase::allTracks_, streamLineBase::allVectors_, tetIndices::cell(), sampledSet::cells(), streamLineBase::cloudName_, Foam::endl(), tetIndices::face(), tetIndices::faceTri(), wallBoundedStreamLine::findNearestTet(), Tuple2::first(), forAll, streamLineBase::initInterpolations(), streamLineBase::lifeTime_, Log, fvMeshFunctionObject::mesh_, Cloud::move(), primitiveMesh::nFaces(), Foam::Pout, wallBoundedStreamLine::pushIn(), Foam::returnReduce(), streamLineBase::sampledSetPoints(), Tuple2::second(), Foam::sqrt(), tetIndices::tetPt(), streamLineBase::trackDir_, streamLineBase::trackLength_, functionObject::type(), and streamLineBase::wallPatch().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.