Dahneke
Dahneke transition-regime correction factor f_D for gas-particle mass transfer. f_D is the ratio J/J_c of the actual particle-surface flux to the continuum-regime flux (Seinfeld & Pandis 2006, Chapter 12, Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α). In the continuum limit (Kn ≪ 1) f_D → 1, recovering J_c with no correction; in the free-molecular limit (Kn ≫ 1) f_D ≈ α / (2 Kn) → 0, reflecting strong reduction in flux for very small particles or very long mean free paths. Migrated from Aerosol.jl src/mass_transfer.jl `Dahneke`.
Description
Dahneke transition-regime correction factor f_D for gas-particle mass transfer. f_D is the ratio J/J_c of the actual particle-surface flux to the continuum-regime flux (Seinfeld & Pandis 2006, Chapter 12, Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α). In the continuum limit (Kn ≪ 1) f_D → 1, recovering J_c with no correction; in the free-molecular limit (Kn ≫ 1) f_D ≈ α / (2 Kn) → 0, reflecting strong reduction in flux for very small particles or very long mean free paths. Migrated from Aerosol.jl src/mass_transfer.jl Dahneke.
Reference
Seinfeld, J. H. and Pandis, S. N. (2006) Atmospheric Chemistry and Physics, 2nd Edition, Chapter 12, Eq. 12.42 — Dahneke transition-regime correction for gas-particle flux. Migrated from Aerosol.jl src/mass_transfer.jl Dahneke (esm-v5x).
_source_ref: Aerosol.jl@FWrvp:src/mass_transfer.jl:145
Upstream Dahneke is an MTK @component with 2 parameters (Kn, α) and 1 variable f_D(t) determined by one explicit algebraic equation with no time derivative — purely observed.
Equation (S&P 2006, Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α) [transition-regime correction, dimensionless]
The Dahneke formula interpolates between the continuum limit and the free-molecular limit: Kn → 0 (continuum): f_D → 1 (no correction; J = J_c) Kn → ∞ (free-molecular): f_D → α / (2 Kn) → 0 (flux strongly reduced)
At the transition Kn = 1: f_D = 2 / (1 + 4/α); for α = 1 this gives f_D = 2/5 = 0.4 exactly.
The Dahneke correction is an alternative to the Fuchs-Sutugin factor (fuchs_sutugin.esm). Both reduce the continuum flux J_c toward the free-molecular regime, but use different interpolating polynomials. Dahneke (1973) derived Eq. 12.42 by matching the continuum and free-molecular solutions at Kn = 1; it has no empirical fitting parameters beyond α.
Parameter naming: upstream Julia α → ESM α (Unicode preserved, matching the accommodation-coefficient convention across the aerosol/mass_transfer migration family: uptake_coeff.esm, mass_transfer_coeff.esm).
Tolerance rationale (model-level rel=1e-12): purely algebraic expression with a single division of two polynomials in float64; round-off is ~1e-15 relative. rel=1e-12 leaves three orders of headroom — same as maxwellian_flux.esm, which has a similar arithmetic complexity._
Parameters
| Name | Units | Default | Description |
|---|---|---|---|
Kn | 1 | 1.0 | Knudsen number Kn = λ / R_p, where λ is the gas mean free path and R_p the particle radius. Dimensionless; Kn ≪ 1 = continuum regime, Kn ≫ 1 = free-molecular regime, Kn ≈ 1 = transition regime. Default 1.0 places the system squarely in the transition regime. |
α | 1 | 1.0 | Mass accommodation coefficient: probability that a gas molecule striking the particle surface is taken up. Dimensionless; range (0, 1]. Default 1.0 (perfect accommodation). Smaller α increases the effective resistance in the free-molecular regime, reducing f_D at a given Kn. |
Observed
| Name | Units | Default | Description |
|---|---|---|---|
f_D | 1 | Dahneke transition-regime correction factor (Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α). Dimensionless ratio of the actual flux to the continuum-regime flux J_c: J = f_D × J_c. Approaches 1 for Kn → 0 (continuum) and α / (2 Kn) → 0 for Kn → ∞ (free-molecular). |
Observed expressions
$$ f_{D} = \frac{1.0 + Kn}{1.0 + \frac{2.0 \cdot Kn \cdot \left(1.0 + Kn\right)}{α}} $$Dahneke transition-regime correction factor (Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α). Dimensionless ratio of the actual flux to the continuum-regime flux J_c: J = f_D × J_c. Approaches 1 for Kn → 0 (continuum) and α / (2 Kn) → 0 for Kn → ∞ (free-molecular).
Analyses
fD_vs_knudsen_number
Sweep Knudsen number Kn from 0.001 to 1000 log-spaced at perfect accommodation α=1. f_D decreases monotonically from ≈1 in the continuum limit to ≈α/(2Kn) in the free-molecular limit. The transition region around Kn ≈ 1 shows the characteristic rollover from the near-unity plateau to the power-law decay.
Time span: 0.0 → 1.0
Swept over: Kn

fD_vs_accommodation
Sweep accommodation coefficient α from 0.01 to 1.0 log-spaced at Kn=1.0 (transition regime). At α=1, f_D=0.4; as α decreases the denominator 1+2Kn(1+Kn)/α grows and f_D → 0. Illustrates that poor accommodation strongly suppresses the effective flux even at moderate Kn.
Time span: 0.0 → 1.0
Swept over: α

Raw .esm
Raw .esm JSON (this component)
{
"reference": {
"citation": "Seinfeld, J. H. and Pandis, S. N. (2006) Atmospheric Chemistry and Physics, 2nd Edition, Chapter 12, Eq. 12.42 — Dahneke transition-regime correction for gas-particle flux. Migrated from Aerosol.jl src/mass_transfer.jl `Dahneke` (esm-v5x).",
"notes": "source_ref: Aerosol.jl@FWrvp:src/mass_transfer.jl:145\n\nUpstream `Dahneke` is an MTK `@component` with 2 parameters (Kn, α) and 1 variable f_D(t) determined by one explicit algebraic equation with no time derivative — purely observed.\n\nEquation (S&P 2006, Eq. 12.42):\n f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α) [transition-regime correction, dimensionless]\n\nThe Dahneke formula interpolates between the continuum limit and the free-molecular limit:\n Kn → 0 (continuum): f_D → 1 (no correction; J = J_c)\n Kn → ∞ (free-molecular): f_D → α / (2 Kn) → 0 (flux strongly reduced)\n\nAt the transition Kn = 1: f_D = 2 / (1 + 4/α); for α = 1 this gives f_D = 2/5 = 0.4 exactly.\n\nThe Dahneke correction is an alternative to the Fuchs-Sutugin factor (fuchs_sutugin.esm). Both reduce the continuum flux J_c toward the free-molecular regime, but use different interpolating polynomials. Dahneke (1973) derived Eq. 12.42 by matching the continuum and free-molecular solutions at Kn = 1; it has no empirical fitting parameters beyond α.\n\nParameter naming: upstream Julia `α` → ESM `α` (Unicode preserved, matching the accommodation-coefficient convention across the aerosol/mass_transfer migration family: uptake_coeff.esm, mass_transfer_coeff.esm).\n\nTolerance rationale (model-level rel=1e-12): purely algebraic expression with a single division of two polynomials in float64; round-off is ~1e-15 relative. rel=1e-12 leaves three orders of headroom — same as maxwellian_flux.esm, which has a similar arithmetic complexity."
},
"tolerance": {
"rel": 1e-12
},
"variables": {
"Kn": {
"type": "parameter",
"units": "1",
"default": 1.0,
"description": "Knudsen number Kn = λ / R_p, where λ is the gas mean free path and R_p the particle radius. Dimensionless; Kn ≪ 1 = continuum regime, Kn ≫ 1 = free-molecular regime, Kn ≈ 1 = transition regime. Default 1.0 places the system squarely in the transition regime."
},
"α": {
"type": "parameter",
"units": "1",
"default": 1.0,
"description": "Mass accommodation coefficient: probability that a gas molecule striking the particle surface is taken up. Dimensionless; range (0, 1]. Default 1.0 (perfect accommodation). Smaller α increases the effective resistance in the free-molecular regime, reducing f_D at a given Kn."
},
"f_D": {
"type": "unknown",
"units": "1",
"description": "Dahneke transition-regime correction factor (Eq. 12.42): f_D = (1 + Kn) / (1 + 2 Kn(1 + Kn) / α). Dimensionless ratio of the actual flux to the continuum-regime flux J_c: J = f_D × J_c. Approaches 1 for Kn → 0 (continuum) and α / (2 Kn) → 0 for Kn → ∞ (free-molecular)."
}
},
"equations": [
{
"lhs": "f_D",
"rhs": {
"op": "/",
"args": [
{
"op": "+",
"args": [
1.0,
"Kn"
]
},
{
"op": "+",
"args": [
1.0,
{
"op": "/",
"args": [
{
"op": "*",
"args": [
2.0,
"Kn",
{
"op": "+",
"args": [
1.0,
"Kn"
]
}
]
},
"α"
]
}
]
}
]
}
}
],
"tests": [
{
"id": "default_conditions",
"description": "Default parameters: Kn=1.0, α=1.0 (transition regime, perfect accommodation). f_D = (1+1)/(1+2×1×2/1) = 2/5 = 0.4 exactly. This is the canonical transition-regime reference point where gas-phase flux is reduced to 40% of the continuum value.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.4,
"tolerance": {
"rel": 1e-15
}
}
]
},
{
"id": "continuum_limit",
"description": "Near-continuum regime: Kn=0.001, α=1.0. f_D = 1.001/1.002002 ≈ 0.99900. As Kn → 0, f_D → 1: the correction is negligible and J → J_c. At Kn=0.001 the deviation from unity is only 0.1%, confirming the continuum limit behavior.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"Kn": 0.001
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.9990000019960038,
"tolerance": {
"rel": 1e-12
}
}
]
},
{
"id": "low_accommodation",
"description": "Reduced accommodation coefficient: Kn=1.0, α=0.1 (10% sticking probability). f_D = 2/(1+2×2/0.1) = 2/41 ≈ 0.04878. Lowering α from 1 to 0.1 reduces f_D from 0.4 to ≈0.04878 — a 8× reduction — because the 2Kn(1+Kn)/α term grows tenfold. Exercises the α wiring in the denominator.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"α": 0.1
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.04878048780487805,
"tolerance": {
"rel": 1e-12
}
}
]
},
{
"id": "high_kn_transition",
"description": "Deep transition regime: Kn=10.0, α=1.0. f_D = 11/(1+220) = 11/221 ≈ 0.04977. At Kn=10 the flux is reduced to about 5% of the continuum value. Confirms the monotone decrease of f_D with increasing Kn.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"Kn": 10.0
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.049773755656108594,
"tolerance": {
"rel": 1e-12
}
}
]
},
{
"id": "free_molecular_asymptote",
"description": "Near free-molecular limit: Kn=1000.0, α=1.0. f_D = 1001/2002001 ≈ 5.00×10⁻⁴. The asymptotic prediction α/(2Kn) = 1/2000 = 5×10⁻⁴ differs by only 0.005%, confirming that for Kn ≫ 1 the Dahneke correction scales as α/(2Kn). Flux is reduced to ~0.05% of the continuum value.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"Kn": 1000.0
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.000499999750249875,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "near_transition_perfect_acc",
"description": "Moderate Kn=0.1, α=1.0: beginning of the transition regime. f_D = 1.1/(1+2×0.1×1.1) = 1.1/1.22 ≈ 0.90164. At Kn=0.1 the flux is reduced to about 90% of the continuum value — a small but non-negligible correction. Exercises the Kn wiring in both numerator and denominator.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"Kn": 0.1
},
"assertions": [
{
"variable": "f_D",
"time": 0.0,
"expected": 0.9016393442622952,
"tolerance": {
"rel": 1e-12
}
}
]
}
],
"analyses": [
{
"id": "fD_vs_knudsen_number",
"description": "Sweep Knudsen number Kn from 0.001 to 1000 log-spaced at perfect accommodation α=1. f_D decreases monotonically from ≈1 in the continuum limit to ≈α/(2Kn) in the free-molecular limit. The transition region around Kn ≈ 1 shows the characteristic rollover from the near-unity plateau to the power-law decay.",
"initial_state": {},
"parameters": {},
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_sweep": {
"type": "cartesian",
"dimensions": [
{
"parameter": "Kn",
"range": {
"start": 0.001,
"stop": 1000.0,
"count": 61,
"scale": "log"
}
}
]
},
"plots": [
{
"id": "fD_vs_Kn",
"type": "line",
"description": "Dahneke correction factor f_D as a function of Knudsen number Kn at α=1. Approaches 1 in the continuum regime (Kn ≪ 1) and decays as α/(2Kn) in the free-molecular regime (Kn ≫ 1).",
"x": {
"variable": "Kn",
"label": "Knudsen number Kn"
},
"y": {
"variable": "f_D",
"label": "Correction factor f_D (dimensionless)"
}
}
]
},
{
"id": "fD_vs_accommodation",
"description": "Sweep accommodation coefficient α from 0.01 to 1.0 log-spaced at Kn=1.0 (transition regime). At α=1, f_D=0.4; as α decreases the denominator 1+2Kn(1+Kn)/α grows and f_D → 0. Illustrates that poor accommodation strongly suppresses the effective flux even at moderate Kn.",
"initial_state": {},
"parameters": {
"Kn": 1.0
},
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_sweep": {
"type": "cartesian",
"dimensions": [
{
"parameter": "α",
"range": {
"start": 0.01,
"stop": 1.0,
"count": 51,
"scale": "log"
}
}
]
},
"plots": [
{
"id": "fD_vs_alpha",
"type": "line",
"description": "Dahneke correction factor f_D vs. accommodation coefficient α at Kn=1. f_D drops toward zero as α → 0 (the 2Kn(1+Kn)/α term diverges) and reaches 0.4 at α=1 (perfect accommodation). Shows the strong sensitivity to α in the transition regime.",
"x": {
"variable": "α",
"label": "Accommodation coefficient α"
},
"y": {
"variable": "f_D",
"label": "Correction factor f_D (dimensionless)"
}
}
]
}
]
}