|
RadCluster
Graph-based cluster dynamics for irradiated materials
|
Classes | |
| class | BinMomentReduction |
core/reductions/bin_moment.py — Logarithmic size-bin moment reduction.
Host-independent. Implements the "reconstruct -> walk -> project"
reduction of Ghoniem (2026), Section 5.4: a per-size cluster ladder of
length N is replaced by a discrete prefix plus O(log N) logarithmically
spaced bins, each carrying P in {1,2,3} moments
mu_k^(0) = sum_{n in B_k} c_n
mu_k^(1) = sum_{n in B_k} n c_n
mu_k^(2) = sum_{n in B_k} n^2 c_n
evolved by the three-step procedure executed at every RHS call:
R reconstruct a per-size distribution c_n from the tracked moments
under the chosen intra-bin closure (piecewise-constant / linear
dual-basis / log-normal);
E evaluate the *exact* per-size master-equation rates with a
:class:`GraphWalker` — no bin-averaged rate constants;
P project the per-size rates onto the tracked moments,
d mu_k^(p)/dt = sum_{n in B_k} n^p (dc_n/dt).
Because step E uses the exact per-size rates, every conservation
property of the master equation is inherited automatically — no
inter-bin flux has to be made upwind-consistent (Section 5.4).
The pure bin-partition and closure mathematics is reused from the
reviewed, validated ``bin_moment_rates`` module (those functions are
host-independent); this class composes them with a graph walk.