_Geant4 Version: geant4-11-02-patch-02 [MT] (21-June-2024)
_Operating System: Ubuntu 64bit
_Compiler/Version:_g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
_CMake Version: 3.22.1
I’m implementing an HPGe detector in Geant4. I’ve already built the detector geometry and generated the energy spectrum. To simulate the detector’s performance, is it appropriate to apply the energy resolution (FWHM) in post-processing like this?
G4double sigma = resolution * sqrt(E_dep); // example resolution: 0.002 ~ 0.005
G4double smeared_E = G4RandGauss::shoot(E_dep, sigma);
Hi @Jimin_Park,
Yes, that’s correct. The standard form for the energy resolution σ of a detector is usually:
sigma(E)= sqrt( a + b*E )
where:
- a accounts for electronic noise, typically only relevant at low energies and often negligible at higher energies
- bE reflects the statistical fluctuations in the number of charge carriers (electron-hole pairs), which grow with energy. This term dominates at medium to high energies
The parameters a and b are typically extracted by fitting to measured resolution data at known gamma-ray energies.
Best,
Alvaro
1 Like
Alvaro,
Thank you very much for your kind and detailed explanation. Thanks to your guidance, I now have a clear understanding of the energy resolution concept and how to record the total event energy into H1. I will apply your suggestions to my code. Thank you once again!