133 class objectRegistry;
144 public functionObjectFile
154 const objectRegistry&
obr_;
163 List<Field<vector> >
force_;
292 const bool loadFromFiles =
false,
337 virtual void write();
word name_
Name of this set of forces,.
virtual void timeSet()
Called when time was set at the end of the Time::operator++.
scalar binDx_
Distance between bin divisions.
vector binDir_
Direction used to determine bin orientation.
word UName_
Name of velocity field.
List< Field< vector > > moment_
Pressure, viscous and porous moment per bin.
void writeBins()
Helper function to write bin data.
TypeName("forces")
Runtime type information.
virtual void calcForcesMoment()
Calculate the forces and moments.
labelHashSet patchSet_
Patches to integrate forces over.
Switch directForceDensity_
Is the force density being supplied directly?
virtual void updateMesh(const mapPolyMesh &)
Update for changes of mesh.
tmp< volScalarField > rho() const
Return rho if rhoName is specified otherwise rhoRef.
tmp< volSymmTensorField > devRhoReff() const
Return the effective viscous stress (laminar + turbulent).
Base class for other coordinate system specifications.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
coordinateSystem coordSys_
Coordinate system used when evaluting forces/moments.
bool porosity_
Flag to include porosity effects.
This function object calculates the forces and moments by integrating the pressure and skin-friction ...
List< Field< vector > > force_
Pressure, viscous and porous force per bin.
scalar binMin_
Minimum bin bounds.
A class for handling words, derived from string.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual void write()
Write the forces.
bool localSystem_
Flag to indicate whether we are using a local co-ordinate sys.
word rhoName_
Name of density field (optional)
forces(const forces &)
Disallow default bitwise copy construct.
A list of keyword definitions, which are a keyword followed by any number of values (e...
void applyBins(const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP, const vectorField &d)
Accumulate bin data.
bool binCumulative_
Should bin data be cumulative?
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
tmp< volScalarField > mu() const
Dynamic viscosity field.
Forward declarations of the specialisations of Field<T> for scalar, vector and tensor.
scalar pRef_
Reference pressure.
virtual void end()
Execute at the final time-loop, currently does nothing.
bool initialised_
Initialised flag.
virtual void movePoints(const polyMesh &)
Update for changes of mesh.
Switch log_
Switch to send output to Info as well as to file.
HashSet< label, Hash< label > > labelHashSet
A HashSet with label keys.
virtual vector momentEff() const
Return the total moment.
scalar rhoRef_
Reference density needed for incompressible calculations.
virtual const word & name() const
Return name of the set of forces.
bool active_
On/off switch.
Mesh consisting of general polyhedral cells.
void operator=(const forces &)
Disallow default bitwise assignment.
void writeForces()
Helper function to write force data.
word pName_
Name of pressure field.
virtual void read(const dictionary &)
Read the forces data.
Registry of regIOobjects.
List< point > binPoints_
Bin positions along binDir.
virtual void execute()
Execute, currently does nothing.
virtual void writeFileHeader(const label i)
Output file header information.
void initialise()
Initialise the fields.
word fDName_
The name of the force density (fD) field.
virtual ~forces()
Destructor.
This function object reads fields from the time directories and adds them to the mesh database for fu...
label nBin_
Number of bins.
virtual vector forceEff() const
Return the total force.
A class for managing temporary objects.
wordList createFileNames(const dictionary &dict) const
Create file names for forces and bins.
const objectRegistry & obr_