RadCluster
Graph-based cluster dynamics for irradiated materials
Loading...
Searching...
No Matches
Classes
py_utils.core.reductions.bin_moment Namespace Reference

Classes

class  BinMomentReduction
 

Detailed Description

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.