* provided "as is" without express or implied warranty. *
**************************************************************************/
-/*
-$Log$
-Revision 1.17 2001/06/21 11:59:25 morsch
-Some more details in compensator geometry.
-
-Revision 1.16 2001/06/20 16:07:08 morsch
-Compensator dipole MBWMD (MCB@SPS) added.
-
-Revision 1.15 2001/03/16 15:34:37 morsch
-Mothervolume defined MANY because overlap with station 3 mothervolume not avoidable (A. de Falco)
-
-Revision 1.14 2000/12/21 16:37:23 morsch
-Use Al for coil and cable material. The materials used before cause the dipole to
-have hydrogene on the outer surface leading to unrealistic gamma rates due to
-n-capture.
-
-Revision 1.13 2000/10/02 21:28:15 fca
-Removal of useless dependecies via forward declarations
-
-Revision 1.12 2000/06/20 10:53:01 morsch
-Volume placed outside mother volume (DDIP) corrected (Galina Chabratova)
-
-Revision 1.11 2000/06/11 12:33:46 morsch
-Coding rule violations corrected
-
-Revision 1.10 2000/06/09 19:32:56 morsch
-New detailed and corrected version from Galina Chabratova
-
-Revision 1.9 2000/04/27 09:29:53 fca
-Reverting to version 1.6.2
-
-Revision 1.6.2.1 1999/12/03 16:38:51 fca
-Correct overlap in magnet
-
-Revision 1.6 1999/09/29 09:24:30 fca
-Introduction of the Copyright and cvs Log
-
-*/
+/* $Id$ */
///////////////////////////////////////////////////////////////////////////////
// //
// //
// //
+#include <TVirtualMC.h>
+
+#include "AliConst.h"
#include "AliDIPOv2.h"
-#include "AliRun.h"
-#include "AliMC.h"
#include "AliMagF.h"
-#include "AliConst.h"
+#include "AliRun.h"
ClassImp(AliDIPOv2)
// Creation of the geometry of the magnetic DIPOLE version 2
//
- // AliMC* gMC = AliMC::GetMC();
-
Float_t cpar[5], tpar[18], ypar[12];
Float_t dz, dx, dy;
Int_t idrotm[1899];
tpar[11] = 527.34;
tpar[12] = 150.8+kZDipole;
- tpar[13] = 193.3;
+ tpar[13] = 182.4;
tpar[14] = 527.34;
//
- tpar[15] = 250.55+kZDipole;
- tpar[16] = 193.3;
+ tpar[15] = 260.55+kZDipole;
+ tpar[16] = 182.4;
tpar[17] = 527.34;
gMC->Gspos("DY2 ", 1, "DDIP", dx, 0.0, dz+kZDipole, idrotm[1809], "ONLY");
gMC->Gspos("DY2 ", 2, "DDIP", -dx, 0.0, dz+kZDipole, idrotm[1810], "ONLY");
-
- gMC->Gspos("DDIP", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+
+ AliMatrix(idrotm[1811], 270., 0., 90., 90., 180., 0.);
+ gMC->Gspos("DDIP", 1, "ALIC", 0., 0., 0., idrotm[1811], "ONLY");
gMC->Gsatt("DDIP", "SEEN", 0);
// gMC->Gsatt("DC21", "SEEN", 0);
Int_t *idtmed = fIdtmed->GetArray()-1799;
Int_t idrotm[1899];
//
- Float_t pbox[3] = {62.5, 62.5, 170.};
+ Float_t pbox[3] = {63., 63., 170.};
// Mother volumes
gMC->Gsvolu("DCM0", "BOX", idtmed[1814], pbox, 3);
gMC->Gspos("DCBA", 1, "DCM0", 0., -47.5 , 17.5, 0, "ONLY");
- gMC->Gspos("DCM0", 1, "ALIC", 0., -6.75, -975., 0, "ONLY");
+ AliMatrix(idrotm[1816], 270., 0., 90., 90., 180., 0.);
+ gMC->Gspos("DCM0", 1, "ALIC", 0., -6.75, 975., idrotm[1816], "ONLY");
}
//_____________________________________________________________________________
-void AliDIPOv2::DrawModule()
+void AliDIPOv2::DrawModule() const
{
//
// Draw a shaded view of the muon absorber
//
- AliMC* gMC = AliMC::GetMC();
-
// Set everything unseen
gMC->Gsatt("*", "seen", -1);
//
Int_t isxfld = gAlice->Field()->Integ();
Float_t sxmgmx = gAlice->Field()->Max();
+
Float_t asteel[4] = { 55.847,51.9961,58.6934,28.0855 };
Float_t zsteel[4] = { 26.,24.,28.,14. };
Float_t wsteel[4] = { .715,.18,.1,.005 };
Float_t zG10[5] = { 1.,6.,8.,14.,35. };
Float_t wG10[5] = { .02089,.22338,.28493,.41342,.05738 };
- Float_t aAlCon[2] = { 14.61, 26.98};
- Float_t zAlCon[2] = { 7.3, 13.};
- Float_t wAlCon[2] = { .0004,.9996};
+ // AIR
+
+ Float_t aAir[4]={12.0107,14.0067,15.9994,39.948};
+ Float_t zAir[4]={6.,7.,8.,18.};
+ Float_t wAir[4]={0.000124,0.755267,0.231781,0.012827};
+ Float_t dAir = 1.20479E-3;
+ Float_t dAir1 = 1.20479E-10;
Float_t epsil, stmin, deemax, tmaxfd, stemax;
AliMaterial(17, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
AliMaterial(37, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
AliMaterial(57, "COPPER$ ", 63.55, 29., 8.96, 1.43, 15.1);
- // Air
- AliMaterial(15, "AIR$ ", 14.61, 7.3, .001205, 30423.24, 67500);
- AliMaterial(35, "AIR$ ", 14.61, 7.3, .001205, 30423.24, 67500);
- AliMaterial(55, "AIR$ ", 14.61, 7.3, .001205, 30423.24, 67500);
-
+ // Air
+ AliMixture(15, "AIR$ ", aAir, zAir, dAir, 4, wAir);
+ AliMixture(35, "AIR$ ", aAir, zAir, dAir, 4, wAir);
+ AliMixture(55, "AIR$ ", aAir, zAir, dAir, 4, wAir);
// Vacuum
- AliMaterial(16, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
- AliMaterial(36, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
- AliMaterial(56, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
+ AliMixture(16, "VACUUM$ ", aAir, zAir, dAir1, 4, wAir);
+ AliMixture(36, "VACUUM$ ", aAir, zAir, dAir1, 4, wAir);
+ AliMixture(56, "VACUUM$ ", aAir, zAir, dAir1, 4, wAir);
// stainless Steel
AliMixture(19, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
AliMixture(31, "G10$", aG10, zG10, 1.7, 5, wG10);
AliMixture(51, "G10$", aG10, zG10, 1.7, 5, wG10);
- //Aluminium Conductor
- AliMixture(12, "AlCond$", aAlCon, zAlCon, 1.3506, 2, wAlCon);
- AliMixture(32, "AlCond$", aAlCon, zAlCon, 1.3506, 2, wAlCon);
- AliMixture(52, "AlCond$", aAlCon, zAlCon, 1.3506, 2, wAlCon);
-
// ****************
// Defines tracking media parameters.
// Les valeurs sont commentees pour laisser le defaut
AliMedium(11, "G10_C0 ", 11, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
AliMedium(31, "G10_C1 ", 31, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
AliMedium(51, "G10_C2 ", 51, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
-
- //Aluminium Contactor
- AliMedium(12, "AlCond_C0 ", 12, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(32, "AlCond_C1 ", 32, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
- AliMedium(52, "AlCond_C2 ", 52, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
-
//
// Copper
AliMedium(17, "Cu_C0 ", 17, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);