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

Annotation of /PamVMC/ac/src/PamVMCDetCard.cxx

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Thu Feb 19 16:00:12 2009 UTC (15 years, 9 months ago) by nikolas
Branch: MAIN
Cleaning files before release

1 nikolas 1.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