This function calculates the fluid forces and moments at a series of section-planes through a given set of patches. It writes the result into a graph which can be used to construct part of a shear force and bending moment diagram. Points in the graph are graded to approximately match the resolution of the mesh. More...


Public Member Functions | |
| TypeName ("sectionalForceGraph") | |
| Runtime type information. More... | |
| sectionalForceGraph (const word &name, const Time &runTime, const dictionary &dict) | |
| Construct from Time and dictionary. More... | |
| sectionalForceGraph (const sectionalForceGraph &)=delete | |
| Disallow default bitwise copy construction. More... | |
| virtual | ~sectionalForceGraph () |
| Destructor. More... | |
| virtual bool | read (const dictionary &) |
| Read the sectionalForceGraph data. More... | |
| virtual bool | write () |
| Write the sectionalForceGraph. More... | |
| void | operator= (const sectionalForceGraph &)=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 fvMesh & | mesh () 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 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, const Time &runTime) | |
| Construct from components. More... | |
| functionObject (const word &name, const Time &runTime, const dictionary &dict) | |
| Construct from dictionary. More... | |
| autoPtr< functionObject > | clone () const |
| Return clone. More... | |
| functionObject (const functionObject &)=delete | |
| Disallow default bitwise copy construction. More... | |
| virtual | ~functionObject () |
| Destructor. More... | |
| const word & | name () 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... | |
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< scalarField > | distances () const |
| Return the distances from the origin to the section planes. More... | |
Protected Member Functions inherited from sectionalForcesBase | |
| const indirectPrimitivePatch & | patch () const |
| Access the primitive patch. More... | |
| void | clearPatch () |
| Clear the patch. More... | |
| void | clearPatchGeom () |
| Clear the patch geometry. More... | |
| tmp< scalarField > | patchPointDistances () 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... | |
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... | |
| Switch | executeAtStart_ |
| Switch execute at start time. More... | |
Static Public Attributes inherited from functionObject | |
| static bool | postProcess |
| Global post-processing mode switch. More... | |
Protected Attributes inherited from fvMeshFunctionObject | |
| const fvMesh & | mesh_ |
| Reference to the fvMesh. More... | |
Protected Attributes inherited from objectRegistryFunctionObject | |
| const objectRegistry & | obr_ |
| Reference to the objectRegistry. More... | |
Protected Attributes inherited from functionObject | |
| const Time & | time_ |
| Reference to time. More... | |
This function calculates the fluid forces and moments at a series of section-planes through a given set of patches. It writes the result into a graph which can be used to construct part of a shear force and bending moment diagram. Points in the graph are graded to approximately match the resolution of the mesh.
The cut-planes are defined by a normal, and the line of the graph is defined by an origin and extends in the direction of the normal. 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 to construct full shear force and bending moment diagrams would require supporting and/or dynamic forces to be included also. This function only generates the contribution from the surrounding fluid.
Example of function object specification:
sectionalForceGraph1
{
type sectionalForceGraph;
libs ("libforces.so");
patches (hull);
origin (0 0 0);
normal (1 0 0);
nPoints 20;
axis x;
setFormat raw;
}
| Property | Description | Required | Default value |
|---|---|---|---|
type | Type name: sectionalForceGraph | yes | |
patches | Patches included in the forces calculation | yes | |
origin | Origin of the plot | yes | |
normal | Normal to the section planes | yes | |
nPoints | Number of points in the plot | yes | |
axis | Component of the position to plot against | yes | |
setFormat | Graph output format | 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 |
Definition at line 168 of file sectionalForceGraph.H.
| sectionalForceGraph | ( | const word & | name, |
| const Time & | runTime, | ||
| const dictionary & | dict | ||
| ) |
Construct from Time and dictionary.
Definition at line 97 of file sectionalForceGraph.C.
References dict, and sectionalForceGraph::read().

|
delete |
Disallow default bitwise copy construction.
|
virtual |
Destructor.
Definition at line 117 of file sectionalForceGraph.C.
|
protectedvirtual |
Return the normal to the section planes.
Implements sectionalForcesBase.
Definition at line 57 of file sectionalForceGraph.C.
|
protectedvirtual |
Return the origin of the plot.
Implements sectionalForcesBase.
Definition at line 63 of file sectionalForceGraph.C.
|
protectedvirtual |
Return the distances from the origin to the section planes.
Implements sectionalForcesBase.
Definition at line 70 of file sectionalForceGraph.C.
References Foam::patchCutPlot::calcCutXs(), mesh, and Foam::name().

| TypeName | ( | "sectionalForceGraph" | ) |
Runtime type information.
|
virtual |
Read the sectionalForceGraph data.
Reimplemented from sectionalForcesBase.
Definition at line 123 of file sectionalForceGraph.C.
References coordSet::axisTypeNames_, coordSet::DEFAULT, dict, setWriter::New(), Foam::normalised(), and sectionalForcesBase::read().
Referenced by sectionalForceGraph::sectionalForceGraph().


|
virtual |
Write the sectionalForceGraph.
Implements functionObject.
Definition at line 149 of file sectionalForceGraph.C.
References sectionalForcesBase::addFluid(), coordSet::axisTypeNames_, DeclareTypeFieldValues, coordSet::DISTANCE, fieldNames, Foam::FOR_ALL_FIELD_TYPES(), Foam::dimensions::force, Foam::identityMap(), UPstream::master(), Foam::mkDir(), word::null, List< T >::size(), TypeFieldValuesParameter, and VectorSpace< Form, Cmpt, Ncmpts >::zero.

|
delete |
Disallow default bitwise assignment.