Geant4 Version: 11.4.2, multi-threaded mode
Operating System: Ubuntu 26.04 LTS under WSL2 (Windows 10)
Compiler/Version: g++ 15.2.0
CMake Version: 4.2.3
Hello,
I am validating Geant4 against SRIM/TRIM for low energy heavy ions in amorphous carbon and I am seeing large disagreements in transport.
Setup: G4EmStandardPhysics_option4 plus G4StepLimiterPhysics, target 1 um amorphous carbon at 1.9 g/cm3, 0 emittance beam, 10k primaries per run. Ions H, He, O, Ne, Ar, Xe at 25 to 50 keV. Reference values from SRIM-2013 stopping/range tables and TRIM with the same isotope masses and density.
Observations:
-
With stock opt4, transported projected ranges collapse far below SRIM/TRIM. Example: 25 keV Ar in C gives Rp of about 1 nm in Geant4 versus about 30 nm in both SRIM tables and TRIM.
-
In the same configuration, G4EmCalculator::ComputeElectronicDEDX shows a large discontinuity as a function of energy. For Ar-40 in C, Se jumps from 0.354 keV/nm at 40 keV to 40.7 keV/nm at 41 keV, roughly a factor 115, and remains at that scale up to at least 5 MeV. For O-16 the same jump appears between 60 and 70 keV with a factor of about 200.
-
If I instead register G4IonParametrisedLossModel for GenericIon below 2 MeV (replacing LindhardSorensen), transport becomes more sane: Rp ratios to SRIM go from about 0.95 for H down to about 0.5 for Ar smoothly, though Ar Se sits about 20 percent below SRIM.
Questions:
-
Is EmStandard_opt4 intended for GenericIon transport at keV energies, or is this simply outside the supported regime?
-
Is the G4EmCalculator discontinuity in point 2 a known issue?
-
For keV heavy ion transport, is replacing the model with G4IonParametrisedLossModel a reasonable configuration, or is there a recommended physics setup for this regime?
