RadCluster
Graph-based cluster dynamics for irradiated materials
Loading...
Searching...
No Matches
State-space reductions

Two independent reductions keep the system tractable at engineering doses. Both are stated on the abstract graph, so that any host material inherits them unchanged. They are in the folder radcluster_code/py_utils/core/reductions.

Helium-vacancy loading

The unreduced vacancy-helium state space is a two-dimensional grid \(c_{m,\ell}\) in the number of vacancies \(m\) and of helium atoms \(\ell\). The enumeration HeReductionMode in he_reduction.py selects one of two reductions.

  • Case 1, fusion. The helium content of a cavity class equilibrates quickly, and it is replaced by its mean field \(\bar{\ell}(m)\). The system has \(I + 2V + 1\) equations.
  • Case 2, fission. The loading decouples into a scalar inventory. The system has \(I + V + 2\) equations.

The cascade option selects the case: HeReductionMode.from_cascade() maps the fusion spectrum to Case 1 and the fission spectrum to Case 2.

Logarithmic bin moments

Sizes up to \(i_{discrete}\) (and \(v_{discrete}\) for vacancies) are tracked with one ODE per size. Larger sizes are grouped into logarithmic bins \(\mathcal{B}_k\) that carry \(P\) moments each:

\[ \mu_k^{(0)} = \sum_{n \in \mathcal{B}_k} c_n , \qquad \mu_k^{(1)} = \sum_{n \in \mathcal{B}_k} n\,c_n , \qquad \mu_k^{(2)} = \sum_{n \in \mathcal{B}_k} n^2 c_n . \]

The parameter shape_function selects the intra-bin closure:

shape_function \(P\) Closure Truncation error
constant 1 piecewise constant \(O((r-1)^2)\)
linear 2 hat function (dual basis) \(O((r-1)^3)\)
lognormal 3 log-normal shape \(O((r-1)^4)\)

Here \(r\) is the bin ratio. The discrete formulation is recovered exactly when the number of bins is zero.

The class BinMomentReduction in bin_moment.py implements the reduction of one size axis as a three-step procedure, which is executed at every evaluation of the right-hand side:

  1. reconstruct a per-size distribution from the tracked moments, under the chosen closure
  2. walk the graph on the reconstructed distribution (see Graph walker)
  3. project the per-size rates back onto the bin moments

The bin construction and the reconstruction helpers that the orchestrator uses are in radcluster_code/py_utils/bin_moment_rates.py.

See also
State layout, Verification and diagnostics