26#ifndef functionObjects_ITHACAforces_H
27#define functionObjects_ITHACAforces_H
29#include "fvMeshFunctionObject.H"
31#include "cartesianCS.H"
32#include "volFieldsFwd.H"
42namespace functionObjects
51 public fvMeshFunctionObject,
60 List<Field<vector>>
force_;
183 tmp<volScalarField>
mu()
const;
186 tmp<volScalarField>
rho()
const;
190 scalar
rho(
const volScalarField&
p)
const;
195 const vectorField& Md,
196 const vectorField& fN,
197 const vectorField& fT,
198 const vectorField& fP,
206 const vectorField& Md,
207 const vectorField& fN,
208 const vectorField& fT,
209 const vectorField& fP
215 const labelList& cellIDs,
216 const vectorField& Md,
217 const vectorField& fN,
218 const vectorField& fT,
219 const vectorField& fP
225 const string& descriptor,
226 const vectorField& fm0,
227 const vectorField& fm1,
228 const vectorField& fm2,
229 autoPtr<OFstream>& osPtr
238 const List<Field<vector>>& fm,
239 autoPtr<OFstream>& osPtr
265 const dictionary& dict,
266 const bool readFields =
true
273 const objectRegistry& obr,
274 const dictionary& dict,
275 const bool readFields =
true
286 virtual bool read(
const dictionary&);
autoPtr< OFstream > localForceBinFilePtr_
coordSystem::cartesian coordSys_
autoPtr< OFstream > localMomentBinFilePtr_
List< Field< vector > > moment_
virtual vector forceEff() const
void writeBinnedForceMoment(const List< Field< vector > > &fm, autoPtr< OFstream > &osPtr) const
void writeIntegratedForceMoment(const string &descriptor, const vectorField &fm0, const vectorField &fm1, const vectorField &fm2, autoPtr< OFstream > &osPtr) const
void operator=(const ITHACAforces &)=delete
void applyBins(const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP, const vectorField &d)
tmp< volScalarField > rho() const
void addToFields(const label patchi, const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP)
word fieldName(const word &name) const
void addToFields(const labelList &cellIDs, const vectorField &Md, const vectorField &fN, const vectorField &fT, const vectorField &fP)
tmp< volSymmTensorField > devRhoReff() const
scalar rho(const volScalarField &p) const
autoPtr< OFstream > localMomentFilePtr_
virtual vector forceTau() const
void writeBinHeader(const word &header, Ostream &os) const
List< Field< vector > > force_
autoPtr< OFstream > forceBinFilePtr_
autoPtr< OFstream > momentFilePtr_
autoPtr< OFstream > momentBinFilePtr_
autoPtr< OFstream > localForceFilePtr_
void writeIntegratedHeader(const word &header, Ostream &os) const
virtual bool read(const dictionary &)
ITHACAforces(const word &name, const objectRegistry &obr, const dictionary &dict, const bool readFields=true)
Switch directForceDensity_
autoPtr< OFstream > forceFilePtr_
tmp< volScalarField > mu() const
virtual void calcForcesMoment()
ITHACAforces(const word &name, const Time &runTime, const dictionary &dict, const bool readFields=true)
virtual vector momentEff() const
virtual vector forcePressure() const
ITHACAforces(const ITHACAforces &)=delete