-
The code is written in Python, so be sure you have an up to date installion of it
-
Be sure to have the following python packages installed:
matplotlib,scipy,numpy,PyQt6- e.g.
>> pip install scipy
-
Clone the repo:
git clone https://github.com/PushingMyRocheLimits/PHSX841-final.git -
Move into the folder containing the project (
cd ~/PHSX841-final/) -
Open a terminal and run the example script:
>> python run_example.py
transport.py: cutoffs forE_cut_gamma,E_cut_hadron,E_cut_electronmaterial.py: propertiesdensity,X0,lambda_intphysics.py:- EM model: continuous dE/dx + stochastic brems/pair with simple sampled fractions
- Hadronic model: simple multiplicity & Dirichlet fragmentation
- Transverse spread: small-angle scattering approx in
ToyTransport._random_dir()(insidetransport.py) - Calorimeter: sampling fraction, noise sigma, shaping tau in
SamplingCalorimeter
- Implement Molière multiple scattering & lateral profile (Highland formula) to get realistic transverse shower RMS.
- Implement calibration and energy resolution study: run many primaries and compute reconstructed energy distributions and fit resolution vs E.
- Add multi-threading or vectorized stepping to speed large-statistics runs (so it don't murder yer 'puter)