Particle-drag model wherein drag forces (per unit carrier-fluid velocity) are dynamically computed based on empirical expressions. More...
#include <SphereDragForce.H>


Public Member Functions | |
| TypeName ("sphereDrag") | |
| Runtime type information. | |
| SphereDragForce (CloudType &owner, const fvMesh &mesh, const dictionary &dict) | |
| Construct from mesh. | |
| SphereDragForce (const SphereDragForce< CloudType > &df) | |
| Construct copy. | |
| virtual autoPtr< ParticleForce< CloudType > > | clone () const |
| Construct and return a clone. | |
| void | operator= (const SphereDragForce< CloudType > &)=delete |
| No copy assignment. | |
| virtual | ~SphereDragForce ()=default |
| Destructor. | |
| 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. | |
| Public Member Functions inherited from ParticleForce< CloudType > | |
| TypeName ("particleForce") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, ParticleForce, dictionary,(CloudType &owner, const fvMesh &mesh, const dictionary &dict),(owner, mesh, dict)) | |
| Declare runtime constructor selection table. | |
| ParticleForce (CloudType &owner, const fvMesh &mesh, const dictionary &dict, const word &forceType, const bool readCoeffs) | |
| Construct from mesh. | |
| ParticleForce (const ParticleForce &pf) | |
| Construct copy. | |
| virtual | ~ParticleForce () |
| Destructor. | |
| const CloudType & | owner () const noexcept |
| Return const access to the cloud owner. | |
| CloudType & | owner () noexcept |
| Return reference to the cloud owner. | |
| const fvMesh & | mesh () const noexcept |
| Return the mesh database. | |
| const dictionary & | coeffs () const noexcept |
| Return the force coefficients dictionary. | |
| virtual void | cacheFields (const bool store) |
| Cache fields. | |
| 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 | massAdd (const typename CloudType::parcelType &p, const typename CloudType::parcelType::trackingData &td, const scalar mass) const |
| Return the added mass. | |
Additional Inherited Members | |
| Public Types inherited from ParticleForce< CloudType > | |
| typedef VectorSpace< Vector< vector >, vector, 2 > | returnType |
| Convenience typedef for return type. | |
| Static Public Member Functions inherited from ParticleForce< CloudType > | |
| static autoPtr< ParticleForce< CloudType > > | New (CloudType &owner, const fvMesh &mesh, const dictionary &dict, const word &forceType) |
| Selector. | |
Particle-drag model wherein drag forces (per unit carrier-fluid velocity) are dynamically computed based on empirical expressions.
![\[ \mathrm{F}_\mathrm{D} =
\frac{3}{4}
\frac{\mu_c\,\mathrm{C}_\mathrm{D}\,\mathrm{Re}_p}{\rho_p \, d_p^2}
\]](form_593.png)
with
![\[ \mathrm{C}_\mathrm{D} =
\frac{24}{\mathrm{Re}_p}
\left(1 + \frac{1}{6}\mathrm{Re}_p^{2/3} \right)
\quad \mathrm{if} \quad \mathrm{Re}_p \leq 1000
\]](form_629.png)
![\[ \mathrm{C}_\mathrm{D} =
0.424 \quad \mathrm{if} \quad \mathrm{Re}_p > 1000
\]](form_630.png)
and
![\[ \mathrm{Re}_p =
\frac{\rho_c \, | \mathbf{u}_\mathrm{rel} | \, d_p}{\mu_c}
\]](form_576.png)
where
![]() | = | Drag force per carrier-fluid velocity [kg/s] |
![]() | = | Particle drag coefficient |
![]() | = | Particle Reynolds number |
![]() | = | Particle mass density |
![]() | = | Dynamic viscosity of carrier at the cell occupying particle |
![]() | = | Particle diameter |
![]() | = | Density of carrier at the cell occupying particle |
![]() | = | Relative velocity between particle and carrier |
Constraints:
References:
Standard model:
Putnam, A. (1961).
Integratable form of droplet drag coefficient.
ARS Journal, 31(10), 1467-1468.
Expressions (tag:AOB), (Eq. 34-35):
Amsden, A. A., O'Rourke, P. J., & Butler, T. D. (1989).
KIVA-II: A computer program for chemically
reactive flows with sprays (No. LA-11560-MS).
Los Alamos National Lab.(LANL), Los Alamos, NM (United States).
DOI:10.2172/6228444
constant/<CloudProperties>: subModels
{
particleForces
{
sphereDrag;
}
}
where the entries mean:
| Property | Description | Type | Reqd | Deflt |
|---|---|---|---|---|
type | Type name: sphereDrag | word | yes | - |

Definition at line 173 of file SphereDragForce.H.
| SphereDragForce | ( | CloudType & | owner, |
| const fvMesh & | mesh, | ||
| const dictionary & | dict ) |
Construct from mesh.
Definition at line 42 of file SphereDragForce.C.
References dict, Foam::GlobalIOList< Tuple2< scalar, vector > >::typeName, ParticleForce< CloudType >::mesh(), ParticleForce< CloudType >::owner(), and ParticleForce< CloudType >::ParticleForce().
Referenced by clone(), operator=(), SphereDragForce(), and TypeName().


Construct copy.
Definition at line 54 of file SphereDragForce.C.
References ParticleForce< CloudType >::ParticleForce(), and SphereDragForce().

|
virtualdefault |
| TypeName | ( | "sphereDrag" | ) |
Runtime type information.
References dict, ParticleForce< CloudType >::mesh(), ParticleForce< CloudType >::owner(), and SphereDragForce().

|
inlinevirtual |
Construct and return a clone.
Reimplemented from ParticleForce< CloudType >.
Definition at line 213 of file SphereDragForce.H.
References SphereDragForce().

|
delete |
|
virtual |
Calculate the coupled force.
Reimplemented from ParticleForce< CloudType >.
Definition at line 66 of file SphereDragForce.C.
References p, Foam::Re(), Foam::sqr(), td(), and Foam::Zero.
