Quick start - Ghoniem/RadCluster GitHub Wiki

Quick start

From the notebook

Open radcluster_code/codes/Notebooks/RadCluster_2_1.ipynb. The notebook:

  1. documents every control variable
  2. builds the C++ solver if needed
  3. runs the case
  4. prints the end-of-run summary with the conservation diagnostics
  5. writes a timestamped output directory

A separate cell draws all figures again from the saved data, without a new run. Another cell inspects the reaction graph of the configured case.

From Python

from radcluster_code.py_utils.simulation import RadClusterSimulation

sim = RadClusterSimulation(
    I=1000,                         # max SIA cluster size tracked
    V=1000,                         # max vacancy cluster size tracked
    solver_mode='full_system',      # 'full_system' | 'active_window'
    equations='bin_moment',         # 'discrete' | 'bin_moment'
    cascade='fusion',               # 'fusion' | 'fission'
    he_kinetics='quasi_steady_state',
    i_mobile=5, v_mobile=2,         # largest mobile SIA / vacancy cluster
)

print(sim.material_rag.summary())   # the EUROFER-97 reaction graph
print(sim.state_layout)             # vertex -> ODE-index map

results = sim.run(solver_config={
    't_span': (1e-6, 1e8),          # seconds
    'n_points': 300,
    'log_time': True,
    'rtol': 1e-6, 'atol': 1e-20,
    'solver_method': {'linsol': 'gmres', 'preconditioner': 'Woodbury'},
})

The method run_adaptive() is the same call, with automatic expansion of the cluster-size domain when the distribution reaches the top of the grid.

Choosing the physics

The physics is selected by two independent choices.

Choice Values Meaning
equations discrete or bin_moment one ODE per cluster size, or logarithmic bins that carry moments
cascade fission or fusion the cascade spectrum and the helium reduction

The four combinations map to the physics_option strings that are used on disk: full_CD_fission, full_CD_fusion, bin_moment_CD_fission and bin_moment_CD_fusion. The constructor accepts either form.

What a run writes

Every run writes a directory output/YYYYMMDD_HHMMSS_<git-hash>/. See Outputs and provenance.

Changing parameters

Material and environment parameters come from the input workbook, and any of them can be overridden for one run. See Inputs.

⚠️ **GitHub.com Fallback** ⚠️