grokkingstuff Home Blog Projects Wiki Calculators About

DPM Drag Models -- All Drag Laws, Validity Ranges, and UDF Implementation

#+CATEGORY: cfd

#+TAGS: DPM drag-model particle-Reynolds Schiller-Naumann Haider-Levenspel UDF

#+MATURITY: growing

DPM Drag Models :: Complete Reference for All Fluent Drag Laws

The drag force is the single most important term in the particle momentum equation. For most DPM applications, drag dominates the particle trajectory by one to three orders of magnitude over all other forces combined. Getting the drag law right is the first and highest-impact modelling decision. This page documents every drag law Fluent ships, the mathematics behind each, the validity regime, and the selection logic.

Particle Drag -- The Fundamental Relationship

The drag force on a single spherical particle is:

where:

Fluent rewrites this in per-unit-mass form for integration:

The entire modelling problem reduces to: what is $C_D$ as a function of $Re_p$? The answer depends on particle shape, Reynolds regime, and surface roughness.

Particle Reynolds Number

The particle Reynolds number is:

This is the key dimensionless group. All drag correlations are parameterized by $Re_p$.

Typical range for shisha PM2.5:

This is well below 0.1. The particle is deep in the Stokes regime.

Drag Law 1: Stokes (Linear Drag)

Validity: $Re_p < 0.1$

Formula:

This gives the well-known Stokes drag:

Physics: At very low $Re_p$, the flow around the particle is purely viscous (creeping flow). The Navier-Stokes equations simplify to the Stokes equations, and the analytical solution for a sphere gives this exact result.

When to use:

When NOT to use:

Notes:

Drag Law 2: Standard Drag Law (Fluent Default)

Validity: All $Re_p$ (composite correlation)

Formula:

Fluent's built-in "spherical" drag law is a piecewise correlation:

$Re_p$ range$C_D$ formula
$Re_p \le 0.1$$24 / Re_p$ (Stokes)
$0.1 < Re_p \le 1000$$24/Re_p \times (1 + 0.15\,Re_p^{0.687})$ (Schiller-Naumann)
$Re_p > 1000$$0.44$ (Newton's constant-drag regime)

This is the Schiller-Naumann correlation with a high-$Re_p$ cutoff to the constant $C_D$ regime.

Physics: The Schiller-Naumann correction $(1 + 0.15\,Re_p^{0.687})$ accounts for the onset of inertial effects in the boundary layer around the sphere. At $Re_p \sim 1000$, the wake becomes turbulent and $C_D$ drops to a near-constant value (the "drag crisis" happens at higher $Re_p$ for smooth spheres, around $2 \times 10^5$).

When to use:

When NOT to use:

For shisha PM2.5: this is the correct default choice. Particles are sub-micron to 2.5 \mu m, $Re_p \ll 0.1$, and the Stokes limit is recovered automatically.

Drag Law 3: Schiller-Naumann (Explicit Selection)

Validity: $Re_p < 1000$ (explicitly limited)

Same formula as the Standard law in the low-$Re_p$ range. Selecting "Schiller-Naumann" explicitly in Fluent caps the high-$Re_p$ cutoff, preventing the constant $C_D = 0.44$ extrapolation.

When to use:

When NOT to use:

Drag Law 4: Haider-Levenspiel

Validity: All $Re_p$; accounts for particle sphericity $\phi$

Formula:

where the coefficients $A$, $B$, $C$, $D$ are functions of the particle sphericity $\phi$:

Sphericity $\phi$: defined as the ratio of the surface area of a sphere with the same volume as the particle to the actual surface area of the particle. $\phi = 1$ for a perfect sphere; $\phi < 1$ for all other shapes.

Particle shapeTypical $\phi$
--------------------------------
Sphere1.00
Crushed coal0.70--0.80
Sand (natural)0.80--0.90
Wood chips0.40--0.60
Fibers (aspect ratio 3:1)0.50--0.70
Platelets (aspect ratio 10:1)0.20--0.40

When to use:

When NOT to use:

For shisha PM2.5: Smoke particles are approximately spherical at the sub-micron scale (surface tension minimizes area). If agglomerates form, sphericity may drop to 0.7--0.8. Use Haider-Levenspiel with $\phi = 0.8$ as a sensitivity check against the default spherical law.

Drag Law 5: Non-Spherical (User-Specified Sphericity)

Validity: Same as Haider-Levenspiel, but Fluent takes $\phi$ as a direct input rather than computing it.

When to use:

When NOT to use:

Drag Law 6: User-Defined (UDF)

Validity: Whatever you implement. Full control over $C_D(Re_p, \text{shape}, \text{other parameters})$.

UDF macro: DEFINE_DPM_DRAG

#include "udf.h"

DEFINE_DPM_DRAG(my_drag, p, Re_p, Cd)
{
  real Vrel = P_VREL(p);         /* relative velocity magnitude */
  real dp = P_DIAM(p);           /* particle diameter */
  real rho = C_R(P_CELL(p), P_CELL_THREAD(p));
  real mu = C_MU_EFF(P_CELL(p), P_CELL_THREAD(p));
  real Rep = rho * dp * Vrel / mu;

  /* Example: custom correlation */
  if (Rep < 0.1)
    *Cd = 24.0 / Rep;
  else if (Rep < 1000.0)
    *Cd = (24.0 / Rep) * (1.0 + 0.15 * pow(Rep, 0.687));
  else
    *Cd = 0.44;

  /* Return 0 to indicate Cd was set via pointer */
  return 0;
}

When to use:

When NOT to use:

Advanced: Return drag as a force directly using DEFINE_DPM_BODY_FORCE for full momentum-source control.

Drag Law Selection -- Decision Table

ApplicationParticle shape$Re_p$ rangeRecommended law
PM2.5 smoke (shisha)Spherical$\ll 0.1$Standard (Schiller-Naumann)
Water mist / spraySpherical$0.1$--$1000$Standard
Fuel injection (diesel)Spherical (droplets)$10$--$1000$Standard
Sand blastingSub-angular$10$--$5000$Haider-Levenspiel ($\phi = 0.8$)
Biomass particlesFibrous/flaky$100$--$5000$Haider-Levenspiel or UDF
NanoparticlesSpherical$\ll 0.1$Stokes (linear drag)
Fluidized bedSub-angular$0.1$--$100$Standard or UDF (Ergun correction at high packing)
Cyclone separatorSub-angular$100$--$5000$Standard (or Haider-Levenspiel for high accuracy)

Application to Shisha PM2.5 -- Why Schiller-Naumann (Standard) Is Correct

For the shisha simulation:

1. Particles are sub-micron to 2.5 \mu m. At these sizes, surface tension dominates shape formation during condensation. The result is near-spherical morphology.

2. $Re_p \ll 0.1$ throughout the domain. The slip velocity between smoke and air is tiny because the Stokes number is $\sim 10^{-4}$. Even in the worst case (high-speed jet at bowl outlet, $|\mathbf{u} - \mathbf{u}_p| = 0.5$ m/s), $Re_p$ for a 2.5 \mu m particle is:

3. All drag laws reduce to Stokes at $Re_p = 0.08$, so the choice of correlation is moot for the trajectory. However, the Standard (Schiller-Naumann) law is the correct robust default because it handles the transition seamlessly.

4. Agglomerate sensitivity: If PM2.5 agglomerates form (common in real smoke), the effective sphericity drops. Run a sensitivity study: compare Standard ($\phi = 1$) vs Haider-Levenspiel ($\phi = 0.7$) to quantify the drag-law uncertainty on concentration.

Drag Model Validation

Single-particle validation (analytical):

For a sphere falling under gravity in quiescent fluid, the terminal velocity is:

Set up a 1D Fluent case with one particle, compare simulated $u_t$ against this formula. All drag laws should match to within 1% in the Stokes regime.

Ensemble validation (experimental):

Mesh independence:

The drag law accuracy is mesh-independent (it depends only on $Re_p$, which is a local quantity). However, the fluid velocity at the particle location depends on mesh resolution. Ensure the continuous phase is converged on a suitable mesh before evaluating drag.

Troubleshooting

SymptomLikely causeFix
Particles pass through wallsDrag too low; particles not decelerating near wallCheck mesh resolution near wall; enable Brownian force if $d_p < 1$ \mu m
Particles cluster at inletExcessive drag; particles stop too quicklyCheck particle density; verify material properties
Unphysical trajectory oscillationsTime step too large for particle response timeReduce DPM time step; check $\Delta t < \tau_p$
DPM diverges after couplingTwo-way coupling source terms too aggressiveReduce DPM under-relaxation factor; increase coupling iterations
Concentration field is noisyToo few parcelsIncrease number of parcels; increase number of tries

Summary

1. Drag is the dominant force for most DPM applications. Choosing the right law is critical. 2. For spherical particles at any $Re_p$, the Standard (Schiller-Naumann) law is the correct default. 3. For non-spherical particles, use Haider-Levenspiel with measured sphericity. 4. For PM2.5 in shisha, $Re_p \ll 0.1$ everywhere; Stokes drag dominates. The Standard law recovers this automatically. 5. UDF drag is available for custom correlations or experimental data. 6. Validate drag by comparing single-particle terminal velocity against analytical solutions. 7. Drag-law uncertainty is small compared to mesh resolution and injection-property uncertainty for PM2.5.

See Also