/[PAMELA software]/trieste/pamVMC/ac/src/PamVMCDetCard.cxx
ViewVC logotype

Contents of /trieste/pamVMC/ac/src/PamVMCDetCard.cxx

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (show annotations) (download) (vendor branch)
Wed Mar 4 12:51:24 2009 UTC (15 years, 9 months ago) by pamelats
Branch: MAIN, pamVMC
CVS Tags: start, v0r00, HEAD
Changes since 1.1: +0 -0 lines
Test pamVMC

1 #include <TMath.h>
2 #include "PamVMCDetCard.h"
3
4 ClassImp(PamVMCDetCard)
5
6 using TMath::Tan;
7 using TMath::ATan;
8 using TMath::Sin;
9 using TMath::Cos;
10 using TMath::Pi;
11
12 void PamVMCDetCard::DefineGeometry(){
13
14 TGeoMaterial *m=0;
15 TGeoMixture *x=0;
16 TString s = "ALUMINIUM";
17 m = GetMat(s);
18 if(!m){
19 m = new TGeoMaterial(s,26.98,13,2.7);
20 m->SetUniqueID( 9);
21 }
22
23 s = "IRON";
24 m = GetMat(s);
25 if(!m){
26 m = new TGeoMaterial(s,55.85,26,7.87);
27 m->SetUniqueID( 10);
28 }
29
30 s = "SCINT";
31 x = (TGeoMixture*)GetMat(s);
32 if(!x){
33 x = new TGeoMixture(s,2, 1.03200 );
34 x->SetUniqueID( 17);
35 x->DefineElement(0,12.01,6,0.922427);
36 x->DefineElement(1,1.01,1,0.7757296E-01);
37 }
38
39 s = "N2GAS";
40 m = GetMat(s);
41 if (!m){
42 m = new TGeoMaterial(s,14.01,7,0.1250000E-02);
43 m->SetUniqueID( 19);
44 }
45
46 s = "PLAST";
47 x = (TGeoMixture*)GetMat(s);
48 if(!x){
49 x = new TGeoMixture(s,2, 1.03200 );
50 x->SetUniqueID( 28);
51 x->DefineElement(0,12.01,6,0.9929774);
52 x->DefineElement(1,1.01,1,0.7022570E-02);
53 }
54
55 TGeoMedium *n =0;
56
57 s="ALUMINIUM";
58 n = (GetMed(s))?GetMed(s): new TGeoMedium(s,1,9,-1,1,40,1,100,0.5000000E-01,0.136283,0.5000000E-03);
59
60 s = "N2 GAS";
61 n = (GetMed(s))?GetMed(s): new TGeoMedium(s,3,19,-1,1,40,1,0.5000000E-01,0.5000000E-01,0.1000000E-02,0.5000000E-03);
62
63 s = "SCINTILLATOR";
64 n = (GetMed(s))?GetMed(s): new TGeoMedium(s,10,17,1,1,40,1,0.5000000E-01,0.5000000E-01,0.1000000E-01,0.5000000E-03);
65
66 s = "PLASTIC";
67 n = (GetMed(s))?GetMed(s): new TGeoMedium(s,18,28,-1,1,40,1,100,0.5000000E-01,0.1000000E-01,0.5000000E-03);
68
69 s = "IRON";
70 n = (GetMed(s))?GetMed(s): new TGeoMedium(s,27,10,-1,1,40,1,100,0.5000000E-01,0.2491200E-02,0.5000000E-03);
71
72
73 TGeoVolume *v = 0;
74
75 Double_t H1=6.6;
76 Double_t H2=11.55;
77 Double_t B1=20.95+3.6+5.8+H1/Tan(76./180.*Pi());
78 Double_t C1=H2/Tan(76./180.*Pi());
79 Double_t A1=37.18273-C1;
80 Double_t D1=37.18273-20.95-3.6-5.8;
81 //Double_t F1=C1+H1/Tan(76./180.*Pi());
82 Double_t ANG=ATan((B1/2.+D1-A1/2.)/18.15)/Pi()*180.;
83
84 Double_t B2=17.45+3.6+5.8+H1/Tan(76./180.*Pi());
85 Double_t C2=H2/Tan(76./180.*Pi());
86 Double_t A2=31.98273-C2;
87 Double_t D2=31.98273-17.45-3.6-5.8;
88 //Double_t F2=C2+H1/Tan(76./180.*Pi());
89 Double_t ANG2=ATan((B2/2.+D2-A2/2.)/18.15)/Pi()*180.;
90
91
92 Double_t BB=B1/2.+1.1*(1./Cos(ATan(D1/18.15))-D1/18.15+1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
93 Double_t AA=A1/2.+1.1*(1./Cos(ATan(D1/18.15))+D1/18.15-1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
94 Double_t DD=10.175*2.*D1/18.15;
95 Double_t CAR1_2=-ATan((BB+DD-AA)/(2.*10.175))/Pi()*180.;
96 Double_t CAR1_9=BB;
97 Double_t C1D1_9=B1/2.;
98 Double_t C2D1_9=B2/2.;
99
100 s = "C1D1";
101 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("SCINTILLATOR"),9.075,-ANG,0.,0.4,A1/2.,A1/2.,0.,0.4,C1D1_9,C1D1_9,0.);
102
103
104
105 s = "C2D1";
106 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("SCINTILLATOR"),9.075,-ANG2,0.,0.4,A2/2.,A2/2.,0.,0.4,C2D1_9,C2D1_9,0.);
107
108
109 s = "CAR1";
110 v = (GetVol(s))?GetVol(s):gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),10.175,CAR1_2,0.,0.55,AA,AA,0.,0.55,CAR1_9,CAR1_9,0.);
111
112
113 BB=B1/2.+0.9*(1./Cos(ATan(D1/18.15))-D1/18.15+1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
114 AA=A1/2.+0.9*(1./Cos(ATan(D1/18.15))+D1/18.15-1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
115 DD=9.975*2.*D1/18.15;
116 Double_t CR1P_2=-ATan((BB+DD-AA)/(2.*9.975))/Pi()*180.;
117 Double_t CR1P_9=BB;
118
119 s = "CR1P";
120 v = (GetVol(s))?GetVol(s):gGeoManager->MakeTrap(s,GetMed("PLASTIC"),9.975,CR1P_2,0.,0.4,AA,AA,0.,0.4,CR1P_9,CR1P_9,0.);
121
122 //===========//
123
124 BB=B2/2.+1.1*(1./Cos(ATan(D2/18.15))-D2/18.15+1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
125 AA=A2/2.+1.1*(1./Cos(ATan(D2/18.15))+D2/18.15-1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
126 DD=10.175*2.*D2/18.15;
127 Double_t CAR2_2=-ATan((BB+DD-AA)/(2.*10.175))/Pi()*180.;
128 Double_t CAR2_9=BB;
129
130 s = "CAR2";
131 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),10.175,CAR2_2,0.,0.55,AA,AA,0.,0.55,CAR2_9,CAR2_9,0.);
132
133 //==========//
134
135 BB=B2/2.+0.9*(1./Cos(ATan(D2/18.15))-D2/18.15+1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
136 AA=A2/2.+0.9*(1./Cos(ATan(D2/18.15))+D2/18.15-1./Tan(76./180.*Pi())+1./Sin(76./180.*Pi()))/2.;
137 DD=9.975*2.*D2/18.15;
138 Double_t CR2P_2=-ATan((BB+DD-AA)/(2.*9.975))/Pi()*180.;
139 Double_t CR2P_9=BB;
140
141 s = "CR2P";
142 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("PLASTIC"),9.975,CR2P_2,0.,0.4,AA,AA,0.,0.4,CR2P_9,CR2P_9,0.);
143
144 //==========//
145
146 AA=4.8+1.8;
147 BB=AA/Tan(76./180.*Pi())+AA*3.6/4.8;
148 Double_t VSN1_2=ATan((BB/2.-AA/Tan(76./180.*Pi()))/AA)/Pi()*180.;
149 Double_t VSN1_9=BB/2.;
150
151 s = "VSN1";
152 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),3.3,VSN1_2,0.,0.4,0.,0.,0.,0.4,VSN1_9,VSN1_9,0.);
153
154 //==========//
155
156 AA=1.8;
157 BB=AA*(5.8/1.8-3.6/4.8);
158 Double_t VSN2_1=0.9;
159 Double_t VSN2_2=ATan((BB/2.+AA*3.6/4.8)/AA)/Pi()*180.;
160 Double_t VSN2_9=2.225;
161
162 s = "VSN2";
163 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("PLASTIC"),VSN2_1,VSN2_2,0.,0.4,0.,0.,0.,0.4,VSN2_9,VSN2_9,0.);
164
165 //=========//
166
167 AA=1.8+0.9-Cos(ATan(3.6/4.8))*0.9/Sin(ATan(5.8/1.8)-ATan(3.6/4.8));
168 BB=AA*(5.8/1.8-3.6/4.8);
169 Double_t VPN2_1=AA/2.;
170 Double_t VPN2_2=ATan((BB/2.+AA*3.6/4.8)/AA)/Pi()*180.;
171 Double_t VPN2_9=BB/2.;
172
173
174 s = "VPN2";
175 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),VPN2_1,VPN2_2,0.,/*0.55*/ 0.4,0.,0.,0.,/*0.55*/0.4,VPN2_9,VPN2_9,0.);
176
177 //=========//
178
179 AA=(0.9/Sin(76./180.*Pi()))/(1./Tan(76./180.*Pi())+3.6/4.8)+4.8+1.8+0.9;
180 BB=AA/Tan(76./180.*Pi())+AA*3.6/4.8;
181 Double_t VPN1_1=AA/2.;
182 Double_t VPN1_9=BB/2.;
183
184 s = "VPN1";
185 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),VPN1_1,VSN1_2,0.,0.4,0.,0.,0.,0.4,VPN1_9,VPN1_9,0.);
186
187 //=========//
188
189 AA=(1.1/Sin(76./180.*Pi()))/(1./Tan(76./180.*Pi())+3.6/4.8)+4.8+1.8+1.1;
190 Double_t VAN1_1=AA/2.;
191 BB=AA/Tan(76./180.*Pi())+AA*3.6/4.8;
192 Double_t VAN1_9=BB/2.;
193
194 s = "VAN1";
195 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),VAN1_1,VSN1_2,0.,0.55,0.,0.,0.,0.55,VAN1_9,VAN1_9,0.);
196
197 //=========//
198
199 AA=1.8+1.1-Cos(ATan(3.6/4.8))*1.1/Sin(ATan(5.8/1.8)-ATan(3.6/4.8));
200 BB=AA*(5.8/1.8-3.6/4.8);
201 Double_t VAN2_1=AA/2.;
202 Double_t VAN2_2=ATan((BB/2.+AA*3.6/4.8)/AA)/Pi()*180.;
203 Double_t VAN2_9=BB/2.;
204
205 s = "VAN2";
206 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),VAN2_1,VAN2_2,0.,0.55,0.,0.,0.,0.55,VAN2_9,VAN2_9,0.);
207
208 //=========//
209
210 s = "CARD";
211 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),27.,22.8,12.35);
212 s = "LEGB";
213 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),2.15,3.575,11.85);
214 s = "LEG1";
215 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),0.65,0.,0.,0.15,6.85,6.85,0.,0.15,10.85,10.85,0.);
216 s = "LEG2";
217 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.65,1.65,11.35);
218 s = "LEG3";
219 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.1,1.3,0.325);
220 s = "LEG4";
221 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.65,1.625,11.85);
222 s = "LEG5";
223 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.125,2.575,11.85);
224 s = "LEG6";
225 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.1,0.55,11.2);
226 s = "LEG7";
227 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,3.25);
228 s = "LEG8";
229 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,4.35);
230 s = "LEG9";
231 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,3.25);
232 s = "TPLT";
233 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),27.,22.8,0.5);
234 s = "TOPC";
235 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),20.4,16.,0.5);
236 s = "TH11";
237 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),2.8,3.2,0.5);
238 s = "TH12";
239 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),2.8,5.3,0.5);
240 s = "TH21";
241 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.7,3.,0.5);
242 s = "TH22";
243 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),4.9,3.,0.5);
244 s = "TOPT";
245 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),0.5,0.,0.,2.25,2.25,0.,-26.565,2.25,2.25,0.,-26.565);
246 s = "TOHO";
247 v = (GetVol(s))?GetVol(s): gGeoManager->MakeTube(s,GetMed("N2 GAS"),0.,0.7,0.5);
248 s = "MGSC";
249 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("IRON"),16.,15.4,0.12456);
250 s = "MGSH";
251 v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),9.8,8.,0.12456);
252
253
254 Double_t X,Y,Z;
255 Double_t X1,Y1,Z1,X2,Y2,Z2;
256 Double_t ZH=49.229-(13.05+10.639+2.97+2.*22.615+1.6)-1.6;
257
258 Y=-16.014+19.45/2.*Sin(17./180.*Pi());
259 Z=47.661+ZH-12.35-19.45*Cos(17./180.*Pi())/2.;
260 X=((35.6/2.)-Tan(ANG/180.*Pi())*19.45/2.)-18.67;
261 X1=X; Y1=Y; Z1=Z;
262 GetVol("CARD")->AddNode(GetVol("CAR1"),1,new TGeoCombiTrans(X1,Y1,Z1,GetRot("rot11")));
263 Z=10.175-VAN1_1;
264 X=-(CAR1_9-10.175*Tan(CAR1_2/180.*Pi())-(VAN1_9-VAN1_1*Tan(VSN1_2/180.*Pi())));
265 GetVol("CAR1")->AddNode(GetVol("VAN1"),1,new TGeoTranslation(X,0.,Z));//many
266 Z=10.175-VAN2_1;
267 X=-(CAR1_9-10.175*Tan(CAR1_2/180.*Pi())-(2.*VAN1_9+VAN2_9-VAN2_1*Tan(VAN2_2/180.*Pi())));
268 GetVol("CAR1")->AddNode(GetVol("VAN2"),1,new TGeoTranslation(X,0.,Z));//many
269 X=(1.1-0.9)*(1./Cos(ATan(D1/18.15))-1./Sin(76./180.*Pi()))/2.;
270 GetVol("CAR1")->AddNodeOverlap(GetVol("CR1P"),1,new TGeoTranslation(X,0.,0.));//only
271 Z=9.975-VPN1_1;
272 X=-(CR1P_9-9.975*Tan(CR1P_2/180.*Pi())-(VPN1_9-VPN1_1*Tan(VSN1_2/180.*Pi())));
273 GetVol("CR1P")->AddNode(GetVol("VPN1"),1,new TGeoTranslation(X,0.,Z)); //many
274 Z=9.975-VPN2_1;
275 X=-(CR1P_9-9.975*Tan(CR1P_2/180.*Pi())-(2.*VPN1_9+VPN2_9-VPN2_1*Tan(VPN2_2/180.*Pi())));
276 GetVol("CR1P")->AddNode(GetVol("VPN2"),1,new TGeoTranslation(X,0.,Z));//many
277 X=0.9*(1./Cos(ATan(D1/18.15))-1./Sin(76./180.*Pi()))/2.;
278 GetVol("CR1P")->AddNodeOverlap(GetVol("C1D1"),1,new TGeoTranslation(X,0.,0.));//only
279 X=-(C1D1_9+9.075*Tan(ANG/180.*Pi())-(VSN1_9-3.3*Tan(VSN1_2/180.*Pi())));
280 GetVol("C1D1")->AddNode(GetVol("VSN1"),1,new TGeoTranslation(X,0.,5.775)); //only
281 X=-(C1D1_9+9.075*Tan(ANG/180.*Pi())-(2.*VSN1_9+2.225-0.9*Tan(VSN2_2/180.*Pi())));
282 GetVol("C1D1")->AddNode(GetVol("VSN2"),1,new TGeoTranslation(X,0.,8.175)); //only
283
284
285 GetVol("CARD")->AddNode(GetVol("CAR1"),2,new TGeoCombiTrans(-X1,-Y1,Z1,GetRot("rot12")));
286
287 X=19.123-19.45/2.*Sin(20./180.*Pi());
288 Z=47.358+ZH-12.35-19.45*Cos(20./180.*Pi())/2.;
289 Y=(30.4/2.-Tan(ANG2/180.*Pi())*19.45/2.)-16.8;
290 X2=X; Y2=Y; Z2=Z;
291
292 GetVol("CARD")->AddNode(GetVol("CAR2"),1,new TGeoCombiTrans(X2,Y2,Z2,GetRot("rot14")));
293
294 Z=10.175-VAN1_1;
295 X=-(CAR2_9-10.175*Tan(CAR2_2/180.*Pi())-(VAN1_9-VAN1_1*Tan(VSN1_2/180.*Pi())));
296 GetVol("CAR2")->AddNode(GetVol("VAN1"),2,new TGeoTranslation(X,0.,Z)); //many
297 Z=10.175-VAN2_1;
298 X=-(CAR2_9-10.175*Tan(CAR2_2/180.*Pi())-(2.*VAN1_9+VAN2_9-VAN2_1*Tan(VAN2_2/180.*Pi())));
299 GetVol("CAR2")->AddNode(GetVol("VAN2"),2,new TGeoTranslation(X,0.,Z)); //many
300 X=(1.1-0.9)*(1./Cos(ATan(D2/18.15))-1./Sin(76./180.*Pi()))/2.;
301 GetVol("CAR2")->AddNodeOverlap(GetVol("CR2P"),1,new TGeoTranslation(X,0.,0.)); // only
302 Z=9.975-VPN1_1;
303 X=-(CR2P_9+9.975*Tan(ANG2/180.*Pi())-(VPN1_9-VPN1_1*Tan(VSN1_2/180.*Pi())));
304 GetVol("CR2P")->AddNode(GetVol("VPN1"),2,new TGeoTranslation(X,0.,Z)); //many
305 Z=9.975-VPN2_1;
306 X=-(CR2P_9-9.975*Tan(CR2P_2/180.*Pi())-(2.*VPN1_9+VPN2_9-VPN2_1*Tan(VPN2_2/180.*Pi())));
307 GetVol("CR2P")->AddNode(GetVol("VPN2"),2,new TGeoTranslation(X,0.,Z));//many
308 X=0.9*(1./Cos(ATan(D2/18.15))-1./Sin(76./180.*Pi()))/2.;
309 GetVol("CR2P")->AddNodeOverlap(GetVol("C2D1"),1,new TGeoTranslation(X,0.,0.));//only
310 Z=9.075-3.3;
311 X=-(C2D1_9+9.075*Tan(ANG2/180.*Pi())-(VSN1_9-3.3*Tan(VSN1_2/180.*Pi())));
312 GetVol("C2D1")->AddNode(GetVol("VSN1"),2,new TGeoTranslation(X,0.,Z)); //only
313 Z=9.075-0.9;
314 X=-(C2D1_9+9.075*Tan(ANG2/180.*Pi())-(2.*VSN1_9+VSN2_9-VSN2_1*Tan(VSN2_2/180.*Pi())));
315 GetVol("C2D1")->AddNode(GetVol("VSN2"),2,new TGeoTranslation(X,0.,Z)); //only
316
317 GetVol("CARD")->AddNode(GetVol("CAR2"),2,new TGeoCombiTrans(-X2,-Y2,Z2,GetRot("rot13")));
318
319 //==Checked==//
320
321 GetVol("CARD")->AddNode(GetVol("LEGB"),1,new TGeoTranslation(-22.9,-18.575,-0.5));
322 GetVol("LEGB")->AddNode(GetVol("LEG1"),1,new TGeoCombiTrans(-1.5,-3.425,0.,GetRot("rot7")));
323 GetVol("LEGB")->AddNode(GetVol("LEG1"),2,new TGeoCombiTrans(-1.5,0.175,0.,GetRot("rot7")));
324 GetVol("LEGB")->AddNode(GetVol("LEG2"),1,new TGeoTranslation(-1.5,-1.625,0.));
325 GetVol("LEGB")->AddNode(GetVol("LEG3"),1,new TGeoTranslation(-0.55,2.275,11.525));
326 GetVol("LEGB")->AddNode(GetVol("LEG3"),2,new TGeoTranslation(-0.55,2.275,-11.525));
327 GetVol("LEGB")->AddNode(GetVol("LEG4"),1,new TGeoTranslation(-1.5,1.95,0.));
328 GetVol("LEGB")->AddNode(GetVol("LEG5"),1,new TGeoTranslation(1.025,1.,0.));
329 GetVol("LEGB")->AddNode(GetVol("LEG6"),1,new TGeoTranslation(-0.75,3.025,0.));
330 GetVol("LEGB")->AddNode(GetVol("LEG7"),1,new TGeoTranslation(0.65,-2.825,8.));
331 GetVol("LEGB")->AddNode(GetVol("LEG8"),1,new TGeoTranslation(0.65,-2.825,0.));
332 GetVol("LEGB")->AddNode(GetVol("LEG9"),1,new TGeoTranslation(0.65,-2.825,-8.));
333 GetVol("CARD")->AddNode(GetVol("LEGB"),2,new TGeoCombiTrans(-22.9,18.575,-0.5,GetRot("rot10")));
334 GetVol("CARD")->AddNode(GetVol("LEGB"),3,new TGeoCombiTrans(22.9,18.575,-0.5,GetRot("rot4")));
335 GetVol("CARD")->AddNode(GetVol("LEGB"),4,new TGeoCombiTrans(22.9,-18.575,-0.5,GetRot("rot9")));
336 GetVol("CARD")->AddNode(GetVol("TPLT"),1,new TGeoTranslation(0.,0.,11.85));
337 GetVol("TPLT")->AddNode(GetVol("TOPC"),1,gGeoIdentity);
338 GetVol("TPLT")->AddNode(GetVol("TH11"),1,new TGeoTranslation(-23.6,14.4,0.));
339 GetVol("TPLT")->AddNode(GetVol("TH11"),2,new TGeoTranslation(-23.6,-14.4,0.));
340 GetVol("TPLT")->AddNode(GetVol("TH11"),3,new TGeoTranslation(23.6,14.4,0.));
341 GetVol("TPLT")->AddNode(GetVol("TH11"),4,new TGeoTranslation(23.6,-14.4,0.));
342 GetVol("TPLT")->AddNode(GetVol("TH12"),1,new TGeoTranslation(-23.6,5.5,0.));
343 GetVol("TPLT")->AddNode(GetVol("TH12"),2,new TGeoTranslation(-23.6,-5.5,0.));
344 GetVol("TPLT")->AddNode(GetVol("TH12"),3,new TGeoTranslation(23.6,5.5,0.));
345 GetVol("TPLT")->AddNode(GetVol("TH12"),4,new TGeoTranslation(23.6,-5.5,0.));
346 GetVol("TPLT")->AddNode(GetVol("TH21"),1,new TGeoTranslation(-17.2,19.4,0.));
347 GetVol("TPLT")->AddNode(GetVol("TH21"),2,new TGeoTranslation(-17.2,-19.4,0.));
348 GetVol("TPLT")->AddNode(GetVol("TH21"),3,new TGeoTranslation(17.2,19.4,0.));
349 GetVol("TPLT")->AddNode(GetVol("TH21"),4,new TGeoTranslation(17.2,-19.4,0.));
350 GetVol("TPLT")->AddNode(GetVol("TH22"),1,new TGeoTranslation(-10.2,19.4,0.));
351 GetVol("TPLT")->AddNode(GetVol("TH22"),2,new TGeoTranslation(-10.2,-19.4,0.));
352 GetVol("TPLT")->AddNode(GetVol("TH22"),3,new TGeoTranslation(10.2,19.4,0.));
353 GetVol("TPLT")->AddNode(GetVol("TH22"),4,new TGeoTranslation(10.2,-19.4,0.));
354 GetVol("TPLT")->AddNode(GetVol("TH22"),5,new TGeoTranslation(0.,19.4,0.));
355 GetVol("TPLT")->AddNode(GetVol("TH22"),6,new TGeoTranslation(0.,-19.4,0.));
356 GetVol("TPLT")->AddNode(GetVol("TOPT"),1,new TGeoTranslation(-25.875,-20.55,0.));
357 GetVol("TPLT")->AddNode(GetVol("TOPT"),2,new TGeoCombiTrans(-25.875,20.55,0.,GetRot("rot10")));
358 GetVol("TPLT")->AddNode(GetVol("TOPT"),3,new TGeoCombiTrans(25.875,20.55,0.,GetRot("rot4")));
359 GetVol("TPLT")->AddNode(GetVol("TOPT"),4,new TGeoCombiTrans(25.875,-20.55,0.,GetRot("rot9")));
360 GetVol("TPLT")->AddNode(GetVol("TOHO"),1,new TGeoTranslation(20.1,18.,0.));
361 GetVol("TPLT")->AddNode(GetVol("TOHO"),2,new TGeoTranslation(-20.1,18.,0.));
362 GetVol("TPLT")->AddNode(GetVol("TOHO"),3,new TGeoTranslation(-20.1,-18.,0.));
363 GetVol("TPLT")->AddNode(GetVol("TOHO"),4,new TGeoTranslation(20.1,-18.,0.));
364 GetVol("CARD")->AddNode(GetVol("MGSC"),1,new TGeoTranslation(0.,0.,-12.22544));
365 GetVol("MGSC")->AddNode(GetVol("MGSH"),1,gGeoIdentity);
366
367
368 SetMotherProp(GetVol("CARD"),1,new TGeoTranslation(0.,0.,87.439));
369
370 };
371
372 void PamVMCDetCard::DefineCuts(){
373
374 TString s ="ALUMINIUM"; // default GPAMELA parameters
375 if (GetMed(s) && !GetCC(s))
376 SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
377 0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
378 s ="N2 GAS";
379 if (GetMed(s) && !GetCC(s))
380 SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
381 0.001, 0.01, 1., 1., 1., 0., 0., 1., 1., 4., 1., 1., 2., 1.));
382 s ="SCINTILLATOR";// default GPAMELA parameters
383 if (GetMed(s) && !GetCC(s))
384 SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
385 0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
386 s = "PLASTIC";// default GPAMELA parameters
387 if (GetMed(s) && !GetCC(s))
388 SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
389 0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
390 s = "IRON"; //default GPAMELA parameters
391 if (GetMed(s) && !GetCC(s))
392 SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
393 0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
394 }

  ViewVC Help
Powered by ViewVC 1.1.23