DahnekeCondensationEvaporation
Transition-regime condensation/evaporation model coupling mass and heat transfer via Dahneke (1983) correction factors β and β_q. Inlines DahnekeMassTransportCorrection (Eqs. 6.2, 3.6, 5.5) and DahnekeHeatTransportCorrection (Eq. 5.7) subsystems and adds the Maxwell flux equations (Eqs. 2.1–2.2) and Dahneke-corrected rates (Eqs. 5.4, 5.6). Migrated from Aerosol.jl src/dahneke_brownian_diffusion.jl:157.
Description
Transition-regime condensation/evaporation model coupling mass and heat transfer via Dahneke (1983) correction factors β and β_q. Inlines DahnekeMassTransportCorrection (Eqs. 6.2, 3.6, 5.5) and DahnekeHeatTransportCorrection (Eq. 5.7) subsystems and adds the Maxwell flux equations (Eqs. 2.1–2.2) and Dahneke-corrected rates (Eqs. 5.4, 5.6). Migrated from Aerosol.jl src/dahneke_brownian_diffusion.jl:157.
Reference
Dahneke, B. (1983) Simple Kinetic Theory of Brownian Diffusion in Vapors and Aerosols, in Theory of Dispersed Multiphase Flow, Academic Press, pp. 97–133. Eqs. 2.1–2.3, 3.6, 5.4–5.8, 6.2. Migrated from Aerosol.jl src/dahneke_brownian_diffusion.jl:157 @ commit c8c640bb636b22f2425460e9ed5cba50793bfee1 (esm-ivb).
_source_ref: Aerosol.jl@c8c640bb:src/dahneke_brownian_diffusion.jl:157
Upstream DahnekeCondensationEvaporation is an MTK @component that composes two subsystems — DahnekeMassTransportCorrection and DahnekeHeatTransportCorrection — and adds four algebraic equations. All variables are determined by explicit algebraic equations with no time derivatives; all are purely observed.
This ESM flattens both subsystems into a single model. The constant k_B = 1.380649×10⁻²³ J/K and π = 3.14159265358979 are folded as floating-point literals. 8/π = 2.5464790894703255 and 4π = 12.566370614359172 are precomputed.
Equation chain (inlined from DahnekeMassTransportCorrection, with T = T_inf, r shared): c_bar_v = sqrt(8 k_B T_inf / (π m_v)) [Eq. 6.2: mean thermal velocity of vapor] ell_D = 2 D_v / c_bar_v [Eq. 3.6: diffusional mean-free-path] Kn_D = ell_D / r [diffusion Knudsen number] β = (Kn_D+1) / (1 + 2 Kn_D(Kn_D+1)/δ_m) [Eq. 5.5: mass transport correction]
Equation chain (inlined from DahnekeHeatTransportCorrection, with r shared): Kn_K = 2 κ / (c_bar_gas n_gas m_gas c_v r) [Eq. 5.7: heat transfer Knudsen number] β_q = (Kn_K+1) / (1 + 2 Kn_K(Kn_K+1)/α) [Eq. 5.7: heat transport correction]
Main equations: I_M = 4π r D_v (n_inf - n_s) [Eq. 2.1: Maxwell molecular growth rate] I = β I_M [Eq. 5.4: corrected growth rate] Q_M = 4π r κ (T_inf - T_o) [Eq. 2.2: Maxwell heat conduction rate] Q = β_q Q_M [Eq. 5.6: corrected heat conduction rate]
The conservation equation β I_M = β_q Q_M / L_vap (Eq. 5.8) couples mass and heat transfer at steady state. It is NOT enforced as an equation in this model — T_inf, T_o, n_inf, n_s are all independent input parameters. L_vap is included as a parameter for reference.
Limiting cases for β (Eq. 5.5): Kn_D → 0 (continuum): β → 1, I → I_M (Maxwell limit) Kn_D → ∞ (free-molecular): β → δ_m c_bar_v r / (4 D_v)
Limiting cases for β_q (Eq. 5.7): Kn_K → 0 (continuum): β_q → 1, Q → Q_M Kn_K → ∞ (free-molecular): β_q → α / (2 Kn_K)
Default parameters correspond to water vapor in air at 298.15 K with a 100 nm droplet: I_M = 2.513×10¹⁰ s⁻¹, β = 0.444 (strong transition-regime correction), Q_M = 1.634×10⁻⁷ W, β_q = 0.345.
Topological evaluation order: {T_inf,m_v} → c_bar_v → ell_D → Kn_D → β; {κ,c_bar_gas,n_gas,m_gas,c_v,r} → Kn_K → β_q; {r,D_v,n_inf,n_s} → I_M → I; {r,κ,T_inf,T_o} → Q_M → Q. The dependency graph is acyclic.
Tolerance rationale (model-level rel=1e-9): all equations are purely algebraic compositions of *, /, sqrt, + in float64. Round-off is ~1e-15 relative; rel=1e-9 leaves six orders of headroom — consistent with capillary_penetration.esm and coagulation_rate.esm from the same Dahneke (1983) source._
Parameters
| Name | Units | Default | Description |
|---|---|---|---|
T_inf | K | 298.15 | Gas temperature at infinity (far from the droplet). Default 298.15 K (25 °C). Also used as the vapor-phase temperature for the mass transport correction (T in DahnekeMassTransportCorrection). |
T_o | K | 293.15 | Droplet surface temperature. Default 293.15 K (20 °C), 5 K cooler than T_inf — a typical evaporative cooling offset. |
n_inf | m^-3 | 1e+21 | Vapor number concentration at infinity (far from the droplet). Default 1×10²¹ m⁻³ (~40 µg/m³ for water at 298 K). |
n_s | m^-3 | 0.0 | Saturation vapor number concentration at the droplet surface. Default 0 (maximum driving force for condensation). Set equal to n_inf for no net flux; set greater than n_inf for evaporation. |
L_vap | J | 7.48e-20 | Molecular latent heat of vaporization (energy released per molecule condensed). Default 7.48×10⁻²⁰ J (≈ 45 kJ/mol for water). Used in the conservation equation β I_M = β_q Q_M / L_vap (Eq. 5.8), which links mass and heat transport at steady state. Not used in any computed variable; included for reference. |
r | m | 1e-07 | Droplet (or particle) radius. Default 100 nm — transition-regime aerosol where both β and β_q differ significantly from 1. Shared between the mass transport and heat transport subsystems. |
D_v | m^2/s | 2e-05 | Diffusion coefficient of vapor molecules in the carrier gas. Default 2.0×10⁻⁵ m²/s (air at 298 K). |
κ | W/(m*K) | 0.026 | Thermal conductivity of the carrier gas. Default 0.026 W/(m·K) (air at 298 K). |
m_v | kg | 4.81e-26 | Mass of a diffusing vapor molecule. Default 4.81×10⁻²⁶ kg (~29 g/mol, dry air average; replace with the actual vapor molecule mass, e.g. 2.99×10⁻²⁶ kg for water). Determines the mean thermal velocity c_bar_v. |
δ_m | 1 | 1.0 | Condensation-evaporation sticking coefficient (mass accommodation coefficient). Dimensionless; range (0, 1]. Default 1.0 (perfect sticking; every molecule that strikes the surface is absorbed). Smaller δ_m suppresses β and thus I in the transition/free-molecular regime. |
n_gas | m^-3 | 2.46e+25 | Number concentration of the carrier gas molecules. Default 2.46×10²⁵ m⁻³ (air at 298 K, 1 atm). Used only in Kn_K. |
c_bar_gas | m/s | 500.0 | Mean thermal velocity of carrier gas molecules. Default 500 m/s (air at 298 K). Used only in Kn_K. |
c_v | J/(kg*K) | 718.0 | Specific heat at constant volume of the carrier gas per unit mass. Default 718 J/(kg·K) (air). Used only in Kn_K. |
m_gas | kg | 4.81e-26 | Mass of a carrier gas molecule. Default 4.81×10⁻²⁶ kg (~29 g/mol, dry air). Used only in Kn_K. |
α | 1 | 1.0 | Thermal accommodation coefficient: probability that a gas molecule striking the droplet surface reaches thermal equilibrium with it. Dimensionless; range (0, 1]. Default 1.0 (perfect accommodation). Smaller α suppresses β_q and thus Q in the transition/free-molecular regime. |
Observed
| Name | Units | Default | Description |
|---|---|---|---|
c_bar_v | m/s | Mean thermal velocity of vapor molecules (Eq. 6.2): c_bar_v = sqrt(8 k_B T_inf / (π m_v)). k_B = 1.380649×10⁻²³ J/K and π = 3.14159265358979 folded as literals; 8/π = 2.5464790894703255 precomputed. | |
ell_D | m | Diffusional mean-free-path of vapor molecules (Eq. 3.6): ell_D = 2 D_v / c_bar_v. Characteristic length for the mass transport correction; Kn_D = ell_D / r. | |
Kn_D | 1 | Diffusion Knudsen number for mass transport: Kn_D = ell_D / r. Dimensionless; Kn_D ≪ 1: continuum (β → 1); Kn_D ≫ 1: free-molecular (β → δ_m c_bar_v r / (4 D_v)). | |
β | 1 | Mass transport correction factor (Eq. 5.5): β = (Kn_D+1) / (1 + 2 Kn_D(Kn_D+1)/δ_m). Dimensionless; ranges from 1 (continuum) to 0 (free-molecular). Multiplies the Maxwell rate I_M to give the actual rate I. | |
Kn_K | 1 | Heat transfer Knudsen number (Eq. 5.7): Kn_K = 2 κ / (c_bar_gas n_gas m_gas c_v r). Dimensionless; the product n_gas m_gas c_v is the volumetric heat capacity of the carrier gas [J/(m³·K)]. Kn_K ≪ 1: continuum (β_q → 1); Kn_K ≫ 1: free-molecular (β_q → α/(2 Kn_K)). | |
β_q | 1 | Heat transport correction factor (Eq. 5.7): β_q = (Kn_K+1) / (1 + 2 Kn_K(Kn_K+1)/α). Dimensionless; parallel to β. Multiplies the Maxwell heat conduction rate Q_M to give the actual rate Q. | |
I_M | 1/s | Maxwell (continuum) molecular growth rate (Eq. 2.1): I_M = 4π r D_v (n_inf - n_s). Rate at which vapor molecules condense in the continuum limit. 4π = 12.566370614359172 folded as literal. | |
I | 1/s | Transition-regime corrected molecular growth rate (Eq. 5.4): I = β I_M. The actual condensation/evaporation rate accounting for non-continuum effects. I < I_M for Kn_D > 0. | |
Q_M | W | Maxwell (continuum) heat conduction rate (Eq. 2.2): Q_M = 4π r κ (T_inf - T_o). Heat flux from the gas to the droplet surface in the continuum limit. Positive for T_inf > T_o (droplet cooler than ambient). | |
Q | W | Transition-regime corrected heat conduction rate (Eq. 5.6): Q = β_q Q_M. The actual heat flux accounting for non-continuum effects. Q < Q_M for Kn_K > 0. |
Observed expressions
$$ c_{bar\,v} = \sqrt{\frac{2.5464790894703255 \cdot 1.380649 \times 10^{-23} \cdot T_{inf}}{m_{v}}} $$Mean thermal velocity of vapor molecules (Eq. 6.2): c_bar_v = sqrt(8 k_B T_inf / (π m_v)). k_B = 1.380649×10⁻²³ J/K and π = 3.14159265358979 folded as literals; 8/π = 2.5464790894703255 precomputed.
$$ ell_{D} = \frac{2.0 \cdot D_{v}}{c_{bar\,v}} $$Diffusional mean-free-path of vapor molecules (Eq. 3.6): ell_D = 2 D_v / c_bar_v. Characteristic length for the mass transport correction; Kn_D = ell_D / r.
$$ Kn_{D} = \frac{ell_{D}}{r} $$Diffusion Knudsen number for mass transport: Kn_D = ell_D / r. Dimensionless; Kn_D ≪ 1: continuum (β → 1); Kn_D ≫ 1: free-molecular (β → δ_m c_bar_v r / (4 D_v)).
$$ β = \frac{Kn_{D} + 1.0}{1.0 + \frac{2.0 \cdot Kn_{D} \cdot \left(Kn_{D} + 1.0\right)}{δ_{m}}} $$Mass transport correction factor (Eq. 5.5): β = (Kn_D+1) / (1 + 2 Kn_D(Kn_D+1)/δ_m). Dimensionless; ranges from 1 (continuum) to 0 (free-molecular). Multiplies the Maxwell rate I_M to give the actual rate I.
$$ Kn_{K} = \frac{2.0 \cdot κ}{c_{bar\,gas} \cdot n_{gas} \cdot m_{gas} \cdot c_{v} \cdot r} $$Heat transfer Knudsen number (Eq. 5.7): Kn_K = 2 κ / (c_bar_gas n_gas m_gas c_v r). Dimensionless; the product n_gas m_gas c_v is the volumetric heat capacity of the carrier gas [J/(m³·K)]. Kn_K ≪ 1: continuum (β_q → 1); Kn_K ≫ 1: free-molecular (β_q → α/(2 Kn_K)).
$$ β_{q} = \frac{Kn_{K} + 1.0}{1.0 + \frac{2.0 \cdot Kn_{K} \cdot \left(Kn_{K} + 1.0\right)}{α}} $$Heat transport correction factor (Eq. 5.7): β_q = (Kn_K+1) / (1 + 2 Kn_K(Kn_K+1)/α). Dimensionless; parallel to β. Multiplies the Maxwell heat conduction rate Q_M to give the actual rate Q.
$$ I_{M} = 12.566370614359172 \cdot r \cdot D_{v} \cdot \left(n_{inf} - n_{s}\right) $$Maxwell (continuum) molecular growth rate (Eq. 2.1): I_M = 4π r D_v (n_inf - n_s). Rate at which vapor molecules condense in the continuum limit. 4π = 12.566370614359172 folded as literal.
$$ I = β \cdot I_{M} $$Transition-regime corrected molecular growth rate (Eq. 5.4): I = β I_M. The actual condensation/evaporation rate accounting for non-continuum effects. I < I_M for Kn_D > 0.
$$ Q_{M} = 12.566370614359172 \cdot r \cdot κ \cdot \left(T_{inf} - T_{o}\right) $$Maxwell (continuum) heat conduction rate (Eq. 2.2): Q_M = 4π r κ (T_inf - T_o). Heat flux from the gas to the droplet surface in the continuum limit. Positive for T_inf > T_o (droplet cooler than ambient).
$$ Q = β_{q} \cdot Q_{M} $$Transition-regime corrected heat conduction rate (Eq. 5.6): Q = β_q Q_M. The actual heat flux accounting for non-continuum effects. Q < Q_M for Kn_K > 0.
Analyses
beta_vs_radius
Mass transport correction factor β as a function of droplet radius r (log sweep 1 nm to 100 µm) at default T_inf, D_v, m_v, δ_m=1. Shows the transition from the free-molecular regime (β ≪ 1, r ≪ ell_D) through the transition regime (r ~ ell_D ≈ 86 nm) to the continuum limit (β → 1, r ≫ ell_D).
Time span: 0.0 → 1.0
Swept over: r

beta_q_vs_radius
Heat transport correction factor β_q as a function of droplet radius r (log sweep 1 nm to 100 µm) at default κ, n_gas, c_bar_gas, c_v, m_gas, α=1. Parallel to the mass correction sweep; shows the analogous transition for heat transport.
Time span: 0.0 → 1.0
Swept over: r

correction_vs_sticking
Mass correction factor β vs sticking coefficient δ_m (log sweep 0.01 to 1.0) at default r=100 nm. Shows that poor accommodation (δ_m → 0) suppresses the mass transfer rate, particularly in the transition regime where Kn_D ≈ 0.86.
Time span: 0.0 → 1.0
Swept over: δ_m

Raw .esm
Raw .esm JSON (this component)
{
"reference": {
"citation": "Dahneke, B. (1983) Simple Kinetic Theory of Brownian Diffusion in Vapors and Aerosols, in Theory of Dispersed Multiphase Flow, Academic Press, pp. 97–133. Eqs. 2.1–2.3, 3.6, 5.4–5.8, 6.2. Migrated from Aerosol.jl src/dahneke_brownian_diffusion.jl:157 @ commit c8c640bb636b22f2425460e9ed5cba50793bfee1 (esm-ivb).",
"notes": "source_ref: Aerosol.jl@c8c640bb:src/dahneke_brownian_diffusion.jl:157\n\nUpstream DahnekeCondensationEvaporation is an MTK @component that composes two subsystems — DahnekeMassTransportCorrection and DahnekeHeatTransportCorrection — and adds four algebraic equations. All variables are determined by explicit algebraic equations with no time derivatives; all are purely observed.\n\nThis ESM flattens both subsystems into a single model. The constant k_B = 1.380649×10⁻²³ J/K and π = 3.14159265358979 are folded as floating-point literals. 8/π = 2.5464790894703255 and 4π = 12.566370614359172 are precomputed.\n\nEquation chain (inlined from DahnekeMassTransportCorrection, with T = T_inf, r shared):\n c_bar_v = sqrt(8 k_B T_inf / (π m_v)) [Eq. 6.2: mean thermal velocity of vapor]\n ell_D = 2 D_v / c_bar_v [Eq. 3.6: diffusional mean-free-path]\n Kn_D = ell_D / r [diffusion Knudsen number]\n β = (Kn_D+1) / (1 + 2 Kn_D(Kn_D+1)/δ_m) [Eq. 5.5: mass transport correction]\n\nEquation chain (inlined from DahnekeHeatTransportCorrection, with r shared):\n Kn_K = 2 κ / (c_bar_gas n_gas m_gas c_v r) [Eq. 5.7: heat transfer Knudsen number]\n β_q = (Kn_K+1) / (1 + 2 Kn_K(Kn_K+1)/α) [Eq. 5.7: heat transport correction]\n\nMain equations:\n I_M = 4π r D_v (n_inf - n_s) [Eq. 2.1: Maxwell molecular growth rate]\n I = β I_M [Eq. 5.4: corrected growth rate]\n Q_M = 4π r κ (T_inf - T_o) [Eq. 2.2: Maxwell heat conduction rate]\n Q = β_q Q_M [Eq. 5.6: corrected heat conduction rate]\n\nThe conservation equation β I_M = β_q Q_M / L_vap (Eq. 5.8) couples mass and heat transfer at steady state. It is NOT enforced as an equation in this model — T_inf, T_o, n_inf, n_s are all independent input parameters. L_vap is included as a parameter for reference.\n\nLimiting cases for β (Eq. 5.5):\n Kn_D → 0 (continuum): β → 1, I → I_M (Maxwell limit)\n Kn_D → ∞ (free-molecular): β → δ_m c_bar_v r / (4 D_v)\n\nLimiting cases for β_q (Eq. 5.7):\n Kn_K → 0 (continuum): β_q → 1, Q → Q_M\n Kn_K → ∞ (free-molecular): β_q → α / (2 Kn_K)\n\nDefault parameters correspond to water vapor in air at 298.15 K with a 100 nm droplet: I_M = 2.513×10¹⁰ s⁻¹, β = 0.444 (strong transition-regime correction), Q_M = 1.634×10⁻⁷ W, β_q = 0.345.\n\nTopological evaluation order: {T_inf,m_v} → c_bar_v → ell_D → Kn_D → β; {κ,c_bar_gas,n_gas,m_gas,c_v,r} → Kn_K → β_q; {r,D_v,n_inf,n_s} → I_M → I; {r,κ,T_inf,T_o} → Q_M → Q. The dependency graph is acyclic.\n\nTolerance rationale (model-level rel=1e-9): all equations are purely algebraic compositions of *, /, sqrt, + in float64. Round-off is ~1e-15 relative; rel=1e-9 leaves six orders of headroom — consistent with capillary_penetration.esm and coagulation_rate.esm from the same Dahneke (1983) source."
},
"tolerance": {
"rel": 1e-09
},
"variables": {
"T_inf": {
"type": "parameter",
"units": "K",
"default": 298.15,
"description": "Gas temperature at infinity (far from the droplet). Default 298.15 K (25 °C). Also used as the vapor-phase temperature for the mass transport correction (T in DahnekeMassTransportCorrection)."
},
"T_o": {
"type": "parameter",
"units": "K",
"default": 293.15,
"description": "Droplet surface temperature. Default 293.15 K (20 °C), 5 K cooler than T_inf — a typical evaporative cooling offset."
},
"n_inf": {
"type": "parameter",
"units": "m^-3",
"default": 1e+21,
"description": "Vapor number concentration at infinity (far from the droplet). Default 1×10²¹ m⁻³ (~40 µg/m³ for water at 298 K)."
},
"n_s": {
"type": "parameter",
"units": "m^-3",
"default": 0.0,
"description": "Saturation vapor number concentration at the droplet surface. Default 0 (maximum driving force for condensation). Set equal to n_inf for no net flux; set greater than n_inf for evaporation."
},
"L_vap": {
"type": "parameter",
"units": "J",
"default": 7.48e-20,
"description": "Molecular latent heat of vaporization (energy released per molecule condensed). Default 7.48×10⁻²⁰ J (≈ 45 kJ/mol for water). Used in the conservation equation β I_M = β_q Q_M / L_vap (Eq. 5.8), which links mass and heat transport at steady state. Not used in any computed variable; included for reference."
},
"r": {
"type": "parameter",
"units": "m",
"default": 1e-07,
"description": "Droplet (or particle) radius. Default 100 nm — transition-regime aerosol where both β and β_q differ significantly from 1. Shared between the mass transport and heat transport subsystems."
},
"D_v": {
"type": "parameter",
"units": "m^2/s",
"default": 2e-05,
"description": "Diffusion coefficient of vapor molecules in the carrier gas. Default 2.0×10⁻⁵ m²/s (air at 298 K)."
},
"κ": {
"type": "parameter",
"units": "W/(m*K)",
"default": 0.026,
"description": "Thermal conductivity of the carrier gas. Default 0.026 W/(m·K) (air at 298 K)."
},
"m_v": {
"type": "parameter",
"units": "kg",
"default": 4.81e-26,
"description": "Mass of a diffusing vapor molecule. Default 4.81×10⁻²⁶ kg (~29 g/mol, dry air average; replace with the actual vapor molecule mass, e.g. 2.99×10⁻²⁶ kg for water). Determines the mean thermal velocity c_bar_v."
},
"δ_m": {
"type": "parameter",
"units": "1",
"default": 1.0,
"description": "Condensation-evaporation sticking coefficient (mass accommodation coefficient). Dimensionless; range (0, 1]. Default 1.0 (perfect sticking; every molecule that strikes the surface is absorbed). Smaller δ_m suppresses β and thus I in the transition/free-molecular regime."
},
"n_gas": {
"type": "parameter",
"units": "m^-3",
"default": 2.46e+25,
"description": "Number concentration of the carrier gas molecules. Default 2.46×10²⁵ m⁻³ (air at 298 K, 1 atm). Used only in Kn_K."
},
"c_bar_gas": {
"type": "parameter",
"units": "m/s",
"default": 500.0,
"description": "Mean thermal velocity of carrier gas molecules. Default 500 m/s (air at 298 K). Used only in Kn_K."
},
"c_v": {
"type": "parameter",
"units": "J/(kg*K)",
"default": 718.0,
"description": "Specific heat at constant volume of the carrier gas per unit mass. Default 718 J/(kg·K) (air). Used only in Kn_K."
},
"m_gas": {
"type": "parameter",
"units": "kg",
"default": 4.81e-26,
"description": "Mass of a carrier gas molecule. Default 4.81×10⁻²⁶ kg (~29 g/mol, dry air). Used only in Kn_K."
},
"α": {
"type": "parameter",
"units": "1",
"default": 1.0,
"description": "Thermal accommodation coefficient: probability that a gas molecule striking the droplet surface reaches thermal equilibrium with it. Dimensionless; range (0, 1]. Default 1.0 (perfect accommodation). Smaller α suppresses β_q and thus Q in the transition/free-molecular regime."
},
"c_bar_v": {
"type": "unknown",
"units": "m/s",
"description": "Mean thermal velocity of vapor molecules (Eq. 6.2): c_bar_v = sqrt(8 k_B T_inf / (π m_v)). k_B = 1.380649×10⁻²³ J/K and π = 3.14159265358979 folded as literals; 8/π = 2.5464790894703255 precomputed."
},
"ell_D": {
"type": "unknown",
"units": "m",
"description": "Diffusional mean-free-path of vapor molecules (Eq. 3.6): ell_D = 2 D_v / c_bar_v. Characteristic length for the mass transport correction; Kn_D = ell_D / r."
},
"Kn_D": {
"type": "unknown",
"units": "1",
"description": "Diffusion Knudsen number for mass transport: Kn_D = ell_D / r. Dimensionless; Kn_D ≪ 1: continuum (β → 1); Kn_D ≫ 1: free-molecular (β → δ_m c_bar_v r / (4 D_v))."
},
"β": {
"type": "unknown",
"units": "1",
"description": "Mass transport correction factor (Eq. 5.5): β = (Kn_D+1) / (1 + 2 Kn_D(Kn_D+1)/δ_m). Dimensionless; ranges from 1 (continuum) to 0 (free-molecular). Multiplies the Maxwell rate I_M to give the actual rate I."
},
"Kn_K": {
"type": "unknown",
"units": "1",
"description": "Heat transfer Knudsen number (Eq. 5.7): Kn_K = 2 κ / (c_bar_gas n_gas m_gas c_v r). Dimensionless; the product n_gas m_gas c_v is the volumetric heat capacity of the carrier gas [J/(m³·K)]. Kn_K ≪ 1: continuum (β_q → 1); Kn_K ≫ 1: free-molecular (β_q → α/(2 Kn_K))."
},
"β_q": {
"type": "unknown",
"units": "1",
"description": "Heat transport correction factor (Eq. 5.7): β_q = (Kn_K+1) / (1 + 2 Kn_K(Kn_K+1)/α). Dimensionless; parallel to β. Multiplies the Maxwell heat conduction rate Q_M to give the actual rate Q."
},
"I_M": {
"type": "unknown",
"units": "1/s",
"description": "Maxwell (continuum) molecular growth rate (Eq. 2.1): I_M = 4π r D_v (n_inf - n_s). Rate at which vapor molecules condense in the continuum limit. 4π = 12.566370614359172 folded as literal."
},
"I": {
"type": "unknown",
"units": "1/s",
"description": "Transition-regime corrected molecular growth rate (Eq. 5.4): I = β I_M. The actual condensation/evaporation rate accounting for non-continuum effects. I < I_M for Kn_D > 0."
},
"Q_M": {
"type": "unknown",
"units": "W",
"description": "Maxwell (continuum) heat conduction rate (Eq. 2.2): Q_M = 4π r κ (T_inf - T_o). Heat flux from the gas to the droplet surface in the continuum limit. Positive for T_inf > T_o (droplet cooler than ambient)."
},
"Q": {
"type": "unknown",
"units": "W",
"description": "Transition-regime corrected heat conduction rate (Eq. 5.6): Q = β_q Q_M. The actual heat flux accounting for non-continuum effects. Q < Q_M for Kn_K > 0."
}
},
"equations": [
{
"lhs": "c_bar_v",
"rhs": {
"op": "sqrt",
"args": [
{
"op": "/",
"args": [
{
"op": "*",
"args": [
2.5464790894703255,
1.380649e-23,
"T_inf"
]
},
"m_v"
]
}
]
}
},
{
"lhs": "ell_D",
"rhs": {
"op": "/",
"args": [
{
"op": "*",
"args": [
2.0,
"D_v"
]
},
"c_bar_v"
]
}
},
{
"lhs": "Kn_D",
"rhs": {
"op": "/",
"args": [
"ell_D",
"r"
]
}
},
{
"lhs": "β",
"rhs": {
"op": "/",
"args": [
{
"op": "+",
"args": [
"Kn_D",
1.0
]
},
{
"op": "+",
"args": [
1.0,
{
"op": "/",
"args": [
{
"op": "*",
"args": [
2.0,
"Kn_D",
{
"op": "+",
"args": [
"Kn_D",
1.0
]
}
]
},
"δ_m"
]
}
]
}
]
}
},
{
"lhs": "Kn_K",
"rhs": {
"op": "/",
"args": [
{
"op": "*",
"args": [
2.0,
"κ"
]
},
{
"op": "*",
"args": [
"c_bar_gas",
"n_gas",
"m_gas",
"c_v",
"r"
]
}
]
}
},
{
"lhs": "β_q",
"rhs": {
"op": "/",
"args": [
{
"op": "+",
"args": [
"Kn_K",
1.0
]
},
{
"op": "+",
"args": [
1.0,
{
"op": "/",
"args": [
{
"op": "*",
"args": [
2.0,
"Kn_K",
{
"op": "+",
"args": [
"Kn_K",
1.0
]
}
]
},
"α"
]
}
]
}
]
}
},
{
"lhs": "I_M",
"rhs": {
"op": "*",
"args": [
12.566370614359172,
"r",
"D_v",
{
"op": "-",
"args": [
"n_inf",
"n_s"
]
}
]
}
},
{
"lhs": "I",
"rhs": {
"op": "*",
"args": [
"β",
"I_M"
]
}
},
{
"lhs": "Q_M",
"rhs": {
"op": "*",
"args": [
12.566370614359172,
"r",
"κ",
{
"op": "-",
"args": [
"T_inf",
"T_o"
]
}
]
}
},
{
"lhs": "Q",
"rhs": {
"op": "*",
"args": [
"β_q",
"Q_M"
]
}
}
],
"tests": [
{
"id": "default_conditions",
"description": "Default parameters: r=100 nm, T_inf=298.15 K, T_o=293.15 K, n_inf=1e21 m⁻³, n_s=0, D_v=2e-5 m²/s, κ=0.026 W/(m·K), m_v=4.81e-26 kg, δ_m=1, n_gas=2.46e25 m⁻³, c_bar_gas=500 m/s, c_v=718 J/(kg·K), m_gas=4.81e-26 kg, α=1. Verifies the full equation chain: vapor thermal velocity, diffusional mean-free-path, both Knudsen numbers, both correction factors, Maxwell rates, and corrected rates.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"assertions": [
{
"variable": "c_bar_v",
"time": 0.0,
"expected": 466.8276456276172,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "ell_D",
"time": 0.0,
"expected": 8.568472834598901e-08,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Kn_D",
"time": 0.0,
"expected": 0.8568472834598901,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β",
"time": 0.0,
"expected": 0.4440020569957207,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Kn_K",
"time": 0.0,
"expected": 1.2241332983231208,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.3450798590680775,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I_M",
"time": 0.0,
"expected": 25132741228.71835,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 11158988803.492104,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q_M",
"time": 0.0,
"expected": 1.6336281798666924e-07,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q",
"time": 0.0,
"expected": 5.637321820780381e-08,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "continuum_limit",
"description": "Large droplet (r=1 µm): Kn_D = 0.0857 ≪ 1 and Kn_K = 0.122 ≪ 1, both correction factors near 1. β = 0.9154, β_q = 0.8805. I ≈ I_M and Q ≈ Q_M to within ~15%, confirming the continuum-limit approach. I_M is 10× larger due to 10× larger r.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"r": 1e-06
},
"assertions": [
{
"variable": "Kn_D",
"time": 0.0,
"expected": 0.08568472834598902,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β",
"time": 0.0,
"expected": 0.9153760779725606,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Kn_K",
"time": 0.0,
"expected": 0.12241332983231208,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.8804645668444205,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I_M",
"time": 0.0,
"expected": 251327412287.18344,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 230059100946.43472,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q_M",
"time": 0.0,
"expected": 1.6336281798666921e-06,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q",
"time": 0.0,
"expected": 1.4383517277711663e-06,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "deep_continuum_limit",
"description": "Very large droplet (r=100 µm): Kn_D = 8.57×10⁻⁴ ≪ 1 and Kn_K = 1.22×10⁻³ ≪ 1. β = 0.9991, β_q = 0.9988 — within 0.1% of unity. Confirms the continuum limit β → 1, β_q → 1 as r → ∞.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"r": 0.0001
},
"assertions": [
{
"variable": "Kn_D",
"time": 0.0,
"expected": 0.0008568472834598901,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β",
"time": 0.0,
"expected": 0.9991431539725586,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Kn_K",
"time": 0.0,
"expected": 0.0012241332983231206,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.9987758703614391,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "free_molecular_limit",
"description": "Very small droplet (r=1 nm): Kn_D = 85.7 ≫ 1, β = 5.835×10⁻³. Asymptotic formula β → δ_m c_bar_v r / (4 D_v) = 5.835×10⁻³ (0.01% agreement). Similarly Kn_K = 122 ≫ 1, β_q = 4.084×10⁻³. Both mass and heat fluxes are strongly suppressed relative to the continuum limit.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"r": 1e-09
},
"assertions": [
{
"variable": "Kn_D",
"time": 0.0,
"expected": 85.684728345989,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β",
"time": 0.0,
"expected": 0.0058349527795214465,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Kn_K",
"time": 0.0,
"expected": 122.41332983231206,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.004084387321960984,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I_M",
"time": 0.0,
"expected": 251327412.28718346,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 1466483.5828950338,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "low_sticking_coefficient",
"description": "Reduced sticking coefficient δ_m=0.1 at default r=100 nm. β drops from 0.444 (δ_m=1) to 0.0566 — a 7.8× reduction. Q_M and β_q are unchanged (heat subsystem is independent of δ_m). Confirms that poor mass accommodation strongly suppresses I in the transition regime.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"δ_m": 0.1
},
"assertions": [
{
"variable": "β",
"time": 0.0,
"expected": 0.05657550850298151,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 1421897615.088589,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.3450798590680775,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q",
"time": 0.0,
"expected": 5.637321820780381e-08,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "low_thermal_accommodation",
"description": "Reduced thermal accommodation α=0.1 at default r=100 nm. β_q drops from 0.345 (α=1) to 0.0401 — an 8.6× reduction. β and I are unchanged (mass subsystem is independent of α). Confirms that poor thermal accommodation strongly suppresses Q.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"α": 0.1
},
"assertions": [
{
"variable": "β",
"time": 0.0,
"expected": 0.4440020569957207,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 11158988803.492104,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "β_q",
"time": 0.0,
"expected": 0.04010864741742192,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q",
"time": 0.0,
"expected": 6.552261667743789e-09,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "vapor_flux_linearity",
"description": "Verify I_M ∝ (n_inf - n_s): set n_s = 5×10²⁰ m⁻³ (half of n_inf). I_M should halve relative to the default (n_s=0) case. I follows proportionally since β is unchanged. Exercises the (n_inf - n_s) driving force term in Eq. 2.1.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"n_s": 5e+20
},
"assertions": [
{
"variable": "I_M",
"time": 0.0,
"expected": 12566370614.359175,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "I",
"time": 0.0,
"expected": 5579494401.746052,
"tolerance": {
"rel": 1e-09
}
}
]
},
{
"id": "heat_flux_temperature_difference",
"description": "Larger temperature difference: T_inf=300 K, T_o=280 K (ΔT=20 K vs default 5 K). Q_M scales linearly: 4× larger ΔT gives 4× larger Q_M and Q. β_q is unchanged (depends only on r, κ, gas properties). Exercises the (T_inf - T_o) driving force in Eq. 2.2.",
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_overrides": {
"T_inf": 300.0,
"T_o": 280.0
},
"assertions": [
{
"variable": "Q_M",
"time": 0.0,
"expected": 6.53451271946677e-07,
"tolerance": {
"rel": 1e-09
}
},
{
"variable": "Q",
"time": 0.0,
"expected": 2.2549287283121525e-07,
"tolerance": {
"rel": 1e-09
}
}
]
}
],
"analyses": [
{
"id": "beta_vs_radius",
"description": "Mass transport correction factor β as a function of droplet radius r (log sweep 1 nm to 100 µm) at default T_inf, D_v, m_v, δ_m=1. Shows the transition from the free-molecular regime (β ≪ 1, r ≪ ell_D) through the transition regime (r ~ ell_D ≈ 86 nm) to the continuum limit (β → 1, r ≫ ell_D).",
"initial_state": {},
"parameters": {},
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_sweep": {
"type": "cartesian",
"dimensions": [
{
"parameter": "r",
"range": {
"start": 1e-09,
"stop": 0.0001,
"count": 61,
"scale": "log"
}
}
]
},
"plots": [
{
"id": "beta_vs_r",
"type": "line",
"description": "Mass transport correction factor β vs droplet radius r. Approaches 1 in the continuum regime (r ≫ ell_D ≈ 86 nm) and decreases toward 0 in the free-molecular regime (r ≪ ell_D).",
"x": {
"variable": "r",
"label": "Droplet radius r (m)"
},
"y": {
"variable": "β",
"label": "Mass correction factor β"
}
}
]
},
{
"id": "beta_q_vs_radius",
"description": "Heat transport correction factor β_q as a function of droplet radius r (log sweep 1 nm to 100 µm) at default κ, n_gas, c_bar_gas, c_v, m_gas, α=1. Parallel to the mass correction sweep; shows the analogous transition for heat transport.",
"initial_state": {},
"parameters": {},
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_sweep": {
"type": "cartesian",
"dimensions": [
{
"parameter": "r",
"range": {
"start": 1e-09,
"stop": 0.0001,
"count": 61,
"scale": "log"
}
}
]
},
"plots": [
{
"id": "beta_q_vs_r",
"type": "line",
"description": "Heat transport correction factor β_q vs droplet radius r. Approaches 1 in the continuum regime and decreases in the free-molecular regime.",
"x": {
"variable": "r",
"label": "Droplet radius r (m)"
},
"y": {
"variable": "β_q",
"label": "Heat correction factor β_q"
}
}
]
},
{
"id": "correction_vs_sticking",
"description": "Mass correction factor β vs sticking coefficient δ_m (log sweep 0.01 to 1.0) at default r=100 nm. Shows that poor accommodation (δ_m → 0) suppresses the mass transfer rate, particularly in the transition regime where Kn_D ≈ 0.86.",
"initial_state": {},
"parameters": {},
"time_span": {
"start": 0.0,
"end": 1.0
},
"parameter_sweep": {
"type": "cartesian",
"dimensions": [
{
"parameter": "δ_m",
"range": {
"start": 0.01,
"stop": 1.0,
"count": 50,
"scale": "log"
}
}
]
},
"plots": [
{
"id": "beta_vs_delta_m",
"type": "line",
"description": "Mass correction factor β vs sticking coefficient δ_m at r=100 nm. β → 0 as δ_m → 0 (no sticking, no mass transfer) and reaches 0.444 at δ_m=1 (perfect sticking, transition regime).",
"x": {
"variable": "δ_m",
"label": "Sticking coefficient δ_m"
},
"y": {
"variable": "β",
"label": "Mass correction factor β"
}
}
]
}
]
}