31 template<
class CloudType>
47 template<
class CloudType>
67 Info<<
"Constructing particle forces" <<
endl;
69 if (modelNames.
size() > 0)
76 const word& model = iter().keyword();
115 template<
class CloudType>
125 calcCoupled_(pf.calcCoupled_),
126 calcNonCoupled_(pf.calcNonCoupled_)
132 template<
class CloudType>
139 template<
class CloudType>
144 this->operator[](i).cacheFields(store);
149 template<
class CloudType>
153 const typename CloudType::parcelType::trackingData& td,
166 value += this->operator[](i).calcCoupled(
p, td, dt, mass,
Re, muc);
174 template<
class CloudType>
178 const typename CloudType::parcelType::trackingData& td,
192 this->operator[](i).calcNonCoupled(
p, td, dt, mass,
Re, muc);
200 template<
class CloudType>
204 const typename CloudType::parcelType::trackingData& td,
208 scalar massEff = mass;
211 massEff += this->operator[](i).massAdd(
p, td, mass);
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
Templated base class for dsmc cloud.
ParcelType parcelType
Type of parcel the cloud was instantiated for.
Template class for intrusive linked lists.
void size(const label)
Override size to be inconsistent with allocated storage.
ParticleForceList(CloudType &owner, const fvMesh &mesh)
Null constructor.
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 scalar massEff(const typename CloudType::parcelType &p, const typename CloudType::parcelType::trackingData &td, const scalar mass) const
Return the effective mass.
virtual void cacheFields(const bool store)
Cache fields.
const dictionary & dict() const
Return the forces dictionary.
const CloudType & owner() const
Return const access to the cloud owner.
virtual ~ParticleForceList()
Destructor.
const fvMesh & mesh() const
Return the mesh database.
virtual forceSuSp calcCoupled(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 coupled force.
Abstract base class for particle forces.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
bool set(const label) const
Is element set.
void setSize(const label)
Reset size of PtrList. If extending the PtrList, new entries are.
A list of keyword definitions, which are a keyword followed by any number of values (e....
wordList toc() const
Return the table of contents.
static const dictionary null
Null dictionary.
Helper container for force Su and Sp terms.
Mesh data needed to do the Finite Volume discretisation.
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.
Ostream & endl(Ostream &os)
Add newline and flush stream.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const HashSet< word > &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the specified type.
scalarField Re(const UList< complex > &cf)