|
RadCluster
Graph-based cluster dynamics for irradiated materials
|
Collaboration diagram for py_utils.bin_moment_rates.BinMomentRateEquations:Public Member Functions | |
| __init__ (self, input_data, reaction_rates) | |
| compute_c_h_qss (self, c_v, Q_tot=None, Q_m=None) | |
| get_initial_conditions (self) | |
| ode_system (self, t, y) | |
| conservation_diagnostic (self, t, y, G_tot) | |
Protected Member Functions | |
| _unpack_moments (self, y_block, K_bin) | |
| _project_to_moments (self, dc, bins, N_max, dydt, offset, K_bin) | |
| _extract_mu1_content (self, y, offset, K_bin, bins) | |
Chapter 9 bin-moment ODE system for both SIA and vacancy clusters. Both populations are reduced to logarithmic size bins. The intra-bin shape function is controlled by ``shape_function``: "constant" — piecewise-constant (1 moment/bin: μ₀) "linear" — hat-function / dual-basis (2 moments/bin: μ₀, μ₁) "lognormal" — log-normal (3 moments/bin: μ₀, μ₁, μ₂) State vector layout (example for Case 2, QSS He, P moments/bin): y[0..i_d-1] : discrete SIA y[i_d..i_d+P*I_bin-1] : SIA bin moments y[i_d+P*I_bin..+v_d-1] : discrete VAC y[..+v_d..+v_d+P*V_bin-1] : VAC bin moments y[..] : He state (Q_tot or Q_k) Parameters ---------- input_data : InputData reaction_rates : ReactionRates
Definition at line 565 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.__init__ | ( | self, | |
| input_data, | |||
| reaction_rates | |||
| ) |
Definition at line 589 of file bin_moment_rates.py.
|
protected |
Extract first-moment content from state vector. For P >= 2, μ₁ is tracked explicitly (stride P, offset 1). For P == 1 (constant closure), μ₁ is approximated as μ₀ × midpoint.
Definition at line 1073 of file bin_moment_rates.py.
|
protected |
Project per-size rates dc onto P moments per bin in dydt.
Definition at line 785 of file bin_moment_rates.py.
|
protected |
Extract mu0, mu1, mu2 from a contiguous block of P*K_bin values.
Definition at line 777 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.compute_c_h_qss | ( | self, | |
| c_v, | |||
Q_tot = None, |
|||
Q_m = None |
|||
| ) |
QSS free He — same formula as RateEquations.compute_c_h_qss.
Definition at line 726 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.conservation_diagnostic | ( | self, | |
| t, | |||
| y, | |||
| G_tot | |||
| ) |
FP conservation diagnostic for hybrid discrete + bin-moment system. δ_FP^bin = |SIA_content − VAC_content| / (G·t)
Definition at line 1090 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.get_initial_conditions | ( | self | ) |
Return y0 — near-zero but consistent moments + concentrations. Bin moments are initialized so that μ₁/μ₀ = midpoint and μ₂/μ₀ = midpoint², ensuring the reconstruction places the distribution inside the bin range. Setting all moments to C_floor would give μ₁/μ₀ = 1 (outside bin range), causing garbage reconstruction and immediate CVODE failure. The C_floor fallback default (1e-15) must match the value the C++ solver clamps to, so the initial state is consistent with the solver's floor.
Definition at line 737 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.ode_system | ( | self, | |
| t, | |||
| y | |||
| ) |
ODE RHS using hybrid discrete + bin-moment layout. REFERENCE ONLY — not used by the solver; the production RHS is the C++ implementation. May be stale. Scheduled for replacement by the Stage-3 graph-walker.
Definition at line 800 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.beta_He |
Definition at line 661 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.bins |
Definition at line 620 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.edges |
Definition at line 620 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.G_He |
Definition at line 715 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.he_kinetics |
Definition at line 653 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.he_mode |
Definition at line 676 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.I |
Definition at line 595 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.I_bin |
Definition at line 622 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_discrete |
Definition at line 611 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_He |
Definition at line 680 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_J_He_sink |
Definition at line 700 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_J_SIA_fixed |
Definition at line 696 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_J_SIA_mutual |
Definition at line 697 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_J_VAC_fixed |
Definition at line 698 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_J_VAC_mutual |
Definition at line 699 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_MOM |
Definition at line 672 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_Q |
Definition at line 677 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_Qtot |
Definition at line 686 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.i_VAC |
Definition at line 673 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.inp |
Definition at line 590 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.K |
Definition at line 629 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.K_i |
Definition at line 630 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.K_v |
Definition at line 645 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.M |
Definition at line 599 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.N |
Definition at line 598 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.n1 |
Definition at line 631 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.N_eq |
Definition at line 701 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.n_mom |
Definition at line 608 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.Pr_SIA |
Definition at line 713 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.Pr_VAC |
Definition at line 714 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.qss_He |
Definition at line 654 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.r |
Definition at line 627 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.rr |
Definition at line 591 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.shape_function |
Definition at line 607 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.V |
Definition at line 596 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.V_bin |
Definition at line 640 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.v_discrete |
Definition at line 612 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.vac_bins |
Definition at line 638 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.vac_edges |
Definition at line 638 of file bin_moment_rates.py.
| py_utils.bin_moment_rates.BinMomentRateEquations.vac_mid |
Definition at line 648 of file bin_moment_rates.py.