Monte Carlo LYSO
Geant4 simulation for the LYSO calorimeter prototype
globalsettings.hh
Go to the documentation of this file.
1 
5 #ifndef GLOBALSETTINGS_HH
6 #define GLOBALSETTINGS_HH
7 
8 #include "G4SystemOfUnits.hh"
9 
13 namespace GS
14 {
15  // Scintillator
16  constexpr G4double radiusScintillator = 42.5*mm;
17  constexpr G4double halfheightScintillator = 5.*cm;
19  constexpr G4double xScintillator = 0*cm;
20  constexpr G4double yScintillator = 0*cm;
21  constexpr G4double zScintillator = 65*cm;
27  // Grease
28  constexpr G4double radiusGrease = radiusScintillator;
29  constexpr G4double halfheightGrease = 0.05*mm;
33  // Light Guide
34  constexpr G4double radiusLightGuide = radiusScintillator;
35  constexpr G4double halfheightLightGuide = 1*mm;
36  constexpr G4double radiusHole = 0.4*mm;
37  constexpr G4double depthHole = 0.5*cm;
40  // LED
41  constexpr G4double depthLED = 2.5*mm;
42  constexpr G4double energyLED = 2.77*eV;
45  // SiPM
46  // Package in FR4: it's the window's mother volume
47  constexpr G4int nOfSiPMs = 115;
48  constexpr G4int nRowsSiPMs = 13;
49  constexpr G4int nColsSiPMs = 11;
50  constexpr G4bool panelSiPMs[nRowsSiPMs][nColsSiPMs] =
51  {
52  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
53  {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
54  {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
55  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
56  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
57  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
58  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
59  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
60  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
61  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
62  {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
63  {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
64  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
65  };
66 
67  constexpr G4double halfXsidePackageSiPM = 3.675*mm;
68  constexpr G4double halfYsidePackageSiPM = 3.425*mm;
69  constexpr G4double halfZsidePackageSiPM = 0.725*mm;
70  // Window in epoxy resin only: it's the detector's mother volume
71  constexpr G4double halfXsideWindowSiPM = 3.425*mm;
72  constexpr G4double halfYsideWindowSiPM = 3.425*mm;
73  constexpr G4double halfZsideWindowSiPM = 0.300*mm;
76  constexpr G4double yWindowSiPM = 0*mm;
78  // Detector in Si: note that now it is inside the window
79  constexpr G4double halfXsideDetector = 3*mm;
80  constexpr G4double halfYsideDetector = 3*mm;
81  constexpr G4double halfZsideDetector = 100*um;
83  constexpr G4double xDetector = 0*mm;
84  constexpr G4double yDetector = 0*mm;
87  constexpr G4double meanPDE = 23.6*perCent;
88 
89  const std::vector<G4double> pdeEnergies =
90  {
91  2.09*eV, 2.12*eV, 2.15*eV, 2.16*eV, 2.19*eV,
92  2.20*eV, 2.25*eV, 2.28*eV, 2.31*eV, 2.34*eV,
93  2.37*eV, 2.39*eV, 2.42*eV, 2.45*eV, 2.49*eV,
94  2.53*eV, 2.58*eV, 2.63*eV, 2.70*eV, 2.74*eV,
95  2.81*eV, 2.87*eV, 2.94*eV, 3.01*eV, 3.08*eV,
96  3.10*eV, 3.13*eV, 3.18*eV, 3.21*eV, 3.25*eV,
97  3.29*eV, 3.30*eV, 3.32*eV, 3.34*eV, 3.38*eV,
98  3.41*eV, 3.44*eV, 3.50*eV, 3.52*eV, 3.56*eV,
99  3.58*eV, 3.60*eV, 3.61*eV, 3.64*eV, 3.65*eV,
100  3.67*eV, 3.69*eV, 3.71*eV, 3.73*eV, 3.76*eV,
101  3.78*eV, 3.80*eV, 3.81*eV, 3.86*eV
102  };
103 
104  const std::vector<G4double> pdeValues =
105  {
106  17.3*perCent, 18.0*perCent, 18.5*perCent, 18.9*perCent, 19.5*perCent,
107  19.9*perCent, 20.8*perCent, 21.3*perCent, 21.9*perCent, 22.4*perCent,
108  22.9*perCent, 23.4*perCent, 23.7*perCent, 24.2*perCent, 24.5*perCent,
109  24.9*perCent, 25.2*perCent, 25.4*perCent, 25.4*perCent, 25.4*perCent,
110  25.2*perCent, 24.8*perCent, 24.3*perCent, 23.7*perCent, 23.3*perCent,
111  22.8*perCent, 22.4*perCent, 21.7*perCent, 21.0*perCent, 20.3*perCent,
112  19.5*perCent, 18.9*perCent, 18.4*perCent, 17.9*perCent, 17.3*perCent,
113  16.5*perCent, 15.8*perCent, 14.9*perCent, 13.9*perCent, 13.0*perCent,
114  12.2*perCent, 11.3*perCent, 10.6*perCent, 9.95*perCent, 9.43*perCent,
115  8.73*perCent, 7.71*perCent, 6.81*perCent, 6.09*perCent, 5.18*perCent,
116  4.47*perCent, 3.81*perCent, 3.03*perCent, 2.19*perCent
117  };
118 
119 
120  // PCB
121  constexpr G4double radiusPCB = radiusScintillator + 10.*mm;
122  constexpr G4double halfheightPCB = 0.75*mm;
125  // Endcap
126  constexpr G4double radiusEndcap = radiusScintillator + 15.5*mm;
127  constexpr G4double halfheightEndcap = 0.25*mm;
130  // Cilindrical Coating
136  constexpr G4double coating_space = 0.12*mm;
137 
138  constexpr G4double coating_thickness = 0.2*mm;
141  // Cosmic rays detector
142  constexpr G4double halfZXsideCosmicRayDetector = 1.5*cm;
143  constexpr G4double halfYsideCosmicRayDetector = 2.5*mm;
144 
145  constexpr G4double xCosmicRayDetector = xScintillator;
146  constexpr G4double yCosmicRayDetector = yScintillator + radiusScintillator + 1.*cm;
147  constexpr G4double zCosmicRayDetector = zScintillator;
148 
149 
150  // World Dimensions
151  constexpr G4double halfXsideWorld = 0.5*m;
152  constexpr G4double halfYsideWorld = 0.5*m;
153  constexpr G4double halfZsideWorld = 1*m;
154 }
155 
156 #endif // GLOBALSETTINGS_HH
Encapsulates global constant values for the simulation.
constexpr G4double zScintillator
z-position of the scintillator crystal.
constexpr G4double radiusGrease
Radius of the optical grease layer.
constexpr G4double halfYsideDetector
Half the y-side length of the SiPM silicon layer.
constexpr G4double depthHole
Depth of the holes drilled in the light guide.
constexpr G4double halfXsideWindowSiPM
Half the x-side length of the SiPM window.
constexpr G4double zWindowSiPM
z-position of the SiPM window referring to package center.
constexpr G4double halfXsidePackageSiPM
Half the x-side length of the SiPM package.
constexpr G4double halfheightPCB
Half the height of the PCB.
constexpr G4double halfXsideDetector
Half the x-side length of the SiPM silicon layer.
constexpr G4double halfZsideWindowSiPM
Half the z-side length of the SiPM window.
constexpr G4double zDetector
z-position of the SiPM silicon layer referring to window center.
constexpr G4double radiusScintillator
Radius of the scintillator crystal.
constexpr G4double zBackFaceScintillator
z-position of the back face of the scintillator crystal.
constexpr G4double halfheightGrease
Half the height of the optical grease layer.
constexpr G4double zFrontFaceScintillator
z-position of the front face of the scintillator crystal.
constexpr G4double halfZsidePackageSiPM
Half the z-side length of the SiPM package.
constexpr G4double halfheightLightGuide
Half the height of the light guide.
constexpr G4double xScintillator
x-position of the scintillator crystal.
constexpr G4double yWindowSiPM
y-position of the SiPM window referring to package center.
constexpr G4double radiusLightGuide
Radius of the light guide.
constexpr G4double halfheightScintillator
Half the height of the scintillator crystal.
constexpr G4double halfYsidePackageSiPM
Half the y-side length of the SiPM package.
constexpr G4double halfYsideWorld
Half the y-side length of the world volume.
constexpr G4double halfYsideWindowSiPM
Half the y-side length of the SiPM window.
constexpr G4double coating_space
Space between the crystal and the coating around it.
constexpr G4double halfheightEndcap
Half the height of the endcap.
constexpr G4double xWindowSiPM
x-position of the SiPM window referring to package center.
constexpr G4double xDetector
x-position of the SiPM silicon layer referring to window center.
constexpr G4double coating_thickness
Thickness of the cylindrical coating.
constexpr G4int nOfSiPMs
The number of SiPMs on a detector face.
constexpr G4double halfZsideWorld
Half the z-side length of the world volume.
constexpr G4double yDetector
y-position of the SiPM silicon layer referring to window center.
constexpr G4double halfZsideDetector
Half the z-side length of the SiPM silicon layer.
constexpr G4double radiusPCB
Radius of the Printed Circuit Board (PCB).
constexpr G4double energyLED
Energy of the optical photons emitted by the LED.
constexpr G4double depthLED
Depth of the LED inside the hole.
constexpr G4double halfXsideWorld
Half the x-side length of the world volume.
constexpr G4double yScintillator
y-position of the scintillator crystal.
constexpr G4double radiusHole
Radius of the holes drilled in the light guide.
constexpr G4double radiusEndcap
Radius of the endcap.