Go to the documentation of this file.
53 void Foam::fv::actuationDiskSource::checkData()
const
58 <<
"diskArea is approximately zero"
61 if (
Cp_ <= VSMALL ||
Ct_ <= VSMALL)
64 <<
"Cp and Ct must be greater than zero"
70 <<
"disk direction vector is approximately zero"
84 Foam::fv::actuationDiskSource::actuationDiskSource
87 const word& modelType,
93 diskDir_(coeffs_.get<
vector>(
"diskDir")),
94 Cp_(coeffs_.get<scalar>(
"Cp")),
95 Ct_(coeffs_.get<scalar>(
"Ct")),
96 diskArea_(coeffs_.get<scalar>(
"diskArea")),
97 upstreamPoint_(coeffs_.get<
point>(
"upstreamPoint")),
100 coeffs_.readEntry(
"fields", fieldNames_);
101 applied_.setSize(fieldNames_.size(),
false);
103 Info<<
" - creating actuation disk zone: "
106 upstreamCellId_ =
mesh.findCell(upstreamPoint_);
126 addActuationDiskAxialInertialResistance
151 addActuationDiskAxialInertialResistance
167 coeffs_.readIfPresent(
"diskDir", diskDir_);
168 coeffs_.readIfPresent(
"Cp", Cp_);
169 coeffs_.readIfPresent(
"Ct", Ct_);
170 coeffs_.readIfPresent(
"diskArea", diskArea_);
vector diskDir_
Disk area normal.
scalar Ct_
Thrust coefficient.
A class for handling words, derived from Foam::string.
Cell-set options abtract base class. Provides a base set of controls, e.g.:
T returnReduce(const T &Value, const BinaryOp &bop, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm)
A class representing the concept of a GeometricField of 1 used to avoid unnecessary manipulations for...
Ostream & endl(Ostream &os)
Add newline and flush stream.
scalar diskArea_
Disk area.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
messageStream Info
Information stream (uses stdout - output is on the master only)
word name(const complex &c)
Return string representation of complex.
virtual bool read(const dictionary &dict)
Read source dictionary.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Macros for easy insertion into run-time selection tables.
label checkData(const fvMesh &mesh, const instantList &timeDirs, wordList &objectNames)
Check if fields are good to use (available at all times)
Mesh data needed to do the Finite Volume discretisation.
errorManipArg< error, int > exit(error &err, const int errNo=1)
defineTypeNameAndDebug(option, 0)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
addToRunTimeSelectionTable(option, fixedTemperatureConstraint, dictionary)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
point upstreamPoint_
Upstream point sample.
virtual bool read(const dictionary &dict)
Read dictionary.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
virtual void addSup(fvMatrix< vector > &eqn, const label fieldi)
Source term to momentum equation.
scalar Cp_
Power coefficient.
label upstreamCellId_
Upstream cell ID.