/[PAMELA software]/PamVMC_update/nd/src/PamVMCDetND.cxx
ViewVC logotype

Annotation of /PamVMC_update/nd/src/PamVMCDetND.cxx

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Tue Oct 15 15:51:45 2013 UTC (11 years, 1 month ago) by formato
Branch point for: MAIN, rel
Initial revision

1 formato 1.1 #include "PamVMCDetND.h"
2     #include <TGeoMaterial.h>
3     ClassImp(PamVMCDetND)
4    
5     void PamVMCDetND::DefineGeometry(){
6    
7    
8     TGeoMaterial *m=0;
9     TGeoMixture *x=0;
10     TString s = "ALUMINIUM";
11     m = GetMat(s);
12     if(!m){
13     m = new TGeoMaterial(s,26.98,13,2.7);
14     m->SetUniqueID( 9);
15     }
16    
17     s = "IRON";
18     m = GetMat(s);
19     if(!m){
20     m = new TGeoMaterial(s,55.85,26,7.87);
21     m->SetUniqueID( 10);
22     }
23    
24     s = "N2GAS";
25     m = GetMat(s);
26     if (!m){
27     m = new TGeoMaterial(s,14.01,7,0.1250000E-02);
28     m->SetUniqueID( 19);
29     }
30    
31    
32     s = "CADMIUM";
33     m = GetMat(s);
34     if(!m){
35     m = new TGeoMaterial(s,112.411,48,8.65);
36     m->SetUniqueID( 31);
37     }
38    
39     s = "He3";
40     m = GetMat(s);
41     if(!m){
42     // m = new TGeoMaterial(s,3,2,0.1246000E-02);
43     m = new TGeoMaterial(s,3,2,0.1246e-2);
44     // m->SetState(TGeoMaterial::EGeoMaterialState(3));
45     //m->SetPressure(7*STP_pressure);
46     m->SetUniqueID( 33);
47     }
48    
49     s = "POLYETHYLENE";
50     x = (TGeoMixture*)GetMat(s);
51     if(!x){
52     x = new TGeoMixture(s,2, 0.930000 );
53     x->SetUniqueID( 34);
54     x->DefineElement(0,12.011,6,0.8562844);
55     x->DefineElement(1,1.00794,1,0.1437155);
56     }
57    
58     TGeoMedium *n =0;
59    
60     s="ALUMINIUM";
61     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,1,9,-1,1,40,1,100,0.5000000E-01,0.136283,0.5000000E-03);
62    
63     s = "N2 GAS";
64     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);
65    
66     s = "IRON";
67     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,27,10,-1,1,40,1,100,0.5000000E-01,0.2491200E-02,0.5000000E-03);
68    
69     s = "CADMIUM";
70     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,21,31,-1,1,40,1,0.5000000E-01,0.5000000E-01,0.5000000E-03,0.5000000E-03);
71    
72     s = "He3";
73     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,22,33,-1,1,40,1,0.5000000E-01,0.5000000E-01,0.1840000E-01,0.5000000E-03);
74    
75     s = "POLYETHYLENE";
76     n = (GetMed(s))?GetMed(s): new TGeoMedium(s,23,34,-1,1,40,1,100,0.5000000E-01,0.2000000E-01,0.5000000E-03);
77    
78     TGeoVolume *v = 0;
79    
80     s = "NDBO";
81     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),27.5,30.,7.5);
82     s = "NDBX";
83     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),21.45,21.45,7.);
84     s = "NDCD";
85     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("CADMIUM"),21.25,21.25,6.9);
86     s = "NDBI";
87     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),21.2,21.2,6.875);
88     s = "NDTU";
89     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTube(s,GetMed("IRON"),0.,0.925,10.); // orig (s,GetMed("IRON"),0.92,0.925,10)
90     s = "NDTI";
91     v = (GetVol(s))?GetVol(s): gGeoManager->MakeTube(s,GetMed("He3"),0.,0.92,9.99); // orig (s,GetMed("He3"),0,0.92,10)
92     s = "NDPB";
93     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("POLYETHYLENE"),21.2,21.2,1.);
94     s = "NDCO";
95     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),27.5,30.,0.5);
96     s = "NDBS";
97     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("ALUMINIUM"),15,4.275,7.);
98     s = "NDSS";
99     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),14.8,4.075,6.8);
100     s = "NDCI";
101     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),21.2,11.3,0.325);
102     s = "NDCM";
103     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),21.2,4.25,0.325);
104     s = "NDCE";
105     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),14.6,2.875,0.325);
106     s = "NDSI";
107     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.,7.26,0.325);
108     s = "NDSM";
109     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),1.,5.8,0.325);
110     s = "NDSE";
111     v = (GetVol(s))?GetVol(s): gGeoManager->MakeBox(s,GetMed("N2 GAS"),4.2,1.05,0.325);
112    
113    
114     GetVol("NDBO")->AddNode(GetVol("NDBX"),1,new TGeoTranslation(0.,0.,-0.5));
115     GetVol("NDBX")->AddNode(GetVol("NDCD"),1,new TGeoTranslation(0.,0.,0.1));
116     GetVol("NDCD")->AddNode(GetVol("NDBI"),1,new TGeoTranslation(0.,0.,0.25E-01));
117     GetVol("NDBI")->AddNode(GetVol("NDTU"),1,new TGeoCombiTrans(-19.975,0.,0.5E-01,GetRot("rot2")));//FLUKA off
118     GetVol("NDTU")->AddNode(GetVol("NDTI"),1,gGeoIdentity);//FLUKA off
119     GetVol("NDBI")->AddNode(GetVol("NDTU"),2,new TGeoCombiTrans(-17.625,0.,0.5E-01,GetRot("rot2")));
120     GetVol("NDBI")->AddNode(GetVol("NDTU"),3,new TGeoCombiTrans(-15.275,0.,0.5E-01,GetRot("rot2")));
121     GetVol("NDBI")->AddNode(GetVol("NDTU"),4,new TGeoCombiTrans(-12.925,0.,0.5E-01,GetRot("rot2")));
122     GetVol("NDBI")->AddNode(GetVol("NDTU"),5,new TGeoCombiTrans(-10.575,0.,0.5E-01,GetRot("rot2")));
123     GetVol("NDBI")->AddNode(GetVol("NDTU"),6,new TGeoCombiTrans(-8.225,0.,0.5E-01,GetRot("rot2")));
124     GetVol("NDBI")->AddNode(GetVol("NDTU"),7,new TGeoCombiTrans(-5.875,0.,0.5E-01,GetRot("rot2")));
125     GetVol("NDBI")->AddNode(GetVol("NDTU"),8,new TGeoCombiTrans(-3.525,0.,0.5E-01,GetRot("rot2")));
126     GetVol("NDBI")->AddNode(GetVol("NDTU"),9,new TGeoCombiTrans(-1.175,0.,0.5E-01,GetRot("rot2")));
127     GetVol("NDBI")->AddNode(GetVol("NDTU"),10,new TGeoCombiTrans(1.175,0.,0.5E-01,GetRot("rot2")));
128     GetVol("NDBI")->AddNode(GetVol("NDTU"),11,new TGeoCombiTrans(3.525,0.,0.5E-01,GetRot("rot2")));
129     GetVol("NDBI")->AddNode(GetVol("NDTU"),12,new TGeoCombiTrans(5.875,0.,0.5E-01,GetRot("rot2")));
130     GetVol("NDBI")->AddNode(GetVol("NDTU"),13,new TGeoCombiTrans(8.225,0.,0.5E-01,GetRot("rot2")));
131     GetVol("NDBI")->AddNode(GetVol("NDTU"),14,new TGeoCombiTrans(10.575,0.,0.5E-01,GetRot("rot2")));
132     GetVol("NDBI")->AddNode(GetVol("NDTU"),15,new TGeoCombiTrans(12.925,0.,0.5E-01,GetRot("rot2")));
133     GetVol("NDBI")->AddNode(GetVol("NDTU"),16,new TGeoCombiTrans(15.275,0.,0.5E-01,GetRot("rot2")));
134     GetVol("NDBI")->AddNode(GetVol("NDTU"),17,new TGeoCombiTrans(17.625,0.,0.5E-01,GetRot("rot2")));
135     GetVol("NDBI")->AddNode(GetVol("NDTU"),18,new TGeoCombiTrans(19.975,0.,0.5E-01,GetRot("rot2")));
136     GetVol("NDBI")->AddNode(GetVol("NDTU"),19,new TGeoCombiTrans(-19.975,0.,3.9,GetRot("rot2")));
137     GetVol("NDBI")->AddNode(GetVol("NDTU"),20,new TGeoCombiTrans(-17.625,0.,3.9,GetRot("rot2")));
138     GetVol("NDBI")->AddNode(GetVol("NDTU"),21,new TGeoCombiTrans(-15.275,0.,3.9,GetRot("rot2")));
139     GetVol("NDBI")->AddNode(GetVol("NDTU"),22,new TGeoCombiTrans(-12.925,0.,3.9,GetRot("rot2")));
140     GetVol("NDBI")->AddNode(GetVol("NDTU"),23,new TGeoCombiTrans(-10.575,0.,3.9,GetRot("rot2")));
141     GetVol("NDBI")->AddNode(GetVol("NDTU"),24,new TGeoCombiTrans(-8.225,0.,3.9,GetRot("rot2")));
142     GetVol("NDBI")->AddNode(GetVol("NDTU"),25,new TGeoCombiTrans(-5.875,0.,3.9,GetRot("rot2")));
143     GetVol("NDBI")->AddNode(GetVol("NDTU"),26,new TGeoCombiTrans(-3.525,0.,3.9,GetRot("rot2")));
144     GetVol("NDBI")->AddNode(GetVol("NDTU"),27,new TGeoCombiTrans(-1.175,0.,3.9,GetRot("rot2")));
145     GetVol("NDBI")->AddNode(GetVol("NDTU"),28,new TGeoCombiTrans(1.175,0.,3.9,GetRot("rot2")));
146     GetVol("NDBI")->AddNode(GetVol("NDTU"),29,new TGeoCombiTrans(3.525,0.,3.9,GetRot("rot2")));
147     GetVol("NDBI")->AddNode(GetVol("NDTU"),30,new TGeoCombiTrans(5.875,0.,3.9,GetRot("rot2")));
148     GetVol("NDBI")->AddNode(GetVol("NDTU"),31,new TGeoCombiTrans(8.225,0.,3.9,GetRot("rot2")));
149     GetVol("NDBI")->AddNode(GetVol("NDTU"),32,new TGeoCombiTrans(10.575,0.,3.9,GetRot("rot2")));
150     GetVol("NDBI")->AddNode(GetVol("NDTU"),33,new TGeoCombiTrans(12.925,0.,3.9,GetRot("rot2")));
151     GetVol("NDBI")->AddNode(GetVol("NDTU"),34,new TGeoCombiTrans(15.275,0.,3.9,GetRot("rot2")));
152     GetVol("NDBI")->AddNode(GetVol("NDTU"),35,new TGeoCombiTrans(17.625,0.,3.9,GetRot("rot2")));
153     GetVol("NDBI")->AddNode(GetVol("NDTU"),36,new TGeoCombiTrans(19.975,0.,3.9,GetRot("rot2")));
154     GetVol("NDBI")->AddNode(GetVol("NDPB"),1,new TGeoTranslation(0.,0.,-5.875));
155     GetVol("NDBI")->AddNode(GetVol("NDPB"),2,new TGeoTranslation(0.,0.,-3.875));
156     GetVol("NDBI")->AddNode(GetVol("NDPB"),3,new TGeoTranslation(0.,0.,-1.875));
157     GetVol("NDBI")->AddNode(GetVol("NDPB"),4,new TGeoTranslation(0.,0.,1.975));
158     GetVol("NDBI")->AddNode(GetVol("NDPB"),5,new TGeoTranslation(0.,0.,5.825));
159     GetVol("NDBO")->AddNode(GetVol("NDCO"),1,new TGeoTranslation(0.,0.,7.));
160     GetVol("NDCO")->AddNode(GetVol("NDCM"),1,new TGeoTranslation(0.,-16.95,0.175));
161     GetVol("NDCO")->AddNode(GetVol("NDCM"),2,new TGeoTranslation(0.,16.95,0.175));
162     GetVol("NDCO")->AddNode(GetVol("NDCI"),1,new TGeoTranslation(0.,0.,0.175));
163     GetVol("NDCO")->AddNode(GetVol("NDCE"),1,new TGeoTranslation(0.,-25.475,0.175));
164     GetVol("NDCO")->AddNode(GetVol("NDCE"),2,new TGeoTranslation(0.,25.475,0.175));
165     GetVol("NDCO")->AddNode(GetVol("NDSM"),1,new TGeoTranslation(-23.6,-14.6,0.175));
166     GetVol("NDCO")->AddNode(GetVol("NDSM"),2,new TGeoTranslation(23.6,-14.6,0.175));
167     GetVol("NDCO")->AddNode(GetVol("NDSM"),3,new TGeoTranslation(-23.6,14.6,0.175));
168     GetVol("NDCO")->AddNode(GetVol("NDSM"),4,new TGeoTranslation(23.6,14.6,0.175));
169     GetVol("NDCO")->AddNode(GetVol("NDSI"),1,new TGeoTranslation(-23.6,0.,0.175));
170     GetVol("NDCO")->AddNode(GetVol("NDSI"),2,new TGeoTranslation(23.6,0.,0.175));
171     GetVol("NDCO")->AddNode(GetVol("NDSE"),1,new TGeoTranslation(-20.4,-23.65,0.175));
172     GetVol("NDCO")->AddNode(GetVol("NDSE"),2,new TGeoTranslation(20.4,-23.65,0.175));
173     GetVol("NDCO")->AddNode(GetVol("NDSE"),3,new TGeoTranslation(-20.4,23.65,0.175));
174     GetVol("NDCO")->AddNode(GetVol("NDSE"),4,new TGeoTranslation(20.4,23.65,0.175));
175     GetVol("NDBO")->AddNode(GetVol("NDBS"),1,new TGeoTranslation(0.,-25.725,-0.5));
176     GetVol("NDBS")->AddNode(GetVol("NDSS"),1,gGeoIdentity);
177     GetVol("NDBO")->AddNode(GetVol("NDBS"),2,new TGeoTranslation(0.,25.725,-0.5));
178    
179    
180     SetMotherProp(GetVol("NDBO"),1,new TGeoTranslation(0.,0.,-6.289));
181    
182     };
183    
184     void PamVMCDetND::DefineCuts(){
185    
186     TString s ="ALUMINIUM"; // default GPAMELA parameters
187     if (GetMed(s) && !GetCC(s))
188     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
189     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
190     s ="N2 GAS";
191     if (GetMed(s) && !GetCC(s))
192     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
193     0.001, 0.01, 1., 1., 1., 0., 0., 1., 1., 4., 1., 1., 2., 1.));
194     s = "IRON"; //default GPAMELA parameters
195     if (GetMed(s) && !GetCC(s))
196     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
197     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
198     s = "CADMIUM"; //default GPAMELA parameters
199     if (GetMed(s) && !GetCC(s))
200     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
201     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
202     s = "He3";
203     if (GetMed(s) && !GetCC(s)) //default GPAMELA parameters
204     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
205     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
206     s = "POLYETHYLENE"; //default GPAMELA parameters
207     if (GetMed(s) && !GetCC(s))
208     SetCC(s, new pCutControl(GetMedID(s), 0.0001, 0.001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001,
209     0.001, 0.01, 1., 1., 1., 0., 1., 1., 1., 4., 1., 1., 1., 1.));
210     }
211    

  ViewVC Help
Powered by ViewVC 1.1.23