12. Reference
12.1. Command-line interface
PhonoMC [input.toml]
With no argument, the executable searches for input.toml in the current
directory and near the executable. Only sectioned TOML input is supported.
12.2. Boundary codes
TThermal reservoir.
boundary_valuesis temperature in K. Particles that reach the facet are absorbed, and reservoir particles are injected using the one-to-one refill bookkeeping.PPeriodic boundary. The value must be
0. The paired facet determines the translation applied to the particle position.RRough boundary. The value is RMS roughness in nm. Reflection uses the precomputed mode-selection data and specularity model.
12.3. Output files
convergence.txtSpace-separated time history. Columns include
timestep,time_ps, grid temperatures,heatflux,kappa_int,kappa_eff,absorbed,injected,recovered, andnet.summary.txtNormalized input, geometry bounds, volume, facet counts, boundary counts, grid information, runtime, OpenMP settings, and optional profiling data.
grid_centers.csvx_nm,y_nm,z_nm,volume_nm3for every retained control-volume center.rough_boundary_mode_map.csvWritten when rough-facet preprocessing data is available. Contains incoming and reflected mode mapping diagnostics.
12.4. Plotting commands
python3 tools/plot_convergence.py RESULT_DIRECTORY
python3 tools/plot_temperature_3d.py \
--input INPUT.toml --results RESULT_DIRECTORY
12.5. Developer modules
src/SimulationConfig.cpp: strict TOML parsing and validationsrc/SurfaceMesh.cpp: geometry topology and spatial queriessrc/SimulationDomain.cpp: boundary and grid constructionsrc/PhononMaterial.cpp: POSCAR/HDF5 material loadingsrc/MonteCarloSolver.cpp: particle transport and observables
12.6. Tests
ctest --test-dir build --output-on-failure
The CTest targets cover configuration, domain/boundary behavior, the provided geometry examples, and strict material loading.