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

Annotation of /trieste/pamVMC/ac/src/PamVMCDetCard.cxx_orig

Parent Directory Parent Directory | Revision Log Revision Log


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

1 pamelats 1.1 #include "PamVMCDetCard.h"
2    
3     ClassImp(PamVMCDetCard)
4    
5     void PamVMCDetCard::DefineGeometry(){
6    
7     TGeoMaterial *m=0;
8     TGeoMixture *x=0;
9     TString s = "ALUMINIUM";
10     m = GetMat(s);
11     if(!m){
12     m = new TGeoMaterial(s,26.98,13,2.7);
13     m->SetUniqueID( 9);
14     }
15    
16     s = "IRON";
17     m = GetMat(s);
18     if(!m){
19     m = new TGeoMaterial(s,55.85,26,7.87);
20     m->SetUniqueID( 10);
21     }
22    
23     s = "SCINT";
24     x = (TGeoMixture*)GetMat(s);
25     if(!x){
26     x = new TGeoMixture(s,2, 1.03200 );
27     x->SetUniqueID( 17);
28     x->DefineElement(0,12.01,6,0.922427);
29     x->DefineElement(1,1.01,1,0.7757296E-01);
30     }
31    
32     s = "N2GAS";
33     m = GetMat(s);
34     if (!m){
35     m = new TGeoMaterial(s,14.01,7,0.1250000E-02);
36     m->SetUniqueID( 19);
37     }
38    
39     s = "PLAST";
40     x = (TGeoMixture*)GetMat(s);
41     if(!x){
42     x = new TGeoMixture(s,2, 1.03200 );
43     x->SetUniqueID( 28);
44     x->DefineElement(0,12.01,6,0.9929774);
45     x->DefineElement(1,1.01,1,0.7022570E-02);
46     }
47    
48     TGeoMedium *n =0;
49    
50     s="ALUMINIUM";
51     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,1,9,-1,1,40,1,100,0.5000000E-01,0.136283,0.5000000E-03);
52    
53     s = "N2 GAS";
54     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);
55    
56     s = "SCINTILLATOR";
57     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);
58    
59     s = "PLASTIC";
60     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,18,28,-1,1,40,1,100,0.5000000E-01,0.1000000E-01,0.5000000E-03);
61    
62     s = "IRON";
63     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,27,10,-1,1,40,1,100,0.5000000E-01,0.2491200E-02,0.5000000E-03);
64    
65    
66     TGeoVolume *v = 0;
67    
68     s = "C1D1";
69     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("SCINTILLATOR"),9.075,17.37456,180.,0.4,17.1515,17.1515,0.,0.4,15.99778,15.99778,0.);
70     s = "C2D1";
71     v = (GetVol(s))?GetVol(s):gGeoManager->MakeTrap(s,GetMed("SCINTILLATOR"),9.075,14.89904,180.,0.4,14.5515,14.5515,0.,0.4,14.24778,14.24778,0.);
72     s = "CAR1";
73     v = (GetVol(s))?GetVol(s):gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),10.175,17.37456,180.,0.55,18.37594,18.37594,0.,0.55,17.08238,17.08238,0.);
74     s = "CR1P";
75     v = (GetVol(s))?GetVol(s):gGeoManager->MakeTrap(s,GetMed("PLASTIC"),9.975,17.37456,180.,0.4,18.15331,18.15331,0.,0.4,16.88518,16.88518,0.);
76     s = "CAR2";
77     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),10.175,14.89904,180.,0.55,15.70831,15.70831,0.,0.55,15.36778,15.36778,0.);
78     s = "CR2P";
79     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("PLASTIC"),9.974999,14.89904,180.,0.4,15.49798,15.49798,0.,0.4,15.16415,15.16415,0.);
80     s = "VSN1";
81     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),3.3,14.05436,0.,0.4,0.,0.,0.,0.4,3.297782,3.297782,0.);
82     s = "VSN2";
83     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("PLASTIC"),0.9,63.27491,0.,0.4,0.,0.,0.,0.4,2.225,2.225,0.);
84     s = "VPN2";
85     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("ALUMINIUM"),0.7358874,63.27491,0.,0.55,0.,0.,0.,0.55,1.819277,1.819277,0.);
86     s = "VPN1";
87     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),4.214088,14.05436,0.,0.4,0.,0.,0.,0.4,4.211256,4.211256,0.);
88     s = "VAN1";
89     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),4.417219,14.05436,0.,0.55,0.,0.,0.,0.55,4.41425,4.41425,0.);
90     s = "VAN2";
91     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTrap(s,GetMed("N2 GAS"),0.6994181,63.27491,0.,0.55,0.,0.,0.,0.55,1.729117,1.729117,0.);
92     s = "CARD";
93     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),27.,22.8,12.35);
94     s = "LEGB";
95     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),2.15,3.575,11.85);
96     s = "LEG1";
97     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.);
98     s = "LEG2";
99     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.65,1.65,11.35);
100     s = "LEG3";
101     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.1,1.3,0.325);
102     s = "LEG4";
103     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.65,1.625,11.85);
104     s = "LEG5";
105     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.125,2.575,11.85);
106     s = "LEG6";
107     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),0.1,0.55,11.2);
108     s = "LEG7";
109     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,3.25);
110     s = "LEG8";
111     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,4.35);
112     s = "LEG9";
113     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.1,0.75,3.25);
114     s = "TPLT";
115     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),27.,22.8,0.5);
116     s = "TOPC";
117     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),20.4,16.,0.5);
118     s = "TH11";
119     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),2.8,3.2,0.5);
120     s = "TH12";
121     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),2.8,5.3,0.5);
122     s = "TH21";
123     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.7,3.,0.5);
124     s = "TH22";
125     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),4.9,3.,0.5);
126     s = "TOPT";
127     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);
128     s = "TOHO";
129     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTube(s,GetMed("N2 GAS"),0.,0.7,0.5);
130     s = "MGSC";
131     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("IRON"),16.,15.4,0.12456);
132     s = "MGSH";
133     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),9.8,8.,0.12456);
134    
135    
136    
137    
138     GetVol("CARD")->AddNode(GetVol("CAR1"),1,new TGeoCombiTrans(-3.91289,-13.17068,0.1509358,GetRot("rot11")));
139     GetVol("CAR1")->AddNode(GetVol("VAN1"),1,new TGeoTranslation(-16.95761,0.,5.757782));
140     GetVol("CAR1")->AddNode(GetVol("VAN2"),1,new TGeoTranslation(-11.09758,0.,9.475582));
141     GetVol("CAR1")->AddNodeOverlap(GetVol("CR1P"),1,new TGeoTranslation(0.379E-02,0.,0.));
142     GetVol("CR1P")->AddNode(GetVol("VPN1"),1,new TGeoTranslation(-16.84998,0.,5.760911));
143     GetVol("CR1P")->AddNode(GetVol("VPN2"),1,new TGeoTranslation(-11.22606,0.,9.239112));
144     GetVol("CR1P")->AddNodeOverlap(GetVol("C1D1"),1,new TGeoTranslation(0.17055E-01,0.,0.));
145     GetVol("C1D1")->AddNode(GetVol("VSN1"),1,new TGeoTranslation(-16.36562,0.,5.775));
146     GetVol("C1D1")->AddNode(GetVol("VSN2"),1,new TGeoTranslation(-11.80423,0.,8.175));
147     GetVol("CARD")->AddNode(GetVol("CAR1"),2,new TGeoCombiTrans(3.91289,13.17068,0.1509358,GetRot("rot12")));
148     GetVol("CARD")->AddNode(GetVol("CAR2"),1,new TGeoCombiTrans(15.79685,-4.187448,0.9491571E-02,GetRot("rot14")));
149     GetVol("CAR2")->AddNode(GetVol("VAN1"),2,new TGeoTranslation(-14.7665,0.,5.757782));
150     GetVol("CAR2")->AddNode(GetVol("VAN2"),2,new TGeoTranslation(-8.906463,0.,9.475582));
151     GetVol("CAR2")->AddNodeOverlap(GetVol("CR2P"),1,new TGeoTranslation(0.8603846E-03,0.,0.));
152     GetVol("CR2P")->AddNode(GetVol("VPN1"),2,new TGeoTranslation(-14.66179,0.,5.760911));
153     GetVol("CR2P")->AddNode(GetVol("VPN2"),2,new TGeoTranslation(-9.037874,0.,9.239112));
154     GetVol("CR2P")->AddNodeOverlap(GetVol("C2D1"),1,new TGeoTranslation(0.3871730E-02,0.,0.));
155     GetVol("C2D1")->AddNode(GetVol("VSN1"),2,new TGeoTranslation(-14.19062,0.,5.775));
156     GetVol("C2D1")->AddNode(GetVol("VSN2"),2,new TGeoTranslation(-9.629226,0.,8.175));
157     GetVol("CARD")->AddNode(GetVol("CAR2"),2,new TGeoCombiTrans(-15.79685,4.187448,0.9491571E-02,GetRot("rot13")));
158     GetVol("CARD")->AddNodeOverlap(GetVol("LEGB"),1,new TGeoTranslation(-21.05,-18.525,-0.5)); //many
159     GetVol("LEGB")->AddNode(GetVol("LEG1"),1,new TGeoCombiTrans(-1.5,-3.425,0.,GetRot("rot7")));
160     GetVol("LEGB")->AddNode(GetVol("LEG1"),2,new TGeoCombiTrans(-1.5,0.175,0.,GetRot("rot7")));
161     GetVol("LEGB")->AddNode(GetVol("LEG2"),1,new TGeoTranslation(-1.5,-1.625,0.));
162     GetVol("LEGB")->AddNode(GetVol("LEG3"),1,new TGeoTranslation(-0.55,2.275,11.525));
163     GetVol("LEGB")->AddNode(GetVol("LEG3"),2,new TGeoTranslation(-0.55,2.275,-11.525));
164     GetVol("LEGB")->AddNode(GetVol("LEG4"),1,new TGeoTranslation(-1.5,1.95,0.));
165     GetVol("LEGB")->AddNode(GetVol("LEG5"),1,new TGeoTranslation(1.025,1.,0.));
166     GetVol("LEGB")->AddNode(GetVol("LEG6"),1,new TGeoTranslation(-0.75,3.025,0.));
167     GetVol("LEGB")->AddNode(GetVol("LEG7"),1,new TGeoTranslation(0.65,-2.825,8.));
168     GetVol("LEGB")->AddNode(GetVol("LEG8"),1,new TGeoTranslation(0.65,-2.825,0.));
169     GetVol("LEGB")->AddNode(GetVol("LEG9"),1,new TGeoTranslation(0.65,-2.825,-8.));
170     GetVol("CARD")->AddNodeOverlap(GetVol("LEGB"),2,new TGeoCombiTrans(-21.05,18.525,-0.5,GetRot("rot10"))); //many
171     GetVol("CARD")->AddNodeOverlap(GetVol("LEGB"),3,new TGeoCombiTrans(21.05,18.525,-0.5,GetRot("rot4"))); //many
172     GetVol("CARD")->AddNodeOverlap(GetVol("LEGB"),4,new TGeoCombiTrans(21.05,-18.525,-0.5,GetRot("rot9")));//many
173     GetVol("CARD")->AddNode(GetVol("TPLT"),1,new TGeoTranslation(0.,0.,11.85));
174     GetVol("TPLT")->AddNode(GetVol("TOPC"),1,gGeoIdentity);
175     GetVol("TPLT")->AddNode(GetVol("TH11"),1,new TGeoTranslation(-23.6,14.4,0.));
176     GetVol("TPLT")->AddNode(GetVol("TH11"),2,new TGeoTranslation(-23.6,-14.4,0.));
177     GetVol("TPLT")->AddNode(GetVol("TH11"),3,new TGeoTranslation(23.6,14.4,0.));
178     GetVol("TPLT")->AddNode(GetVol("TH11"),4,new TGeoTranslation(23.6,-14.4,0.));
179     GetVol("TPLT")->AddNode(GetVol("TH12"),1,new TGeoTranslation(-23.6,5.5,0.));
180     GetVol("TPLT")->AddNode(GetVol("TH12"),2,new TGeoTranslation(-23.6,-5.5,0.));
181     GetVol("TPLT")->AddNode(GetVol("TH12"),3,new TGeoTranslation(23.6,5.5,0.));
182     GetVol("TPLT")->AddNode(GetVol("TH12"),4,new TGeoTranslation(23.6,-5.5,0.));
183     GetVol("TPLT")->AddNode(GetVol("TH21"),1,new TGeoTranslation(-17.2,19.4,0.));
184     GetVol("TPLT")->AddNode(GetVol("TH21"),2,new TGeoTranslation(-17.2,-19.4,0.));
185     GetVol("TPLT")->AddNode(GetVol("TH21"),3,new TGeoTranslation(17.2,19.4,0.));
186     GetVol("TPLT")->AddNode(GetVol("TH21"),4,new TGeoTranslation(17.2,-19.4,0.));
187     GetVol("TPLT")->AddNode(GetVol("TH22"),1,new TGeoTranslation(-10.2,19.4,0.));
188     GetVol("TPLT")->AddNode(GetVol("TH22"),2,new TGeoTranslation(-10.2,-19.4,0.));
189     GetVol("TPLT")->AddNode(GetVol("TH22"),3,new TGeoTranslation(10.2,19.4,0.));
190     GetVol("TPLT")->AddNode(GetVol("TH22"),4,new TGeoTranslation(10.2,-19.4,0.));
191     GetVol("TPLT")->AddNode(GetVol("TH22"),5,new TGeoTranslation(0.,19.4,0.));
192     GetVol("TPLT")->AddNode(GetVol("TH22"),6,new TGeoTranslation(0.,-19.4,0.));
193     GetVol("TPLT")->AddNode(GetVol("TOPT"),1,new TGeoTranslation(-25.875,-20.55,0.));
194     GetVol("TPLT")->AddNode(GetVol("TOPT"),2,new TGeoCombiTrans(-25.875,20.55,0.,GetRot("rot10")));
195     GetVol("TPLT")->AddNode(GetVol("TOPT"),3,new TGeoCombiTrans(25.875,20.55,0.,GetRot("rot4")));
196     GetVol("TPLT")->AddNode(GetVol("TOPT"),4,new TGeoCombiTrans(25.875,-20.55,0.,GetRot("rot9")));
197     GetVol("TPLT")->AddNode(GetVol("TOHO"),1,new TGeoTranslation(20.1,18.,0.));
198     GetVol("TPLT")->AddNode(GetVol("TOHO"),2,new TGeoTranslation(-20.1,18.,0.));
199     GetVol("TPLT")->AddNode(GetVol("TOHO"),3,new TGeoTranslation(-20.1,-18.,0.));
200     GetVol("TPLT")->AddNode(GetVol("TOHO"),4,new TGeoTranslation(20.1,-18.,0.));
201     GetVol("CARD")->AddNode(GetVol("MGSC"),1,new TGeoTranslation(0.,0.,-12.22544));
202     GetVol("MGSC")->AddNode(GetVol("MGSH"),1,gGeoIdentity);
203    
204    
205     SetMotherProp(GetVol("CARD"),1,new TGeoTranslation(0.,0.,87.439));
206    
207     };
208    
209     void PamVMCDetCard::DefineCuts(){
210    
211     TString s ="ALUMINIUM"; // default GPAMELA parameters
212     if (GetMed(s) && !GetCC(s))
213     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
214     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
215     s ="N2 GAS";
216     if (GetMed(s) && !GetCC(s))
217     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
218     0.001, 0.01, 1., 1., 1., 0., 0., 1., 1., 4., 1., 1., 2., 1.));
219     s ="SCINTILLATOR";// default GPAMELA parameters
220     if (GetMed(s) && !GetCC(s))
221     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
222     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
223     s = "PLASTIC";// default GPAMELA parameters
224     if (GetMed(s) && !GetCC(s))
225     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
226     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
227     s = "IRON"; //default GPAMELA parameters
228     if (GetMed(s) && !GetCC(s))
229     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
230     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
231     }

  ViewVC Help
Powered by ViewVC 1.1.23