Calculates the forces and moments by integrating the pressure and skin-friction forces over a given list of immersed boundary patches. More...
Public Member Functions | |
TypeName ("immersedBoundaryForces") | |
Runtime type information. More... | |
immersedBoundaryForces (const word &name, const objectRegistry &, const dictionary &, const bool loadFromFiles=false) | |
Construct for given objectRegistry and dictionary. More... | |
virtual | ~immersedBoundaryForces () |
Destructor. More... | |
virtual forcesMoments | calcForcesMoment () const |
Calculate and return forces and moment. More... | |
![]() | |
TypeName ("forces") | |
Runtime type information. More... | |
forces (const word &name, const objectRegistry &, const dictionary &, const bool loadFromFiles=false, const bool readFields=true) | |
Construct for given objectRegistry and dictionary. More... | |
forces (const word &name, const objectRegistry &, const labelHashSet &patchSet, const word &pName, const word &UName, const word &rhoName, const scalar rhoInf, const scalar pRef, const coordinateSystem &coordSys) | |
Construct from components. More... | |
virtual | ~forces () |
Destructor. More... | |
virtual const word & | name () const |
Return name of the set of forces. More... | |
virtual void | read (const dictionary &) |
Read the forces data. More... | |
virtual void | execute () |
Execute, currently does nothing. More... | |
virtual void | end () |
Execute at the final time-loop, currently does nothing. More... | |
virtual void | timeSet () |
Called when time was set at the end of the Time::operator++. More... | |
virtual void | write () |
Write the forces. More... | |
virtual void | calcForcesMoment () |
Calculate the forces and moments. More... | |
virtual vector | forceEff () const |
Return the total force. More... | |
virtual vector | momentEff () const |
Return the total moment. More... | |
virtual void | updateMesh (const mapPolyMesh &) |
Update for changes of mesh. More... | |
virtual void | movePoints (const polyMesh &) |
Update for changes of mesh. More... | |
![]() | |
functionObjectState (const objectRegistry &obr, const word &name) | |
Construct from components. More... | |
virtual | ~functionObjectState () |
Destructor. More... | |
const word & | name () const |
Return the name. More... | |
bool | active () const |
Return the active flag. More... | |
const IOdictionary & | stateDict () const |
Return access to the state dictionary. More... | |
dictionary & | propertyDict () |
Return access to the property dictionary. More... | |
template<class Type > | |
bool | setActive () |
Set the active status by querying objectRegistry type. More... | |
bool | foundProperty (const word &entryName) const |
Return true if the property exists. More... | |
template<class Type > | |
Type | getProperty (const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const |
Retrieve generic property. More... | |
template<class Type > | |
void | getProperty (const word &entryName, Type &value) const |
Retrieve generic property. More... | |
template<class Type > | |
void | setProperty (const word &entryName, const Type &value) |
Add generic property. More... | |
template<class Type > | |
Type | getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const |
Retrieve generic property from named object. More... | |
template<class Type > | |
void | getObjectProperty (const word &objectName, const word &entryName, Type &value) const |
Retrieve generic property from named object. More... | |
template<class Type > | |
void | setObjectProperty (const word &objectName, const word &entryName, const Type &value) |
Add generic property from named object. More... | |
template<class Type > | |
void | setResult (const word &entryName, const Type &value) |
Add result. More... | |
template<class Type > | |
void | setObjectResult (const word &objectName, const word &entryName, const Type &value) |
Add result from named object. More... | |
template<class Type > | |
Type | getResult (const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const |
Retrieve result. More... | |
template<class Type > | |
Type | getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const |
Retrieve result from named object. More... | |
template<class Type > | |
void | getObjectResult (const word &objectName, const word &entryName, Type &value) const |
Retrieve result from named object. More... | |
word | resultType (const word &entryName) const |
Retrieve the result type. More... | |
word | objectResultType (const word &objectName, const word &entryName) const |
Return the type of result. More... | |
List< word > | objectResultEntries () const |
Retrieve the result entries. More... | |
List< word > | objectResultEntries (const word &objectName) const |
Return result entries for named object. More... | |
![]() | |
functionObjectFile (const objectRegistry &obr, const word &prefix) | |
Construct null. More... | |
functionObjectFile (const objectRegistry &obr, const word &prefix, const word &fileName, const dictionary &dict) | |
Construct from components and read options from dictionary. More... | |
virtual | ~functionObjectFile () |
Destructor. More... | |
void | read (const dictionary &dict) |
Read. More... | |
OFstream & | file () |
Return access to the file (if only 1) More... | |
bool | writeToFile () const |
Return true if can write to file. 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... | |
Additional Inherited Members | |
![]() | |
static const word | outputPrefix = "postProcessing" |
Directory prefix. More... | |
static label | addChars = 7 |
Additional characters for writing. More... | |
![]() | |
word | fieldName (const word &name) const |
Create a field name. More... | |
void | createFiles () |
Create the output files. More... | |
void | writeIntegratedHeader (const word &header, Ostream &os) const |
Write header for integrated data. More... | |
void | writeBinHeader (const word &header, Ostream &os) const |
Write header for binned data. More... | |
void | initialise () |
Initialise the fields. More... | |
void | initialiseBins () |
Initialise the collection bins. More... | |
void | resetFields () |
Reset the fields prior to accumulation of force/moments. More... | |
tmp< volSymmTensorField > | devRhoReff () const |
Return the effective viscous stress (laminar + turbulent). More... | |
tmp< volScalarField > | mu () const |
Dynamic viscosity field. More... | |
tmp< volScalarField > | rho () const |
Return rho if rhoName is specified otherwise rhoRef. More... | |
scalar | rho (const volScalarField &p) const |
Return rhoRef if the pressure field is dynamic, i.e. p/rho. More... | |
void | applyBins (const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP, const vectorField &d) |
Accumulate bin data. More... | |
void | addToFields (const label patchI, const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP) |
Add patch contributions to force and moment fields. More... | |
void | addToFields (const labelList &cellIDs, const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP) |
Add cell contributions to force and moment fields. More... | |
void | writeIntegratedForceMoment (const string &descriptor, const vectorField &fm0, const vectorField &fm1, const vectorField &fm2, autoPtr< OFstream > &osPtr) const |
Helper function to write integrated forces and moments. More... | |
void | writeForces () |
Write force data. More... | |
void | writeBinnedForceMoment (const List< Field< vector > > &fm, autoPtr< OFstream > &osPtr) const |
Helper function to write binned forces and moments. More... | |
void | writeBins () |
Write binned data. More... | |
forces (const forces &) | |
Disallow default bitwise copy construct. More... | |
void | operator= (const forces &) |
Disallow default bitwise assignment. More... | |
![]() | |
functionObjectState (const functionObjectState &) | |
Disallow default bitwise copy construct. More... | |
void | operator= (const functionObjectState &) |
Disallow default bitwise assignment. More... | |
![]() | |
virtual void | initStream (Ostream &os) const |
Initialise the output stream for writing. More... | |
virtual fileName | baseFileDir () const |
Return the base directory for output. More... | |
virtual fileName | baseTimeDir () const |
Return the base directory for the current time value. More... | |
virtual autoPtr< OFstream > | createFile (const word &name) const |
Return an autoPtr to a new file. More... | |
virtual void | resetFile (const word &name) |
Reset internal file pointer to new file with new name. More... | |
virtual Omanip< int > | valueWidth (const label offset=0) const |
Return the value width when writing to stream with optional offset. More... | |
functionObjectFile (const functionObjectFile &) | |
Disallow default bitwise copy construct. More... | |
void | operator= (const functionObjectFile &) |
Disallow default bitwise assignment. More... | |
![]() | |
const objectRegistry & | obr_ |
Reference to the database. More... | |
Switch | log_ |
Switch to send output to Info as well as to file. More... | |
List< Field< vector > > | force_ |
Pressure, viscous and porous force per bin. More... | |
List< Field< vector > > | moment_ |
Pressure, viscous and porous moment per bin. More... | |
autoPtr< OFstream > | forceFilePtr_ |
Forces. More... | |
autoPtr< OFstream > | momentFilePtr_ |
Moments. More... | |
autoPtr< OFstream > | forceBinFilePtr_ |
Force bins. More... | |
autoPtr< OFstream > | momentBinFilePtr_ |
Moment bins. More... | |
autoPtr< OFstream > | localForceFilePtr_ |
Local force. More... | |
autoPtr< OFstream > | localMomentFilePtr_ |
Local moment. More... | |
autoPtr< OFstream > | localForceBinFilePtr_ |
Local force bins. More... | |
autoPtr< OFstream > | localMomentBinFilePtr_ |
Local moment bins. More... | |
labelHashSet | patchSet_ |
Patches to integrate forces over. More... | |
word | pName_ |
Name of pressure field. More... | |
word | UName_ |
Name of velocity field. More... | |
word | rhoName_ |
Name of density field (optional) More... | |
Switch | directForceDensity_ |
Is the force density being supplied directly? More... | |
word | fDName_ |
The name of the force density (fD) field. More... | |
scalar | rhoRef_ |
Reference density needed for incompressible calculations. More... | |
scalar | pRef_ |
Reference pressure. More... | |
coordinateSystem | coordSys_ |
Coordinate system used when evaluting forces/moments. More... | |
bool | localSystem_ |
Flag to indicate whether we are using a local co-ordinate sys. More... | |
bool | porosity_ |
Flag to include porosity effects. More... | |
label | nBin_ |
Number of bins. More... | |
vector | binDir_ |
Direction used to determine bin orientation. More... | |
scalar | binDx_ |
Distance between bin divisions. More... | |
scalar | binMin_ |
Minimum bin bounds. More... | |
List< point > | binPoints_ |
Bin positions along binDir. More... | |
bool | binCumulative_ |
Should bin data be cumulative? More... | |
bool | writeFields_ |
Write fields flag. More... | |
bool | initialised_ |
Initialised flag. More... | |
![]() | |
const word | name_ |
Name of model. More... | |
bool | active_ |
Flag to indicate whether the object is active. More... | |
IOdictionary & | stateDict_ |
Reference to the state dictionary. More... | |
![]() | |
bool | writeToFile_ |
Flag to enable/disable writing to file. More... | |
Calculates the forces and moments by integrating the pressure and skin-friction forces over a given list of immersed boundary patches.
Member function calcForcesMoment() calculates and returns the forces and moments on immersed boundary patches.
Author Hrvoje Jasak. All rights reserved.
Definition at line 63 of file immersedBoundaryForces.H.
immersedBoundaryForces | ( | const word & | name, |
const objectRegistry & | obr, | ||
const dictionary & | dict, | ||
const bool | loadFromFiles = false |
||
) |
Construct for given objectRegistry and dictionary.
Allow the possibility to load fields from files
Definition at line 47 of file immersedBoundaryForces.C.
|
virtual |
Destructor.
Definition at line 66 of file immersedBoundaryForces.C.
TypeName | ( | "immersedBoundaryForces" | ) |
Runtime type information.
|
virtual |
Calculate and return forces and moment.
Definition at line 73 of file immersedBoundaryForces.C.
References GeometricField::boundaryField(), Foam::endl(), forAllConstIter(), Foam::fvc::grad(), InfoIn, dictionary::lookup(), Foam::mag(), mesh, nu, p, pRef, Foam::reduce(), Foam::refCast(), immersedBoundaryFvPatch::renumberField(), rho, Foam::sum(), immersedBoundaryFvPatch::toTriFaces(), immersedBoundaryFvPatch::triCf(), immersedBoundaryFvPatch::triSf(), U, immersedBoundaryVelocityWallFunctionFvPatchVectorField::wallShearStress(), and Vector< scalar >::zero.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.