sectionalForceProbes Class Reference

This function calculates the fluid forces and moments at a number of section-planes through a given set of patches. It writes the result into a log file. More...

Inheritance diagram for sectionalForceProbes:
Collaboration diagram for sectionalForceProbes:

Public Member Functions

 TypeName ("sectionalForceProbes")
 Runtime type information. More...
 
 sectionalForceProbes (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 sectionalForceProbes (const sectionalForceProbes &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~sectionalForceProbes ()
 Destructor. More...
 
virtual bool read (const dictionary &)
 Read the sectionalForceProbes data. More...
 
virtual bool write ()
 Write the sectionalForceProbes. More...
 
void operator= (const sectionalForceProbes &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from sectionalForcesBase
 TypeName ("sectionalForcesBase")
 Runtime type information. More...
 
 sectionalForcesBase (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 sectionalForcesBase (const sectionalForcesBase &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~sectionalForcesBase ()
 Destructor. More...
 
virtual wordList fields () const
 Return the list of fields required. More...
 
virtual bool execute ()
 Execute, currently does nothing. More...
 
virtual bool end ()
 Execute at the final time-loop, currently does nothing. More...
 
virtual void movePoints (const polyMesh &)
 Update for mesh point-motion. More...
 
virtual void topoChange (const polyTopoChangeMap &)
 Update topology using the given map. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 
virtual void distribute (const polyDistributionMap &)
 Redistribute or update using the given distribution map. More...
 
void operator= (const sectionalForcesBase &)=delete
 Disallow default bitwise assignment. More...
 
template<class Type >
Foam::tmp< Foam::SurfaceField< Type > > timesAlpha (const tmp< SurfaceField< Type >> psi) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > timesAlpha (const tmp< Field< Type >> psi, const label patchi) const
 
template<class Type >
Foam::tmp< Foam::SurfaceField< Type > > timesRho (const tmp< SurfaceField< Type >> psi) const
 
template<class Type >
Foam::tmp< Foam::SurfaceField< Type > > timesAlphaRho (const tmp< SurfaceField< Type >> psi) const
 
- Public Member Functions inherited from fvMeshFunctionObject
 TypeName ("fvMeshFunctionObject")
 Runtime type information. More...
 
 fvMeshFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 fvMeshFunctionObject (const word &name, const objectRegistry &obr)
 Construct from the region objectRegistry. More...
 
 fvMeshFunctionObject (const fvMeshFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~fvMeshFunctionObject ()
 Destructor. More...
 
const fvMeshmesh () const
 Return a reference to the mesh. More...
 
void operator= (const fvMeshFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from regionFunctionObject
 TypeName ("regionFunctionObject")
 Runtime type information. More...
 
 regionFunctionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from Time and dictionary. More...
 
 regionFunctionObject (const word &name, const objectRegistry &obr)
 Construct from the region objectRegistry. More...
 
 regionFunctionObject (const regionFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~regionFunctionObject ()
 Destructor. More...
 
void operator= (const regionFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from objectRegistryFunctionObject
 TypeName ("objectRegistryFunctionObject")
 Runtime type information. More...
 
 objectRegistryFunctionObject (const word &name, const objectRegistry &obr, const dictionary &dict)
 Construct from an objectRegistry and dictionary. More...
 
 objectRegistryFunctionObject (const word &name, const objectRegistry &obr)
 Construct from an objectRegistry. More...
 
 objectRegistryFunctionObject (const objectRegistryFunctionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~objectRegistryFunctionObject ()
 Destructor. More...
 
void operator= (const objectRegistryFunctionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from functionObject
 ClassName ("functionObject")
 
virtual const wordtype () 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, const Time &runTime)
 Construct from components. More...
 
 functionObject (const word &name, const Time &runTime, const dictionary &dict)
 Construct from dictionary. More...
 
autoPtr< functionObjectclone () const
 Return clone. More...
 
 functionObject (const functionObject &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~functionObject ()
 Destructor. More...
 
const wordname () const
 Return the name of this functionObject. More...
 
virtual bool executeAtStart () const
 Return true if the functionObject should be executed at the start. More...
 
virtual scalar timeToNextAction ()
 Called by Time::adjustTimeStep(). Allows the functionObject to. More...
 
virtual scalar maxDeltaT () const
 Return the maximum time-step for stable operation. More...
 
void operator= (const functionObject &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from logFiles
 logFiles (const objectRegistry &obr, const word &prefix)
 Construct from objectRegistry and prefix. More...
 
 logFiles (const logFiles &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~logFiles ()
 Destructor. More...
 
const wordListtoc () const
 Return the list of log file names. More...
 
const wordListnames () const
 Return the list of log file names. More...
 
PtrList< OFstream > & files ()
 Return access to the files. More...
 
OFstreamfile ()
 Return access to the file (if only 1) More...
 
OFstreamfile (const label i)
 Return file 'i'. More...
 
void operator= (const logFiles &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from writeFile
 writeFile (const objectRegistry &obr, const word &prefix)
 Construct from objectRegistry and prefix. More...
 
 writeFile (const writeFile &)=delete
 Disallow default bitwise copy construction. More...
 
 ~writeFile ()
 Destructor. More...
 
void initStream (Ostream &os) const
 Initialise the output stream for writing. More...
 
fileName baseFileDir () const
 Return the base directory for output. More...
 
fileName baseTimeDir () const
 Return the base directory for the current time value. More...
 
Omanip< int > valueWidth (const label offset=0) const
 Return the value width when writing to stream with optional offset. More...
 
void writeCommented (Ostream &os, const string &str) const
 Write a commented string to stream. More...
 
void writeTabbed (Ostream &os, const string &str) const
 Write a tabbed string to stream. More...
 
void writeHeader (Ostream &os, const string &str) const
 Write a commented header to stream. More...
 
void writeTime (Ostream &os) const
 Write the current time to stream. More...
 
template<class Type >
void writeHeaderValue (Ostream &os, const string &property, const Type &value) const
 Write a (commented) header property and value pair. More...
 
label charWidth () const
 Return width of character stream output. More...
 
void operator= (const writeFile &)=delete
 Disallow default bitwise assignment. More...
 

Protected Member Functions

virtual vector normal () const
 Return the normal to the section planes. More...
 
virtual point origin () const
 Return the origin of the plot. More...
 
virtual tmp< scalarFielddistances () const
 Return the distances from the origin to the section planes. More...
 
virtual void writeFileHeader (const label i=0)
 Output file header information. More...
 
- Protected Member Functions inherited from sectionalForcesBase
virtual void clear ()
 Clear the cached weights. More...
 
const indirectPrimitivePatchpatch () const
 Access the primitive patch. More...
 
void clearPatch ()
 Clear the patch. More...
 
void clearPatchGeom ()
 Clear the patch geometry. More...
 
tmp< scalarFieldpatchPointDistances () const
 Return the distance from the origin to the patch points. More...
 
const List< patchCutPlot::weight > & weights () const
 Access the weights. More...
 
fileName outputPath () const
 Return the output path. More...
 
void addFluid (vectorField &force, vectorField &moment) const
 Calculate the forces and moments at the cuts. More...
 
- Protected Member Functions inherited from objectRegistryFunctionObject
template<class ObjectType >
bool foundObject (const word &fieldName) const
 Find field in the objectRegistry. More...
 
template<class ObjectType >
void cannotFindObject (const word &fieldName)
 Prints a warning message that fieldName cannot be found. More...
 
void cannotFindObject (const word &fieldName)
 Prints a warning message that fieldName cannot be found. More...
 
void cannotFindObjects (const wordList &fieldNames)
 Prints a warning message that fieldNames cannot be found. More...
 
template<class ObjectType >
const ObjectType & lookupObject (const word &fieldName) const
 Lookup object from the objectRegistry. More...
 
template<class ObjectType >
ObjectType & lookupObjectRef (const word &fieldName)
 Lookup non-const object reference from the objectRegistry. More...
 
template<class ObjectType >
ObjectType & store (const tmp< ObjectType > &tfield)
 Store the given field in the objectRegistry. More...
 
template<class ObjectType >
ObjectType & store (const word &fieldName, const tmp< ObjectType > &tfield, bool cacheable=false)
 Store the given field in the objectRegistry under the given name. More...
 
bool writeObject (const word &fieldName)
 Write field if present in objectRegistry. More...
 
bool clearObject (const word &fieldName)
 Clear field from the objectRegistry if present. More...
 
- Protected Member Functions inherited from logFiles
virtual void createFiles ()
 Create the output file. More...
 
virtual void resetNames (const wordList &names)
 Reset the list of names from a wordList. More...
 
virtual void resetName (const word &name)
 Reset the list of names to a single name entry. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from functionObject
static autoPtr< functionObjectNew (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...
 
Switch executeAtStart_
 Switch execute at start time. More...
 
- Static Public Attributes inherited from functionObject
static bool postProcess
 Global post-processing mode switch. More...
 
- Static Public Attributes inherited from writeFile
static const word outputPrefix
 Directory prefix. More...
 
static label addChars = 8
 Additional characters for writing. More...
 
- Protected Attributes inherited from fvMeshFunctionObject
const fvMeshmesh_
 Reference to the fvMesh. More...
 
- Protected Attributes inherited from objectRegistryFunctionObject
const objectRegistryobr_
 Reference to the objectRegistry. More...
 
- Protected Attributes inherited from functionObject
const Timetime_
 Reference to time. More...
 
- Protected Attributes inherited from logFiles
wordList names_
 File names. More...
 
PtrList< OFstreamfilePtrs_
 File pointer. More...
 
- Protected Attributes inherited from writeFile
const objectRegistryfileObr_
 Reference to the region objectRegistry. More...
 
const word prefix_
 Prefix. More...
 

Detailed Description

This function calculates the fluid forces and moments at a number of section-planes through a given set of patches. It writes the result into a log file.

The cut-planes are defined by a single normal and a number of points. Forces and moments are calculated on the side of the planes to which the normal points. If the "other" side also needs to be generated then the function can be executed with the normal reversed.

Note that this function only generates the contribution from the fluid to the sectional forces and moments in the object. To compute the complete sectional force would require supporting and/or dynamic forces to be included also.

Example of function object specification:

sectionalForceProbes1
{
    type            sectionalForceProbes;
    libs            ("libforces.so");
    patches         (hull);
    points
    (
        (-0.8 0 0)
        ( 0   0 0)
        ( 0.8 0 0)
    );
    normal          (1 0 0);
}
Usage
Property Description Required Default value
type Type name: sectionalForceProbes yes
patches Patches included in the forces calculation yes
points Points in the cut-planes yes
normal Normal to the cut-planes yes
p Pressure field name no p
U Velocity field name no U
rho Density field name no rho
phase Phase name for phase-fraction no
rhoRef Reference density if incompressible
pRef Reference pressure no 0
Source files

Definition at line 150 of file sectionalForceProbes.H.

Constructor & Destructor Documentation

◆ sectionalForceProbes() [1/2]

sectionalForceProbes ( const word name,
const Time runTime,
const dictionary dict 
)

Construct from Time and dictionary.

Definition at line 127 of file sectionalForceProbes.C.

References dict, and sectionalForceProbes::read().

Here is the call graph for this function:

◆ sectionalForceProbes() [2/2]

Disallow default bitwise copy construction.

◆ ~sectionalForceProbes()

~sectionalForceProbes ( )
virtual

Destructor.

Definition at line 145 of file sectionalForceProbes.C.

Member Function Documentation

◆ normal()

Foam::vector normal ( ) const
protectedvirtual

Return the normal to the section planes.

Implements sectionalForcesBase.

Definition at line 49 of file sectionalForceProbes.C.

◆ origin()

Foam::point origin ( ) const
protectedvirtual

Return the origin of the plot.

Implements sectionalForcesBase.

Definition at line 55 of file sectionalForceProbes.C.

◆ distances()

Foam::tmp< Foam::scalarField > distances ( ) const
protectedvirtual

Return the distances from the origin to the section planes.

Implements sectionalForcesBase.

Definition at line 62 of file sectionalForceProbes.C.

References List< T >::append(), Foam::gMax(), Foam::max(), and tmp< T >::ref().

Here is the call graph for this function:

◆ writeFileHeader()

void writeFileHeader ( const label  i = 0)
protectedvirtual

Output file header information.

Implements logFiles.

Definition at line 79 of file sectionalForceProbes.C.

References Foam::file, forAll, and Foam::name().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "sectionalForceProbes"  )

Runtime type information.

◆ read()

bool read ( const dictionary dict)
virtual

◆ write()

bool write ( )
virtual

Write the sectionalForceProbes.

Reimplemented from logFiles.

Definition at line 192 of file sectionalForceProbes.C.

References sectionalForcesBase::addFluid(), Foam::file, forAll, Foam::dimensions::force, Field< Type >::map(), UPstream::master(), logFiles::write(), and Foam::Zero.

Here is the call graph for this function:

◆ operator=()

void operator= ( const sectionalForceProbes )
delete

Disallow default bitwise assignment.


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