-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconstants.gdml
158 lines (126 loc) · 6.96 KB
/
constants.gdml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
<!-- Center position -->
<position name="center" x="0" y="0" z="0"/>
<!-- Absorber -->
<variable name="absorber_width" value="665"/>
<variable name="absorber_height" value="700"/>
<variable name="absorber_thickness" value="20."/>
<variable name="absorber_hole_radius" value="6.5"/>
<variable name="absorber_hole_distance_from_edge" value="16."/>
<!-- Mounting plates -->
<variable name="bar_mounting_plate_thickness" value="3."/>
<!-- Scintillators -->
<variable name="scint_thickness" value="20."/>
<variable name="scint_bar_width" value="50."/>
<variable name="scint_bar_length" value="2000."/>
<variable name="scint_bar_cover_thickness" value="0.5"/>
<variable name="num_bars_front" value="8"/>
<variable name="num_bars_back" value="12"/>
<!-- Layers -->
<variable name="layer_thickness" value="45."/>
<variable name="air_thickness"
value="layer_thickness - (absorber_thickness + bar_mounting_plate_thickness + scint_thickness + scint_bar_cover_thickness)"/>
<variable name="num_layers_front_vertical" value="5"/>
<variable name="num_layers_front_horizontal" value="4"/>
<variable name="num_layers_front"
value="num_layers_front_vertical + num_layers_front_horizontal"/>
<variable name="num_layers_back_vertical" value="5"/>
<variable name="num_layers_back_horizontal" value="5"/>
<variable name="num_layers_back"
value="num_layers_back_vertical + num_layers_back_horizontal"/>
<variable name="num_layers" value="num_layers_front + num_layers_back"/>
<variable name="num_absorbers" value="num_layers + 1"/>
<variable name="back_start" value="num_layers_front * layer_thickness"/>
<!-- Distances between layers -->
<constant name="distance_to_subsequent_absorber_layer " value="layer_thickness"/>
<constant name="distance_to_subsequent_scint_layer" value="2*layer_thickness"/>
<!-- World and prototype dimensions-->
<constant name="world_dim" value="10.0*m"/>
<variable name="bar_x_displacement" value="0"/>
<variable name="dx" value="3000. + 2*bar_x_displacement"/>
<variable name="dy" value="3000."/>
<variable name="dz" value="num_layers * layer_thickness"/>
<!-- Positional constants -->
<position name="hadron_calorimeter_pos" x="0.0" y="0.0" z="0.0"/>
<variable name="first_layer_zpos" value="-dz/2"/>
<variable name="first_layer_absorber_zpos"
value="first_layer_zpos + absorber_thickness/2"/>
<variable name="first_layer_scint_cover_zpos"
value="first_layer_zpos + absorber_thickness + scint_bar_cover_thickness/2"/>
<variable name="first_layer_scint_zpos"
value="first_layer_zpos + absorber_thickness + scint_bar_cover_thickness + scint_thickness/2"/>
<variable name="first_layer_bar_mounting_plate_zpos"
value="first_layer_zpos + absorber_thickness + scint_bar_cover_thickness + scint_thickness + bar_mounting_plate_thickness/2"/>
<variable name="first_back_layer_zpos" value="first_layer_zpos+back_start"/>
<!-- Front Layer, horizontal bars -->
<variable name="scint_front_horizontal_x" value="scint_bar_length"/>
<variable name="scint_front_horizontal_y" value="num_bars_front * scint_bar_width"/>
<!-- Front Layer, vertical bars -->
<variable name="scint_front_vertical_x" value="num_bars_front * scint_bar_width"/>
<variable name="scint_front_vertical_y" value="scint_bar_length"/>
<!-- Back Layer, vertical bars -->
<variable name="scint_back_vertical_x" value="num_bars_back * scint_bar_width"/>
<variable name="scint_back_vertical_y" value="scint_bar_length"/>
<!-- Back Layer, horizontal bars -->
<variable name="scint_back_horizontal_x" value="scint_bar_length"/>
<variable name="scint_back_horizontal_y" value="num_bars_back * scint_bar_width"/>
<!-- Horizontal mounting plates -->
<variable name="bar_mounting_plate_horizontal_x" value="scint_back_horizontal_x"/>
<variable name="bar_mounting_plate_horizontal_y" value="scint_back_horizontal_y"/>
<!-- Vertical mounting plates -->
<variable name="bar_mounting_plate_vertical_x" value="scint_back_vertical_x"/>
<variable name="bar_mounting_plate_vertical_y" value="scint_back_vertical_y"/>
<!-- Frame description variables-->
<quantity name="d1" type="length" value="4.32" unit="mm"/>
<quantity name="d2" type="length" value="12.3" unit="mm"/>
<quantity name="w1" type="length" value="20 - 20.57/2" unit="mm"/>
<quantity name="w2" type="length" value="20 - 8.13/2" unit="mm"/>
<quantity name="frame_length_z" type="length" value="1500" unit="mm"/>
<quantity name="frame_length_x" type="length" value="620" unit="mm"/>
<rotation name="crosswise_rotation" y="90" unit="deg"/>
<rotation name="vertical_rotation" x="90" unit="deg"/>
<rotation name="no_rotation" y="0" unit="deg"/>
<!-- Trigger scintillator dimensions -->
<constant name="TS_plastic_bar_gap" value="0.3*mm"/>
<constant name="TS_plastic_bar_dx" value="40*mm"/>
<constant name="TS_plastic_bar_dy" value="3*mm"/>
<constant name="TS_plastic_bar_dz" value="2*mm"/>
<constant name="number_of_TS_plastic_bars" value="6"/>
<constant name="TS_LYSO_bar_gap" value="0.3*mm"/>
<constant name="TS_LYSO_bar_dx" value="30*mm"/>
<constant name="TS_LYSO_bar_dy" value="2.1*mm"/>
<constant name="TS_LYSO_bar_dz" value="0.6*mm"/>
<constant name="number_of_TS_LYSO_bars" value="8"/>
<constant name="TS_LYSO_plate_dx" value="30*mm"/>
<constant name="TS_LYSO_plate_dy" value="20*mm"/>
<constant name="TS_LYSO_plate_dz" value="1.2*mm"/>
<!-- Trigger scintillator layers -->
<variable name="TS_plastic_bar_layer_y_increment"
value="TS_plastic_bar_dy + TS_plastic_bar_gap"/>
<variable name="TS_plastic_bar_layer1_y_start"
value="TS_plastic_bar_dy * (- 0.5 - number_of_TS_plastic_bars/2) + TS_plastic_bar_gap*(- 1 - number_of_TS_plastic_bars/2)"/>
<variable name="TS_plastic_bar_layer2_y_start"
value="TS_plastic_bar_dy * (- 0 - number_of_TS_plastic_bars/2) + TS_plastic_bar_gap*( - 1 - number_of_TS_plastic_bars/2)"/>
<variable name="TS_LYSO_bar_layer_y_increment"
value="TS_LYSO_bar_dy + TS_LYSO_bar_gap"/>
<variable name="TS_LYSO_bar_layer1_y_start"
value="TS_plastic_bar_layer2_y_start"/>
<variable name="TS_LYSO_bar_layer2_y_start"
value="TS_plastic_bar_layer2_y_start + (TS_LYSO_bar_gap + TS_LYSO_bar_dy)/2"/>
<!-- Trigger scintillator positions -->
<!-- Note: Distance between TS and hcal measured by hand by Peter Gyorgy at the testbeam -->
<constant name="TS_layer_distance_from_detector" value="70*mm"/>
<variable name="TS_z_location"
value="-dz/2 - TS_layer_distance_from_detector"/>
<variable name="TS_plastic_bar_layer1_z_pos"
value="-TS_plastic_bar_dz - TS_plastic_bar_gap + TS_z_location"/>
<variable name="TS_plastic_bar_layer2_z_pos"
value="TS_z_location"/>
<variable name="TS_LYSO_bar_layer1_z_pos"
value="-TS_LYSO_bar_dz - TS_LYSO_bar_gap + TS_z_location"/>
<variable name="TS_LYSO_bar_layer2_z_pos"
value="TS_z_location"/>
<variable name="TS_LYSO_plate_z_pos" value="TS_z_location"/>
<!-- Prototype box -->
<!-- Note: 1m extra spacing -->
<variable name="prototype_box_dz"
value="dz + (TS_layer_distance_from_detector + TS_plastic_bar_dz + TS_plastic_bar_gap)*2 + 1000"/>