Loading data into Celeritas¶
Problem data can be imported directly from Geant4 or loaded from a ROOT file.
-
using celeritas::inp::PhysicsImport = std::variant<PhysicsFromGeant, PhysicsFromFile>¶
Physics import specification.
In the JSON representation, a
"_type"field selects the variant alternative using one of the following values:“geant”:
PhysicsFromGeant”file”:
PhysicsFromFile
The following input types select the source of the imported physics data.
-
struct PhysicsFromFile
Load physics data from a ROOT file.
- Todo:
This should be replaced with a “ProblemFromFile” that supports ROOT or JSON. Currently it loads directly into
ImportDataas a stopgap. We may also want to completely replace ROOT.
Public Members
-
std::string input
Path to the problem input file.
-
struct PhysicsFromGeant
Options for importing data from in-memory Geant4.
- Todo:
Use “offload particle types” (variant: grouping, G4PD*, PDG)
Load all processes applicable to offload particles
Determine particle list from process->secondary mapping
Always load interpolation flags; clear them elsewhere if user wants to
Load all materials visible to geometry (and eventually fix PhysMatId vs GeoMatId)
Public Members
-
std::vector<std::string> ignore_processes
Do not use Celeritas physics for the given Geant4 process names.
-
GeantImportDataSelection data_selection
Only import a subset of available Geant4 data.
-
struct PhysicsFromGeantFiles
Options for loading cross section data from Geant4 data files.
- Todo:
Since Geant4 data structures don’t provide access to these, we must read them ourselves. Maybe add accessors to Geant4 and eliminate these/roll them upstream?
Defaults:
livermore_dir:usually$G4LEDATA/livermore/phot_epics2014neutron_dir:usually$G4PARTICLEXSDATA/neutronfluor_dir:usually$G4LEDATA/fluorauger_dir:usually$G4LEDATA/auger
Public Members
-
std::string livermore_dir
Livermore photoelectric data directory.
-
std::string neutron_dir
Neutron cross section data directory.
-
std::string fluor_dir
Fluorescence transition probabilities and subshells.
-
std::string auger_dir
Auger transition probabilities.