Difference between revisions of "CodyMilne G4Proj"
m |
|||
(22 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
=Photon Energy deposition in a pure Ge crystal= | =Photon Energy deposition in a pure Ge crystal= | ||
− | Here is the mass attenuation cross sections for Germanium --- [[File:massattenuation.gif | 200 px]] | + | Here is the mass attenuation cross sections for Germanium ------ [[File:massattenuation.gif | 200 px]] |
− | Here is the total photon attenuation for Germanium --- [[File:photoattenuationGe.png | 200 px]] | + | Here is the total photon attenuation for Germanium ------------- [[File:photoattenuationGe.png | 200 px]] |
Here is the range of electrons in Ge as a function of energy --- [[File:eRangeGe.png | 200 px]] | Here is the range of electrons in Ge as a function of energy --- [[File:eRangeGe.png | 200 px]] | ||
− | + | Perform a fit to the 2nd hit distribution using an exponential fitting function. Do this for 100keV, 500keV, 1MeV, 3Mev and for this test, please run some 10 MeV gammas. | |
− | |||
− | |||
—the result of the fit should be equal to the mass attenuation coefficient multiplied by the density of Ge. Therefore, dividing the fit result by 5.323 yields the mass attenuation coefficient at each energy and we can compare them directly with the NIST database values for validation of the GEANT4 total cross sections and sampling. | —the result of the fit should be equal to the mass attenuation coefficient multiplied by the density of Ge. Therefore, dividing the fit result by 5.323 yields the mass attenuation coefficient at each energy and we can compare them directly with the NIST database values for validation of the GEANT4 total cross sections and sampling. | ||
− | |||
Using S2WN.Fit("expo"); | Using S2WN.Fit("expo"); | ||
− | I got for 3MeV constant: -1.88934 and slope: -1.84926e-02. | + | I got for |
− | 1MeV: -2.852121 slope: -3.04127e-02 | + | 3MeV constant: -1.88934 and slope: -1.84926e-02 +/- 1.63709e-02. |
− | 500k: -3.66350 slope: -4.25739e-02 | + | 1MeV: -2.852121 slope: -3.04127e-02 +/- 4.63910e-02 |
− | + | 500k: -3.66350 slope: -4.25739e-02 +/- 1.10890e-01 | |
− | + | Research shows this says these values are on a "log scale", not sure how exactly to read this. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | =Simulation Set Up - Detector Construction = | ||
+ | A pure block of 50x50x50cm Germanium is placed in front of a lead cylinder, inner radius 0.75cm, outer radius 50cm of height 55cm. There is a 1mmx1cm hole (made of Argon) from the center of the lead cask to the outside, pointed toward the middle of the Germanium crystal. | ||
− | [[File: | + | [[File:CM_Detectorsetup.png | 200 px]] |
− | |||
− | + | Photons are fired from a cylindrical gps from within the inner radius of the lead cask. This cylinder has a height of 40.25 cm and a radius of 0.5 cm. The goal of this gun is to simulate decay from a fuel rod on the inside of the lead cylinder. Angular cuts are made on the gun to limit wasteful gammas from being calculated. There is a phi (x direction) cut of 22 degrees, centered on the hole leading to the Germanium block, and a theta cut of about 45 degrees. The phi coincides with the 1mm side of the hole, and the theta coincides with the 1cm side of the hole. | |
− | |||
− | |||
− | |||
− | |||
=Energy Deposition= | =Energy Deposition= | ||
− | Send photons from inside an infinite crystal at 100, 500, 1000,3000 keV energy. Add up all the energy loss and see if you get delta functions or a delta + tail because GEANT4 stopped taking the photon and thus the energy is not accounted for. | + | Send photons from inside an infinite crystal at 100, 500, 1000, 3000 keV energy. Add up all the energy loss and see if you get delta functions or a delta + tail because GEANT4 stopped taking the photon and thus the energy is not accounted for. |
==100 keV== | ==100 keV== | ||
− | Start with<math> E_{gamma}</math> = 100 keV | + | Start with <math> E_{gamma}</math> = 100 keV |
Line 99: | Line 40: | ||
==500 keV== | ==500 keV== | ||
− | Start with<math> E_{gamma}</math> = 500 keV | + | Start with <math> E_{gamma}</math> = 500 keV |
Change units on Y-axis to Energy (eV?) | Change units on Y-axis to Energy (eV?) | ||
"No Backscattering" Do another plot with momentum cut Pz>0 | "No Backscattering" Do another plot with momentum cut Pz>0 | ||
− | |||
− | |||
[[File:CM_500keVPOSZvsEVENTS_2-7-2016.png | 200 px]] | [[File:CM_500keVPOSZvsEVENTS_2-7-2016.png | 200 px]] | ||
Line 122: | Line 61: | ||
==1 MeV== | ==1 MeV== | ||
− | Start with<math> E_{gamma}</math> = 1 MeV | + | Start with <math> E_{gamma}</math> = 1 MeV |
Line 132: | Line 71: | ||
==3 MeV== | ==3 MeV== | ||
− | Start with<math> E_{gamma}</math> = 3 MeV | + | Start with <math> E_{gamma}</math> = 3 MeV |
Line 140: | Line 79: | ||
Initial verification - first interaction distribution is consistent with published attenuation coefficient. | Initial verification - first interaction distribution is consistent with published attenuation coefficient. | ||
− | == | + | ==10 MeV== |
+ | This is looking at total energy deposition from the child particles in Germanium, from a incident gamma shot from within the crystal. | ||
+ | |||
+ | [[File:CM_10Menergydeposition_3-11-2016.png | 200 px]] | ||
+ | [[File:CM_10Menergydepositionzoom_3-11-2016.png | 200 px]] | ||
+ | |||
+ | Confirmed, GEANT keeps track of all energy deposited in the crystal, with little error that scales with initial photon energy. Could be minor leakage of secondary photons. | ||
− | + | ==Running Types== | |
+ | To submit batch job to minerve: | ||
+ | nohup ../exampleN02 run1.mac > /dev/null & | ||
− | |||
+ | For parallel processing on plexi: | ||
+ | Run | ||
+ | module load geant/geant4-10.2.0 | ||
+ | when you first log in to set up the environment for Geant4 | ||
+ | Use the command | ||
+ | G4make | ||
+ | when you configure your application (instead of 'cmake') to provide the necessary default options for Plexi. | ||
+ | To run: | ||
+ | salloc -n <number_of_processes> mpirun /absolute/path/to/your/application | ||
[[User_talk:Foretony#CodyMilne_G4Proj]] | [[User_talk:Foretony#CodyMilne_G4Proj]] |
Latest revision as of 19:35, 28 May 2016
Photon Energy deposition in a pure Ge crystal
Here is the mass attenuation cross sections for Germanium ------
Here is the total photon attenuation for Germanium -------------
Here is the range of electrons in Ge as a function of energy ---
Perform a fit to the 2nd hit distribution using an exponential fitting function. Do this for 100keV, 500keV, 1MeV, 3Mev and for this test, please run some 10 MeV gammas. —the result of the fit should be equal to the mass attenuation coefficient multiplied by the density of Ge. Therefore, dividing the fit result by 5.323 yields the mass attenuation coefficient at each energy and we can compare them directly with the NIST database values for validation of the GEANT4 total cross sections and sampling.
Using S2WN.Fit("expo");
I got for 3MeV constant: -1.88934 and slope: -1.84926e-02 +/- 1.63709e-02. 1MeV: -2.852121 slope: -3.04127e-02 +/- 4.63910e-02 500k: -3.66350 slope: -4.25739e-02 +/- 1.10890e-01 Research shows this says these values are on a "log scale", not sure how exactly to read this.
Simulation Set Up - Detector Construction
A pure block of 50x50x50cm Germanium is placed in front of a lead cylinder, inner radius 0.75cm, outer radius 50cm of height 55cm. There is a 1mmx1cm hole (made of Argon) from the center of the lead cask to the outside, pointed toward the middle of the Germanium crystal.
Photons are fired from a cylindrical gps from within the inner radius of the lead cask. This cylinder has a height of 40.25 cm and a radius of 0.5 cm. The goal of this gun is to simulate decay from a fuel rod on the inside of the lead cylinder. Angular cuts are made on the gun to limit wasteful gammas from being calculated. There is a phi (x direction) cut of 22 degrees, centered on the hole leading to the Germanium block, and a theta cut of about 45 degrees. The phi coincides with the 1mm side of the hole, and the theta coincides with the 1cm side of the hole.
Energy Deposition
Send photons from inside an infinite crystal at 100, 500, 1000, 3000 keV energy. Add up all the energy loss and see if you get delta functions or a delta + tail because GEANT4 stopped taking the photon and thus the energy is not accounted for.
100 keV
Start with
= 100 keVInitial verification - first hit position distribution is consistent with published attenuation coefficient.
500 keV
Start with
= 500 keVChange units on Y-axis to Energy (eV?)
"No Backscattering" Do another plot with momentum cut Pz>0
Initial verification - The first gamma interaction distribution is consistent with the published Ge mass attenuation coefficient at 500keV (0.08212) and a Ge density of 5.323.
Are the 2-D plots energy weights (normalized)? Set the Z-axis color range by hand in cold.
1 MeV
Start with
= 1 MeVInitial verification - first interaction is consistent with published attenuation coefficient.
3 MeV
Start with
= 3 MeVInitial verification - first interaction distribution is consistent with published attenuation coefficient.
10 MeV
This is looking at total energy deposition from the child particles in Germanium, from a incident gamma shot from within the crystal.
Confirmed, GEANT keeps track of all energy deposited in the crystal, with little error that scales with initial photon energy. Could be minor leakage of secondary photons.
Running Types
To submit batch job to minerve:
nohup ../exampleN02 run1.mac > /dev/null &
For parallel processing on plexi:
Run module load geant/geant4-10.2.0 when you first log in to set up the environment for Geant4 Use the command G4make when you configure your application (instead of 'cmake') to provide the necessary default options for Plexi. To run: salloc -n <number_of_processes> mpirun /absolute/path/to/your/application