|
RadCluster
Graph-based cluster dynamics for irradiated materials
|
Go to the source code of this file.
Functions | |
| static BOOL WINAPI | win_console_handler (DWORD ctrl_type) |
| void | posix_interrupt_handler (int) |
| static void | install_interrupt_handlers () |
| static std::map< std::string, double > | parse_cli_args (int argc, char *argv[]) |
| int | main (int argc, char *argv[]) |
solver.cpp — RadCluster_2_1 main C++ ODE solver.
Drives the RadCluster_2_1 cluster dynamics system for bcc Fe / EUROFER97. Invoked by py_utils/cpp_bridge.py via a parameter file: solver.exe –param_file=<path>
Physics reference: Ghoniem (2026), Rate_Equations.pdf, Eqs. 152, 155, 157, Chapter 9 (bin moments), Section 8 (He-reduction).
Solver modes (window_mode parameter): 0 = full_system — full system, CVODE BDF. 4 = active_window — two independent sliding windows (SIA + VAC) with OpenMP-parallel RHS. Thread count is auto-selected from max(N_eq, I+V) — the RHS sweep length, which in bin_moment mode is far larger than the ODE count (overridable via OMP_NUM_THREADS); when OpenMP is unavailable or the auto-pick lands on 1, the same code path simply runs serial.
Physics options (physics_option_int): 0 = full_CD_fission — I+V+2 equations (Case 2, Eq. 175) 1 = full_CD_fusion — I+2V+1 equations (Case 1, Eq. 174) 2 = bin_moment_CD_fission — 2Ib+V+2 equations (Chapter 9 + Case 2) 3 = bin_moment_CD_fusion — 2Ib+2V+1 equations (Chapter 9 + Case 1)
Output: n_points rows × (1 + N_eq) columns written as raw float64 binary to a companion .bin file, or space-separated text to stdout (fallback).
Build: cd radcluster_code/cpp_utils cmake -S . -B ../build -DCMAKE_BUILD_TYPE=Release cmake –build ../build –config Release
Definition in file solver.cpp.
|
static |
Definition at line 109 of file solver.cpp.
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 147 of file solver.cpp.
|
static |
Definition at line 120 of file solver.cpp.
| void posix_interrupt_handler | ( | int | ) |
Definition at line 104 of file solver.cpp.
|
static |
Definition at line 91 of file solver.cpp.