GEIM — Germanium Ionization Modeling
Welcome to the documentation for the GEIM project, dedicated to modeling photon and electron interactions with Germanium (Z=32) atoms to understand the fundamental shapes of full energy peaks (photopeaks) in HPGe spectrometers.
Core Scientific Goal
Based on recent experimental studies of photopeak shapes using \(^{137}\text{Cs}\) and \(^{60}\text{Co}\) sources, under certain parametrization an asymmetric peak component \(\Delta\) with a relative intensity of few percent was observed. The primary hypothesis is that this effect is linked to electron scattering from the K-shell of Germanium.
Simulation Strategy
- Infinite Medium Approximation: Since crystal geometry only affects the escape probability of low-energy photons, we simulate a cascade inside an infinite volume where complete energy absorption is guaranteed.
- K-Shell Electron Counting: The simulation tracks the cascade down to the K-shell binding energy threshold (\(\sim 11.1\) keV) and builds a histogram of the number of K-electrons ejected per full absorption event.
- Validation: The final distribution will be analyzed to verify if the fraction of events involving K-shell interactions matches the experimental \(\Delta\) parameters.
Project Structure
- process_db.py — Parses raw ENDL (EADL, EEDL, EPDL) ASCII data files from the IAEA database and optimizes them into intermediate structured arrays (
EPICS2023.pckl). - atom_prepare.py — Compiles raw data from the intermediate cache, constructs high-precision
CubicSplineinterpolators for all interaction cross-sections, calculates atomic relaxation matrices, and exports a unified performance database (geim_data.pckl). - geim.py — The primary simulation core. It acts as a high-speed runtime wrapper around the compiled database and implements the Monte Carlo radiation transport and atomic relaxation cascade logic.
Interaction Cross-Sections Verification
To ensure the physical validity of the compiled database (geim_data.pckl), high-precision verification charts are automatically compiled from the performance splines.
Photon Interactions
The photon cross-section map validates the hybrid calibration approach. The analytical independent bound shells model from physics_base.py matches the integrated EPICS2023 master evaluation data with extreme precision at high energies, while properly showing the ionization edges and thresholds in the low-energy region.

In the above figure Independent Bound Shells Model is plotted as-is, without normalisation to Incoherent Integrated (EPICS2023) x-section.
In the figure below the incoherent by-shell x-sections are plotted after such normalisation was done.

Electron Interactions
The electron cross-section map illustrates the core interaction channels utilized for electron transport modeling. It includes the integrated elastic scattering, elastic transport, bremsstrahlung, and individual subshell ionization cross-sections (IONZ_SHELL) down to the K-shell binding energy threshold.
