31 template<
class CloudType>
42 this->coeffs().template lookupOrDefault<
word>
44 "linearAccelerationName",
51 this->coeffs().template lookupOrDefault<
word>
53 "angularVelocityName",
60 this->coeffs().template lookupOrDefault<
word>
62 "angularAccelerationName",
69 this->coeffs().template lookupOrDefault<
word>
71 "centreOfRotationName",
75 centreOfRotation_(
Zero)
79 template<
class CloudType>
88 omegaName_(niff.omegaName_),
90 omegaDotName_(niff.omegaDotName_),
91 omegaDot_(niff.omegaDot_),
92 centreOfRotationName_(niff.centreOfRotationName_),
93 centreOfRotation_(niff.centreOfRotation_)
99 template<
class CloudType>
106 template<
class CloudType>
112 centreOfRotation_ =
Zero;
118 this->mesh().
template foundObject<uniformDimensionedVectorField>
125 lookupObject<uniformDimensionedVectorField>(WName_);
132 this->mesh().
template foundObject<uniformDimensionedVectorField>
139 lookupObject<uniformDimensionedVectorField>(omegaName_);
141 omega_ =
omega.value();
146 this->mesh().
template foundObject<uniformDimensionedVectorField>
153 this->mesh().template
154 lookupObject<uniformDimensionedVectorField>(omegaDotName_);
156 omegaDot_ = omegaDot.
value();
161 this->mesh().
template foundObject<uniformDimensionedVectorField>
163 centreOfRotationName_
168 this->mesh().template
169 lookupObject<uniformDimensionedVectorField>
171 centreOfRotationName_
174 centreOfRotation_ = centreOfRotation.
value();
180 template<
class CloudType>
184 const typename CloudType::parcelType::trackingData& td,
193 const vector r =
p.position(td.mesh) - centreOfRotation_;
200 + 2.0*(
p.U() ^ omega_)
201 + (omega_ ^ (r ^ omega_))
Templated base class for dsmc cloud.
ParcelType parcelType
Type of parcel the cloud was instantiated for.
Calculates particle non-inertial reference frame force. Variable names as from Landau and Lifshitz,...
virtual forceSuSp calcNonCoupled(const typename CloudType::parcelType &p, const typename CloudType::parcelType::trackingData &td, const scalar dt, const scalar mass, const scalar Re, const scalar muc) const
Calculate the non-coupled force.
virtual ~NonInertialFrameForce()
Destructor.
virtual void cacheFields(const bool store)
Cache fields.
NonInertialFrameForce(CloudType &owner, const fvMesh &mesh, const dictionary &dict)
Construct from mesh.
Abstract base class for particle forces.
A list of keyword definitions, which are a keyword followed by any number of values (e....
const Type & value() const
Return const reference to value.
Helper container for force Su and Sp terms.
const vector & Su() const
Return const access to the explicit contribution [kg m/s^2].
Mesh data needed to do the Finite Volume discretisation.
A class for handling words, derived from string.
scalarList W(const fluidMulticomponentThermo &thermo)
scalarField Re(const UList< complex > &cf)