Terms as used in this project. Where the thesis, Dullemond’s notes, and the code use different words for the same thing, all are listed and the project term is in bold. Symbols are defined in notation.md.
σ_ij Δv_ij in m³ s⁻¹. Not a rate: multiply by N_i N_j for events per volume per time.
Collision cross section σ_ij
π (a_i + a_j)² for compact spheres.
Collision outcome
Sticking (coagulation, hit-and-stick), bouncing, fragmentation, plus sub-types: pulverization (all mass to the first bin), shattering (power-law fragments), cratering / erosion (small projectile excavates a big target), bouncing with mass loss, mass transfer.
Outcome probabilities P^coag, P^bounce, P^frag
Sum to one per pair. Hard threshold or smooth Maxwell-Boltzmann form (Stammler and Birnstiel 2022).
Reaction rate coefficient R^coag_ij, R^frag_ij
R^coll_ij times the outcome probability.
Fragment distribution function f(m)
Mass distribution of fragments per collision, normalized so that ∫ m f dm = m_i + m_j (or per body for independent shattering).
Integro-differential population balance ∂n/∂t = ∫∫ K(m,m’,m’‘) n(m’) n(m’‘) dm’ dm’’. Not to be confused with the Smoluchowski diffusion equation (see literature section 7).
Mass distribution function n(m)
Number density per unit mass per unit volume.
Bin population N_k
Particles per unit volume in bin k: N_k ≈ n(m_k) Δm_k. The state variable of the solver.
Bin mass density ρ_k
N_k m_k. Plot quantity “mass per bin”.
m²f(m) plot
Mass per logarithmic mass interval; the standard figure axis in coag_py.
Kernel function K(m, m’, m’’)
Continuous gain-minus-loss rate density.
Kernel tensor K_kij
Discrete kernel, K(m_k, m_i, m_j) Δm_k, so that dN_k/dt = Σ_ij K_kij N_i N_j.
Gain / loss
Positive / negative parts of K; loss is always -R_ij on k = i and k = j.
Collision recipe
Project term: for one pair (i, j), the list of (k, weight) entries that a single collision adds to and removes from. The sparse unit from which K_kij, sampled kernels, and Jacobians are assembled (ADR 0005).
Kovetz and Olund algorithm
Splits m_i + m_j between bins k̄ and k̄+1 with weights (1-ε, ε) so particle number and mass are both conserved. Also “Podolak algorithm” (Brauer 2008).
Reverse Kovetz and Olund
Same mapping for the surviving remnant after cratering or erosion.
Near-zero cancellation handling (fixcancel)
For k̄ = max(i, j), replace (1−ε)·R − R by −ε·R analytically to avoid catastrophic cancellation when m_i ≪ m_j.
Detailed balance (Dullemond’s sense)
Every removal of a colliding pair is matched exactly by the insertion of its products, so mass is conserved per collision to round-off. Not the thermodynamic meaning.
Kernel mass error ΔX^rel
Per-pair relative mass defect Σ_k m_k X_kij / (m_i + m_j), aggregated by RMS over pairs.
Upper grid boundary policy
What to do when m_i + m_j > m_max: drop the pair (thesis), pile up in the last bin, or let mass leave the grid and account for it.
Kernel sparsity
Fraction of non-zero K_kij: about 3 % for hit-and-stick, about 30 % with fragmentation (thesis, N_m = 100).
Analytic test kernels
Constant, linear (sum), product kernels with known solutions; product kernel shows gelation.
Gelation
Finite-time mass loss to an infinite cluster for strongly growing kernels.
Wide spread of time scales (small grains react fast, big ones slowly); forces implicit methods for long integrations.
Explicit Euler
N^{n+1} = N^n + Δt F(N^n); CFL-like step limit.
CFL condition (coagulation sense)
Explicit step bound Δt < min_k N_k / |loss_k| type criteria (Laibe and Lombart 2021).
Backward (implicit) Euler
Solve N^{n+1} = N^n + Δt F(N^{n+1}) by Newton iteration (coag_pybackwardeuler, niter).
Linearized implicit step
One Newton step: (I − Δt J) δ = Δt F(N^n) (Brauer 2008, App. C).
Rosenbrock / W-method
Linearly implicit Runge-Kutta; W-methods stay accurate with an approximate Jacobian, which matters for sampled kernels.
Radau IIA
Fully implicit collocation Runge-Kutta, 3 stages, order 5, L-stable; RADAU5 by Hairer and Wanner; scipy Radau. The thesis text says “4th order”; the method used was order 5.
Simplified Newton
Newton iteration with a frozen Jacobian across iterations and steps; standard in RADAU5.
Analytic Jacobian
J_kl = Σ_j (K_klj + K_kjl) N_j for the quadratic RHS; exact and cheap to assemble from recipes.
Macro step / output step
Step of the logarithmic output time grid (200 steps over 3·10¹⁰ s in the thesis).
Substep
Integrator steps within one macro step (adaptive in scipy, nsubst in coag_py).
Steady state / equilibrium
Coagulation-fragmentation balance where dN/dt → 0; reached after a few hundred years at 10 au in the thesis model.
Estimating Σ_ij K_kij N_i N_j from a random subset of pairs (i, j).
Pair sampling vs index sampling
Draw pairs (i, j) jointly from p_ij, or i and j independently from a 1D distribution F_i (Dullemond’s sample2d). The thesis samples pairs.
1D sampling
Dullemond’s sample2d=False: sample j only and sum over i exactly, exploiting hit-and-stick sparsity.
Sampling weight W_i (Dullemond)
Arbitrary positive weight defining the proposal F_i = N_i W_i / S. W = m emphasizes mass carriers.
Proposal / importance distribution p_ij
Probability of drawing pair (i, j).
Importance sampling (IS) estimator
F̂_k = (1/S) Σ_s K_k,ij N_i N_j / p_ij over S draws with replacement. Unbiased. Dullemond Eq. 1.70.
Horvitz-Thompson (HT) estimator
Unbiased estimator for sampling without replacement: weight each included pair by 1/π_ij, π_ij its inclusion probability.
Thesis estimator
Without replacement, no reweighting: E[F̂] = Σ π_ij K N N < F. Biased low, explains the “slower evolution” the thesis observed. See thesis review.
Implicit sampled form
Dullemond Eq. 1.71: divide the sampled kernel by N_i⁽⁰⁾ N_j⁽⁰⁾ at the start of the step and multiply by the unknown future N_i N_j, giving a sparse quadratic kernel usable by implicit solvers.
Sampling density ρ_sample
Thesis parameter: fraction of the N_m² pairs drawn per step.
Number of samples S (Dullemond N_ran)
Draws per step.
Frozen sample
Same sample used for all stages and Newton iterations of one step (keeps the step a deterministic ODE step).
Variance reduction
Techniques to lower estimator variance at fixed cost: optimal proposal, stratification, control variates, hybrid / split sum (exact sum over dominant pairs plus sampled tail), common random numbers, antithetic draws, systematic resampling.
Noise floor
Residual RMS of dN/dt at steady state caused by MC noise (thesis Fig. 107).
Work-normalized efficiency
1 / (error² × cost). The fair figure of merit for comparing estimators.