]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STRUCT/AliDIPOv1.cxx
Reoved useless file.
[u/mrichter/AliRoot.git] / STRUCT / AliDIPOv1.cxx
1 ///////////////////////////////////////////////////////////////////////////////
2 //                                                                           //
3 //  Magnetic Dipole version 1                                                //
4 //                                                                           //
5 //Begin_Html
6 /*
7 <img src="picts/AliDIPOv1Class.gif">
8 </pre>
9 <br clear=left>
10 <font size=+2 color=red>
11 <p>The responsible person for this module is
12 <a href="mailto:andreas.morsch@cern.ch">Andreas Morsch</a>.
13 </font>
14 <pre>
15 */
16 //End_Html
17 //                                                                           //
18 //                                                                           //
19 ///////////////////////////////////////////////////////////////////////////////
20
21 #include "AliDIPOv1.h"
22 #include "AliRun.h"
23  
24 ClassImp(AliDIPOv1)
25  
26 //_____________________________________________________________________________
27 AliDIPOv1::AliDIPOv1()
28 {
29   //
30   // Default constructor for the magnetic dipole version 1
31   //
32 }
33  
34 //_____________________________________________________________________________
35 AliDIPOv1::AliDIPOv1(const char *name, const char *title)
36        : AliDIPO(name,title)
37 {
38   //
39   // Standard constructor for magnetic dipole version 1
40   //
41   SetMarkerColor(7);
42   SetMarkerStyle(2);
43   SetMarkerSize(0.4);
44 }
45  
46 //_____________________________________________________________________________
47 void AliDIPOv1::CreateGeometry()
48 {
49   //
50   // Creation of the geometry of the magnetic DIPOLE version 1
51   //
52   //Begin_Html
53   /*
54     <img src="picts/AliDIPOv1Tree.gif">
55   */
56   //End_Html
57   //Begin_Html
58   /*
59     <img src="picts/AliDIPOv1.gif">
60   */
61   //End_Html
62
63   AliMC* pMC = AliMC::GetMC();
64   
65   Float_t par[5];
66   
67   Int_t *idtmed = gAlice->Idtmed();
68   
69   //abs_d   = 90.;  // DEFINES DRIFT LENGTH 
70   //z_nose  = 102.;
71   //z_cone  = 285.;
72   //theta1  = 24.;  // 1. angle defining the front absorber 
73   //theta2  = 5.;   // 2. angle defining the front absorbe 
74   //acc_max = 9.;   // ANGLE POLAIRE MAXIMUM 
75   //acc_min = 2.;   // ANGLE POLAIRE MINIMUM DE DETECTION 
76   //abs_l   = 503.;
77   //d_steel = 1.;   // THICKNESS OF STEEL SUPPORT 
78   //d_poly  = 7.5;
79   //d_pb    = 2.5;
80   //abs_cc  = 315.; // DEFINES LENGTH OF CARBON 
81   //abs_c   = 358.;
82   //abs_s   = 150.; // DEFINES W-SHIELD LENGTH 
83   //abs_n   = 80.;  // START OF NOSE 
84   //r_abs   = 4.;
85   //r_pb    = .1;
86   //epsilon = .01;
87   //theta_r = 3.;
88   //d_rear  = 35.;
89   //theta_open = .75;
90   
91   //z_l3      = 700.;
92   //zmag_in   = 725.;
93   //zmag_out  = 1225.;
94   //zfil_in   = 1471.;
95   //zfil_out  = 1591.;
96   //zcon_in   = 1900.;
97   //zcon_out  = 2e3;
98   //zcone_e   = 859.0875;
99   //spec_l    = 1800.;
100   //zplug_in  = 1780.;
101   //zplug_out = 1900.;
102
103   //     Chamber position 
104   //      CZ1=515.5 
105   //cz1 = 511.;
106   //cz2 = 686.;
107   //cz3 = 971.;
108   //cz4 = 1245.;
109   //cz5 = 1445.;
110   //cz6 = 1610.;
111   //cz7 = 1710.;
112   
113   
114   //       DIPOLE MAGNET 
115   par[0] = 0.;
116   par[1] = 280.;
117   par[2] = 250.;
118   pMC->Gsvolu("DDIP", "TUBE", idtmed[1801], par, 3);
119   
120   //       COIL 
121   par[0] = 250.;
122   par[1] = 125.;
123   par[2] = 165.;
124   par[3] = 204.;
125   par[4] = 244.;
126   
127   pMC->Gsvolu("DIPC", "CONE", idtmed[1810], par, 5);
128   pMC->Gspos("DIPC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
129   par[0] = 250.;
130   par[1] = 115.;
131   par[2] = 125.;
132   par[3] = 194.;
133   par[4] = 204.;
134   pMC->Gsvolu("DIIC", "CONE", idtmed[1807], par, 5);
135   pMC->Gspos("DIIC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
136   
137   //       YOKE 
138   par[0] = 250.;
139   par[1] = 165.;
140   par[2] = 195.;
141   par[3] = 244.;
142   par[4] = 274.;
143   
144   pMC->Gsvolu("DIPY", "CONE", idtmed[1834], par, 5);
145   pMC->Gspos("DIPY", 1, "DDIP", 0., 0., 0., 0, "ONLY");
146   pMC->Gspos("DDIP", 1, "ALIC", 0., 0., 725.+250, 0, "ONLY");
147 }
148
149 //_____________________________________________________________________________
150 void AliDIPOv1::DrawModule()
151 {
152   //
153   // Draw a shaded view of the muon absorber
154   //
155
156   AliMC* pMC = AliMC::GetMC();
157   
158   // Set everything unseen
159   pMC->Gsatt("*", "seen", -1);
160   // 
161   // Set ALIC mother transparent
162   pMC->Gsatt("ALIC","SEEN",0);
163   //
164   // Set the volumes visible
165   pMC->Gsatt("DDIP","seen",1);
166   pMC->Gsatt("DIPC","seen",1);
167   pMC->Gsatt("DIIC","seen",1);
168   pMC->Gsatt("DIPY","seen",1);
169   //
170   pMC->Gdopt("hide", "on");
171   pMC->Gdopt("shad", "on");
172   pMC->Gsatt("*", "fill", 7);
173   pMC->SetClipBox(".");
174   pMC->SetClipBox(".");
175   pMC->DefaultRange();
176   pMC->Gdraw("alic", 30, 30, 0, 17, 13.5, .019, .019);
177   pMC->Gdhead(1111, "Magnetic Dipole Version 1");
178   pMC->Gdman(16, 4, "MAN");
179 }
180
181 //_____________________________________________________________________________
182 void AliDIPOv1::CreateMaterials()
183 {
184   //
185   // Create Materials for Dipole Magnet version 1
186   //
187   
188   Int_t ISXFLD   = gAlice->Field()->Integ();
189   Float_t SXMGMX = gAlice->Field()->Max();
190   
191   Float_t asteel[4] = { 55.847,51.9961,58.6934,28.0855 };
192   Float_t zsteel[4] = { 26.,24.,28.,14. };
193   Float_t wsteel[4] = { .715,.18,.1,.005 };
194   Float_t epsil, stmin, deemax, tmaxfd, stemax;
195   
196   //     STEEL 
197   
198   
199   // --- Define the various materials for GEANT --- 
200   AliMaterial(1809, "ALUMINIUM$", 26.98, 13., 2.7, 8.9, 37.2);
201   AliMaterial(1815, "AIR$      ", 14.61, 7.3, .001205, 30423.24, 67500);
202   AliMaterial(1810, "IRON$     ", 55.85, 26., 7.87, 0, 17.1);
203   AliMaterial(1816, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
204   AliMixture(1824, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
205   
206   // **************** 
207   //     Defines tracking media parameters. 
208   //     Les valeurs sont commentees pour laisser le defaut 
209   //     a GEANT (version 3-21, page CONS200), f.m. 
210   epsil  = .001; // Tracking precision, 
211   stemax = -1.;  // Maximum displacement for multiple scat 
212   tmaxfd = -20.; // Maximum angle due to field deflection 
213   deemax = -.3;  // Maximum fractional energy loss, DLS 
214   stmin  = -.8;
215   // *************** 
216   
217   //    Air 
218
219   AliMedium(1801, "AIR_DI_US         ", 1815, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
220   AliMedium(1802, "AIR_DI_US         ", 1815, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
221   AliMedium(1803, "AIR_L3_US         ", 1815, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
222   
223   //    Aluminum 
224   
225   AliMedium(1808, "ALU_DI_US         ", 1809, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
226   AliMedium(1811, "ALU_DI_SH         ", 1809, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
227   
228   //    Iron 
229   
230   AliMedium(1831, "FE_NF_US          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
231   AliMedium(1832, "FE_DI_US          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
232   AliMedium(1833, "FE_L3_US          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
233   AliMedium(1834, "FE_NF_SH          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
234   AliMedium(1835, "FE_DI_SH          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
235   AliMedium(1836, "FE_L3_SH          ", 1810, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
236   
237   //    Vacuum 
238   
239   AliMedium(1837, "VA_NF_US          ", 1816, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
240   AliMedium(1838, "VA_DI_US          ", 1816, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
241   AliMedium(1839, "VA_L3_US          ", 1816, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
242   
243   //    Steel 
244   
245   AliMedium(1875, "ST_L3_US          ", 1824, 0, ISXFLD, SXMGMX, tmaxfd, stemax, deemax, epsil, stmin);
246 }
247