Hello,
I’ve tried to calculate the NIEL in 1 cm x 1 cm x 1 cm aluminium target under the 5.5 MeV alpha particle irradiation, however, I’ve confused by necessary physics lists (em, hadronic), production cuts, step max and models for processes (msc, h,e scattering, ionisation, etc).
I’ve modified the TestEm7 by changing the em model in physics list to opt3, cuts and step max from 0.5 um to 10 um, setting the energy thresholds in ionGasModels (from 5 to 40 keV in Bragg model, from 3 to 7 MeV in Bethe-Bloch model), adding standardNR, elastic, inelastic, binary, binary_ion, radioactive decay in macro. I’ve only obtained about 95 keV niel and 45 um (rms 9 um) range, in SRIM simulation Ion range - about 25 um.
I believe that niel should be bigger, about several hundreds keV.
Maybe I should modify some em processes or add some hadronic physics list here?
Does Geant4 calculate NIEL by all particles (I mean primaries and secondaries) or just primaries?
Does the number of particles in simulations have a strong influence on the calculations?
There is a rather extensive external codebase specifically for NIEL in Geant4 here, so it is done. The code is available for download as a patch here. You could build from it if anything.
Hi jrellin,
As far as I know there is code for version 10.4, and newer versions already contain the necessary classes for the NIEL calculation (If I’m wrong, someone correct me), and the presented test58 example is still not available for download.
there is no need to use ionGasModel in Alunimun - it is not gas, not vaccum.
By default, NIEL is computed in Geant4 as a sum of energy trasfer to atomic nuclei in ionisation and elastic scattering processes. This NIEL value is available at each step of a particles and can be accumulated in SteppingAction.
This approach is not ideal, because the resul may depend on cuts and other limits. The alternative approach is proposed via G4NIELCalculator interface, which again may be used within SteppingAction or SensitiveDetector. In that case, user should implement a concrete model, if the default one is not satisfactory.
Thank you for the advices. I’ve set G4NIELCalculator in SteppingAction file, changed the models: G4ICRU49NuclearStoppingModel gave about 7 keV NIEL, G4ICRU73QOModel and G4BraggIonModel gave about 5.7 MeV NIEL, G4BetheBlochModel - 6.3 MeV, G4AtimaEnergyLossModel - 42 MeV.
Projected range and its error became correct (about 25 um and rms - about 450 nm).
Maybe I use wrong cuts and stepmax (setCut and stepMax both 1 um) for 5.5 MeV alpha particles?
the macro include:
…
/testem/phys/addPhysics emstandard_opt4
/testem/phys/addPhysics elastic