Use gMC and not pMC everywhere
authorfca <fca@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 25 Jun 1999 13:31:10 +0000 (13:31 +0000)
committerfca <fca@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 25 Jun 1999 13:31:10 +0000 (13:31 +0000)
62 files changed:
CASTOR/AliCASTOR.cxx
EVGEN/AliGenExtFile.cxx
EVGEN/AliGenFLUKAsource.cxx
EVGEN/AliGenMUONlib.cxx
EVGEN/AliGenParam.cxx
EVGEN/AliGenPythia.cxx
EVGEN/AliGenScan.cxx
EVGEN/AliPythia.cxx
EVGEN/AliSimpleGen.cxx
FMD/AliFMD.cxx
FMD/AliFMDv0.cxx
FMD/AliFMDv1.cxx
ITS/AliITS.cxx
ITS/AliITSv0.cxx
ITS/AliITSv1.cxx
ITS/AliITSv3.cxx
ITS/AliITSv4.cxx
ITS/AliITSv5.cxx
MUON/AliMUON.cxx
MUON/AliMUONv0.cxx
PHOS/AliPHOS.cxx
PHOS/AliPHOSv0.cxx
PHOS/AliPHOSv1.cxx
PHOS/AliPHOSv2.cxx
PHOS/AliPHOSv3.cxx
PMD/AliPMDv0.cxx
PMD/AliPMDv1.cxx
PMD/AliPMDv2.cxx
RICH/AliRICH.cxx
STEER/AliLego.cxx
STEER/AliModule.cxx
STEER/AliRun.cxx
STEER/AliRun.h
STRUCT/AliABSO.cxx
STRUCT/AliBODY.cxx
STRUCT/AliDIPOv1.cxx
STRUCT/AliDIPOv2.cxx
STRUCT/AliFRAMEv0.cxx
STRUCT/AliFRAMEv1.cxx
STRUCT/AliHALL.cxx
STRUCT/AliMAG.cxx
STRUCT/AliPIPEv0.cxx
STRUCT/AliPIPEv1.cxx
STRUCT/AliPIPEv3.cxx
STRUCT/AliSHIL.cxx
TGeant3/THIGZ.cxx
TGeant3/TPaveTree.cxx
TGeant3/gucode.cxx
TOF/AliTOF.cxx
TOF/AliTOFv0.cxx
TOF/AliTOFv1.cxx
TOF/AliTOFv2.cxx
TOF/AliTOFv3.cxx
TPC/AliTPC.cxx
TPC/AliTPCv0.cxx
TPC/AliTPCv1.cxx
TPC/AliTPCv2.cxx
TRD/AliTRD.cxx
TRD/AliTRDv0.cxx
TRD/AliTRDv1.cxx
TRD/AliTRDv2.cxx
ZDC/AliZDC.cxx

index ea8b1fd..7740b96 100644 (file)
@@ -154,7 +154,6 @@ void AliCASTORv1::CreateGeometry()
   //   28 March 1997   23 February 1998              Aris L. S. Angelis   * 
   // >--------------------------------------------------------------------<* 
   
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t dhad[11], dcal[3], beta, doct[11], alfa1, alfa2, fact1, fact2,fact3;
   Float_t dclha[3], dcoha[3], dclem[3], dbxha[3], dcoem[3], dcalt[5], dcalv[5], dbxem[3];
@@ -348,8 +347,8 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("OCTA", "PGON", idtmed[fOdAbsorber - 1], doct, 10);
-  pMC->Gsdvn("OCT ", "OCTA", 8, 2);
+  gMC->Gsvolu("OCTA", "PGON", idtmed[fOdAbsorber - 1], doct, 10);
+  gMC->Gsdvn("OCT ", "OCTA", 8, 2);
   // absorber material. 
   // **> Construct the E-M section volume. 
   dem[0]  = doctem / 2.;      // DeltaZ'/2 
@@ -373,7 +372,7 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("EM  ", "TRAP", idtmed[fOdAbsorber - 1], dem, 11);
+  gMC->Gsvolu("EM  ", "TRAP", idtmed[fOdAbsorber - 1], dem, 11);
   // absorber material. 
   // **> Construct the Hadronic section volume. 
   // Fill with s 
@@ -398,14 +397,14 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("HAD ", "TRAP", idtmed[fOdAbsorber - 1], dhad, 11); // absorber material. 
+  gMC->Gsvolu("HAD ", "TRAP", idtmed[fOdAbsorber - 1], dhad, 11); // absorber material. 
   // **> Rotation matrix to rotate fibres verticaly to fit into holes. 
   // Fill with 
   AliMatrix(idrotm[0], 90., 0., 180., 0., 90., 90.);
   // **> Internal structure of the EM section starts here.  <--- 
   // **> Construct one sampling module 
-  pMC->Gsdvn("SLEM", "EM  ", fLayersEM, 3);
-  pMC->Gsatt("SLEM", "SEEN", 0);
+  gMC->Gsdvn("SLEM", "EM  ", fLayersEM, 3);
+  gMC->Gsatt("SLEM", "SEEN", 0);
   // **> Construct the (imaginary) rectangular box embedding the fibres 
   // **> Fill with air, make it invisible on the drawings. 
   dbxem[0] = xxmdhi / 2.;
@@ -418,19 +417,19 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("BXEM", "BOX ", idtmed[1501], dbxem, 3);
-  pMC->Gsatt("BXEM", "SEEN", 0);
+  gMC->Gsvolu("BXEM", "BOX ", idtmed[1501], dbxem, 3);
+  gMC->Gsatt("BXEM", "SEEN", 0);
   // **> Divide along Z to obtain one layer 
-  pMC->Gsdvn("RWEM", "BXEM", 2, 3);
-  pMC->Gsatt("RWEM", "SEEN", 0);
+  gMC->Gsdvn("RWEM", "BXEM", 2, 3);
+  gMC->Gsatt("RWEM", "SEEN", 0);
   // **> Divide along X' to accomodate the maximum number of individual 
   //**> fibres packed along X', make the divisions invisible on the drawings.
   nfx = Int_t(xxmdhi / .045);
   if (debugFlag > 0) {
     printf(" NfxEM = %d\n",nfx);
   }
-  pMC->Gsdvn("FXEM", "RWEM", nfx, 1);
-  pMC->Gsatt("FXEM", "SEEN", 0);
+  gMC->Gsdvn("FXEM", "RWEM", nfx, 1);
+  gMC->Gsatt("FXEM", "SEEN", 0);
   // **> Construct the fiber cladding 
   dclem[0] = 0.;
   dclem[1] = kDiamCladding/2;
@@ -442,8 +441,8 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("CLEM", "TUBE", idtmed[fOdCladding - 1], dclem,3);
-  pMC->Gsatt("CLEM", "SEEN", 0);
+  gMC->Gsvolu("CLEM", "TUBE", idtmed[fOdCladding - 1], dclem,3);
+  gMC->Gsatt("CLEM", "SEEN", 0);
   //**> Construct the cylindrical volume for a fibre core in the EM section.
   //**> Fill with selected fibre material, make it invisible on the drawings.
   dcoem[0] = 0.;
@@ -456,30 +455,30 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("COEM", "TUBE", idtmed[fOdFiber - 1], dcoem,3);
-  pMC->Gsatt("COEM", "SEEN", 0);
+  gMC->Gsvolu("COEM", "TUBE", idtmed[fOdFiber - 1], dcoem,3);
+  gMC->Gsatt("COEM", "SEEN", 0);
   // **> Position the volumes 
   // **> Put the air section inside one sampling module 
   // **> Use MANY to obtain clipping of protruding edges. 
   xp = 0.;
   zp = dlayem / 2. - 0.5*kFibersEM*kDiamCladding;
   yp = zp * TMath::Tan(thecen);
-  pMC->Gspos("BXEM", 1, "SLEM", xp, yp, zp, 0, "MANY");
+  gMC->Gspos("BXEM", 1, "SLEM", xp, yp, zp, 0, "MANY");
   // **> Place the core fibre in the clad 
   xp = 0.;
   yp = 0.;
   zp = 0.;
-  pMC->Gspos("COEM", 1, "CLEM", xp, yp, zp, 0, "MANY");
+  gMC->Gspos("COEM", 1, "CLEM", xp, yp, zp, 0, "MANY");
   // **> Put the fiber in its air box 
-  pMC->Gspos("CLEM", 1, "FXEM", xp, yp, zp, idrotm[0], "MANY");
+  gMC->Gspos("CLEM", 1, "FXEM", xp, yp, zp, idrotm[0], "MANY");
   // **> Internal structure of the Hadronic section starts here.  <--- 
-  pMC->Gsdvn("SLHA", "HAD ", fLayersHad, 3);
-  pMC->Gsatt("SLHA", "SEEN", 0);
+  gMC->Gsdvn("SLHA", "HAD ", fLayersHad, 3);
+  gMC->Gsatt("SLHA", "SEEN", 0);
   // **> Construct the air section where the fibers are 
   dhad[0] = 0.5*kFibersEM*kDiamCladding;
-  pMC->Gsvolu("AIHA", "TRAP", idtmed[1501], dhad, 11);
+  gMC->Gsvolu("AIHA", "TRAP", idtmed[1501], dhad, 11);
   // **> Divide along z in the appropriate number of layers 
-  pMC->Gsdvn("SAHA", "AIHA", 4, 3);
+  gMC->Gsdvn("SAHA", "AIHA", 4, 3);
   //**> Construct the (imaginary) rectangular box embedding one lauer of fibres
   // **> Fill with air, make it invisible on the drawings. 
   dbxha[0] = xxuthi / 2.;
@@ -492,19 +491,19 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("BXHA", "BOX ", idtmed[1501], dbxha, 3);
-  pMC->Gsatt("BXHA", "SEEN", 0);
+  gMC->Gsvolu("BXHA", "BOX ", idtmed[1501], dbxha, 3);
+  gMC->Gsatt("BXHA", "SEEN", 0);
   // **> Divide along Z to obtain one layer 
-  pMC->Gsdvn("RWHA", "BXHA", 4, 3);
-  pMC->Gsatt("RWHA", "SEEN", 0);
+  gMC->Gsdvn("RWHA", "BXHA", 4, 3);
+  gMC->Gsatt("RWHA", "SEEN", 0);
   // **> Divide along X' to accomodate the maximum number of individual 
   //**> fibres packed along X', make the divisions invisible on the drawings.
   nfx = Int_t(xxuthi / .045);
   if (debugFlag > 0) {
     printf(" NfxHad = %d\n",nfx);
   }
-  pMC->Gsdvn("FXHA", "RWHA", nfx, 1);
-  pMC->Gsatt("FXHA", "SEEN", 0);
+  gMC->Gsdvn("FXHA", "RWHA", nfx, 1);
+  gMC->Gsatt("FXHA", "SEEN", 0);
   // **> Construct one fiber cladding 
   dclha[0] = 0.;
   dclha[1] = 0.5*kDiamCladding;
@@ -516,8 +515,8 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("CLHA", "TUBE", idtmed[fOdCladding - 1], dclha,3);
-  pMC->Gsatt("CLHA", "SEEN", 0);
+  gMC->Gsvolu("CLHA", "TUBE", idtmed[fOdCladding - 1], dclha,3);
+  gMC->Gsatt("CLHA", "SEEN", 0);
   //**> Construct the cylindrical volume for a fibre core in the Had section.
   //**> Fill with selected fibre material, make it invisible on the drawings.
   dcoha[0] = 0.;
@@ -530,22 +529,22 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("COHA", "TUBE", idtmed[fOdFiber - 1], dcoha,3);
-  pMC->Gsatt("COHA", "SEEN", 0);
+  gMC->Gsvolu("COHA", "TUBE", idtmed[fOdFiber - 1], dcoha,3);
+  gMC->Gsatt("COHA", "SEEN", 0);
   // **> Position the volumes 
   // **> Put the air section inside one sampling module 
   // **> Use MANY to obtain clipping of protruding edges. 
   xp = 0.;
   zp = dlayha / 2. - 0.5*kFibersHad*kDiamCladding;
   yp = zp * TMath::Tan(thecen);
-  pMC->Gspos("BXHA", 1, "SLHA", xp, yp, zp, 0, "MANY");
+  gMC->Gspos("BXHA", 1, "SLHA", xp, yp, zp, 0, "MANY");
   // **> Place the core fibre in the clad 
   xp = 0.;
   yp = 0.;
   zp = 0.;
-  pMC->Gspos("COHA", 1, "CLHA", xp, yp, zp, 0, "MANY");
+  gMC->Gspos("COHA", 1, "CLHA", xp, yp, zp, 0, "MANY");
   // **> Place the fibre in its air box 
-  pMC->Gspos("CLHA", 1, "FXHA", xp, yp, zp, idrotm[0], "MANY");
+  gMC->Gspos("CLHA", 1, "FXHA", xp, yp, zp, idrotm[0], "MANY");
   // **> Rotation matrices for consecutive calorimeter octants 
   // **> filling the imaginary box. 
   AliMatrix(idrotm[1], 90., -90., 45., 0., 45., 180.);
@@ -555,11 +554,11 @@ void AliCASTORv1::CreateGeometry()
   zp = doct[7] - (faceut * TMath::Cos(beta) + doctha * fact3) * .5;
   yp = 0.;
   xp = rzlow + (rzhig - rzlow) * .5 * (zp - doct[4]) / doct[7];
-  pMC->Gspos("HAD ", 1, "OCT ", xp, yp, zp, idrotm[1], "ONLY");
+  gMC->Gspos("HAD ", 1, "OCT ", xp, yp, zp, idrotm[1], "ONLY");
   yp = 0.;
   zp = doct[7] - faceut * TMath::Cos(beta) * .5 - doctha * fact3 - doctem * fact3 * .5;
   xp = rzlow + (rzhig - rzlow) * .5 * (zp - doct[4]) / doct[7];
-  pMC->Gspos("EM  ", 1, "OCT ", xp, yp, zp, idrotm[1], "ONLY");
+  gMC->Gspos("EM  ", 1, "OCT ", xp, yp, zp, idrotm[1], "ONLY");
   // **> An imaginary box to hold the complete calorimeter. 
   dcal[0] = (faceut + zendha * fact2) * TMath::Sin(beta);
   dcal[1] = dcal[0];
@@ -571,7 +570,7 @@ void AliCASTORv1::CreateGeometry()
     }
     printf("   \n");
   }
-  pMC->Gsvolu("CAL ", "BOX ", idtmed[1501], dcal, 3);
+  gMC->Gsvolu("CAL ", "BOX ", idtmed[1501], dcal, 3);
   // Fill with air 
   rinbeg = TMath::Tan(alfa2) * kZbegem;
   rutbeg = TMath::Tan(alfa1) * kZbegem;
@@ -593,7 +592,7 @@ void AliCASTORv1::CreateGeometry()
   if (debugFlag > 0) {
     printf(" \n");
   }
-  pMC->Gspos("OCTA", 1, "CAL ", 0., 0., 0., 0, "ONLY");
+  gMC->Gspos("OCTA", 1, "CAL ", 0., 0., 0., 0, "ONLY");
   //**> Construct the narrow stainless steel conical beam tube traversing the
   // **> calorimeter and its vacuum filling:  WallThickness = 0.1 cm, 
   // **> Router = touching the inner side of the calorimeter, 
@@ -608,15 +607,15 @@ void AliCASTORv1::CreateGeometry()
   dcalv[1] = 0.;
   dcalv[4] = dcalt[3];
   dcalv[3] = 0.;
-  pMC->Gsvolu("CALT", "CONE", idtmed[1506], dcalt, 5);
+  gMC->Gsvolu("CALT", "CONE", idtmed[1506], dcalt, 5);
   // Fe (steel a 
-  pMC->Gsvolu("CALV", "CONE", idtmed[1500], dcalv, 5);
+  gMC->Gsvolu("CALV", "CONE", idtmed[1500], dcalv, 5);
   // Vacuum. 
-  pMC->Gsatt("CALV", "SEEN", 0);
+  gMC->Gsatt("CALV", "SEEN", 0);
   // **> Position at centre of calorimeter box. 
   zp = 0.;
-  pMC->Gspos("CALT", 1, "CAL ", 0., 0., zp, 0, "ONLY");
-  pMC->Gspos("CALV", 1, "CAL ", 0., 0., zp, 0, "ONLY");
+  gMC->Gspos("CALT", 1, "CAL ", 0., 0., zp, 0, "ONLY");
+  gMC->Gspos("CALV", 1, "CAL ", 0., 0., zp, 0, "ONLY");
   if (debugFlag > 0) {
     printf(" Dcalt,Zp,-/+ = ");
     for (i = 1; i <= 5; ++i) {
@@ -638,7 +637,7 @@ void AliCASTORv1::CreateGeometry()
   // -X theta and phi w.r.t. to box XYZ. 
   //  Y theta and phi w.r.t. to box XYZ. 
   // -Z theta and phi w.r.t. to box XYZ. 
-  pMC->Gspos("CAL ", 1, "ALIC", xp, yp, -zp, idrotm[2], "ONLY");
+  gMC->Gspos("CAL ", 1, "ALIC", xp, yp, -zp, idrotm[2], "ONLY");
   if (debugFlag > 0) {
     printf(" Dcal,Zp,-/+ = ");
     for (i = 1; i <= 3; ++i) {
@@ -655,32 +654,31 @@ void AliCASTORv1::DrawModule()
   // Draw a shaded view of CASTOR version 1
   //
 
-  AliMC* pMC = AliMC::GetMC();
   
-  pMC->Gsatt("*", "seen", -1);
-  pMC->Gsatt("alic", "seen", 0);
+  gMC->Gsatt("*", "seen", -1);
+  gMC->Gsatt("alic", "seen", 0);
   //
   // Set visibility of elements
-  pMC->Gsatt("OCTA","seen",0);
-  pMC->Gsatt("EM  ","seen",0);
-  pMC->Gsatt("HAD ","seen",0);
-  pMC->Gsatt("CAL ","seen",0);
-  pMC->Gsatt("CALT","seen",1);
-  pMC->Gsatt("OCT ","seen",0);
-  pMC->Gsatt("SLEM","seen",1);
-  pMC->Gsatt("SLHA","seen",1);
-  pMC->Gsatt("SAHA","seen",1);
+  gMC->Gsatt("OCTA","seen",0);
+  gMC->Gsatt("EM  ","seen",0);
+  gMC->Gsatt("HAD ","seen",0);
+  gMC->Gsatt("CAL ","seen",0);
+  gMC->Gsatt("CALT","seen",1);
+  gMC->Gsatt("OCT ","seen",0);
+  gMC->Gsatt("SLEM","seen",1);
+  gMC->Gsatt("SLHA","seen",1);
+  gMC->Gsatt("SAHA","seen",1);
   //
-  pMC->Gdopt("hide", "on");
-  pMC->Gdopt("shad", "on");
-  pMC->Gsatt("*", "fill", 7);
-  pMC->SetClipBox(".");
-  pMC->SetClipBox("*", 0, 20, -20, 20, -1900, -1700);
-  pMC->DefaultRange();
-  pMC->Gdraw("alic", 40, 30, 0, -191.5, -78, .19, .19);
-  pMC->Gdhead(1111, "CASTOR Version 1");
-  pMC->Gdman(15,-2, "MAN");
-  pMC->Gdopt("hide", "off");
+  gMC->Gdopt("hide", "on");
+  gMC->Gdopt("shad", "on");
+  gMC->Gsatt("*", "fill", 7);
+  gMC->SetClipBox(".");
+  gMC->SetClipBox("*", 0, 20, -20, 20, -1900, -1700);
+  gMC->DefaultRange();
+  gMC->Gdraw("alic", 40, 30, 0, -191.5, -78, .19, .19);
+  gMC->Gdhead(1111, "CASTOR Version 1");
+  gMC->Gdman(15,-2, "MAN");
+  gMC->Gdopt("hide", "off");
 }
 
 //_____________________________________________________________________________
@@ -691,7 +689,6 @@ void AliCASTORv1::CreateMaterials()
   //
   //   30 March 1997   27 November 1997              Aris L. S. Angelis   * 
   // >--------------------------------------------------------------------<* 
-  AliMC* pMC = AliMC::GetMC();
   Int_t   ISXFLD = gAlice->Field()->Integ();
   Float_t SXMGMX = gAlice->Field()->Max();
   
@@ -800,84 +797,84 @@ void AliCASTORv1::CreateMaterials()
   // **> Inside the absorber material, 
   for (kod = 1505; kod <= 1508; ++kod) {
     Int_t absorber = idtmed[kod - 1];
-    pMC->Gstpar(absorber, "CUTELE", cute);  // Allow beta >= 0.xx 
-    pMC->Gstpar(absorber, "CUTGAM", cutg);  // = 1.33 cutele. 
-    pMC->Gstpar(absorber, "CUTNEU", .01);   // Default. 
-    pMC->Gstpar(absorber, "CUTHAD", .01);   // Default. 
-    pMC->Gstpar(absorber, "CUTMUO", .01);   // Default. 
-    pMC->Gstpar(absorber, "BCUTE", cutg);   // = cutgam. 
-    pMC->Gstpar(absorber, "BCUTM", cutg);   // = cutgam. 
-    pMC->Gstpar(absorber, "DCUTE", cute);   // = cutele. 
-    pMC->Gstpar(absorber, "DCUTM", cute);   // = cutele. 
-    pMC->Gstpar(absorber, "PPCUTM", cutg);  // = 1.33 cutele. 
-    pMC->Gstpar(absorber, "DCAY", 1.);
-    pMC->Gstpar(absorber, "MULS", 1.);
-    pMC->Gstpar(absorber, "PFIS", 1.);
-    pMC->Gstpar(absorber, "MUNU", 1.);
-    pMC->Gstpar(absorber, "LOSS", 1.);
-    pMC->Gstpar(absorber, "PHOT", 1.);
-    pMC->Gstpar(absorber, "COMP", 1.);
-    pMC->Gstpar(absorber, "PAIR", 1.);
-    pMC->Gstpar(absorber, "BREM", 1.);
-    pMC->Gstpar(absorber, "RAYL", 1.);
-    pMC->Gstpar(absorber, "DRAY", 1.);
-    pMC->Gstpar(absorber, "ANNI", 1.);
-    pMC->Gstpar(absorber, "HADR", 1.);
-    pMC->Gstpar(absorber, "LABS", 1.);
+    gMC->Gstpar(absorber, "CUTELE", cute);  // Allow beta >= 0.xx 
+    gMC->Gstpar(absorber, "CUTGAM", cutg);  // = 1.33 cutele. 
+    gMC->Gstpar(absorber, "CUTNEU", .01);   // Default. 
+    gMC->Gstpar(absorber, "CUTHAD", .01);   // Default. 
+    gMC->Gstpar(absorber, "CUTMUO", .01);   // Default. 
+    gMC->Gstpar(absorber, "BCUTE", cutg);   // = cutgam. 
+    gMC->Gstpar(absorber, "BCUTM", cutg);   // = cutgam. 
+    gMC->Gstpar(absorber, "DCUTE", cute);   // = cutele. 
+    gMC->Gstpar(absorber, "DCUTM", cute);   // = cutele. 
+    gMC->Gstpar(absorber, "PPCUTM", cutg);  // = 1.33 cutele. 
+    gMC->Gstpar(absorber, "DCAY", 1.);
+    gMC->Gstpar(absorber, "MULS", 1.);
+    gMC->Gstpar(absorber, "PFIS", 1.);
+    gMC->Gstpar(absorber, "MUNU", 1.);
+    gMC->Gstpar(absorber, "LOSS", 1.);
+    gMC->Gstpar(absorber, "PHOT", 1.);
+    gMC->Gstpar(absorber, "COMP", 1.);
+    gMC->Gstpar(absorber, "PAIR", 1.);
+    gMC->Gstpar(absorber, "BREM", 1.);
+    gMC->Gstpar(absorber, "RAYL", 1.);
+    gMC->Gstpar(absorber, "DRAY", 1.);
+    gMC->Gstpar(absorber, "ANNI", 1.);
+    gMC->Gstpar(absorber, "HADR", 1.);
+    gMC->Gstpar(absorber, "LABS", 1.);
   }
   // **> Inside the cladding, 
   Int_t cladding = idtmed[fOdCladding - 1];
-  pMC->Gstpar(cladding, "CUTELE", cute);  // Allow beta >= 0.xx 
-  pMC->Gstpar(cladding, "CUTGAM", cutg);  // = 1.33 cutele. 
-  pMC->Gstpar(cladding, "CUTNEU", .01);   // Default. 
-  pMC->Gstpar(cladding, "CUTHAD", .01);   // Default. 
-  pMC->Gstpar(cladding, "CUTMUO", .01);   // Default. 
-  pMC->Gstpar(cladding, "BCUTE", cutg);   // = cutgam. 
-  pMC->Gstpar(cladding, "BCUTM", cutg);   // = cutgam. 
-  pMC->Gstpar(cladding, "DCUTE", cute);   // = cutele. 
-  pMC->Gstpar(cladding, "DCUTM", cute);   // = cutele. 
-  pMC->Gstpar(cladding, "PPCUTM", cutg);  // = 1.33 cutele. 
-  pMC->Gstpar(cladding, "DCAY", 1.);
-  pMC->Gstpar(cladding, "MULS", 1.);
-  pMC->Gstpar(cladding, "PFIS", 1.);
-  pMC->Gstpar(cladding, "MUNU", 1.);
-  pMC->Gstpar(cladding, "LOSS", 1.);
-  pMC->Gstpar(cladding, "PHOT", 1.);
-  pMC->Gstpar(cladding, "COMP", 1.);
-  pMC->Gstpar(cladding, "PAIR", 1.);
-  pMC->Gstpar(cladding, "BREM", 1.);
-  pMC->Gstpar(cladding, "RAYL", 1.);
-  pMC->Gstpar(cladding, "DRAY", 1.);
-  pMC->Gstpar(cladding, "ANNI", 1.);
-  pMC->Gstpar(cladding, "HADR", 1.);
-  pMC->Gstpar(cladding, "LABS", 1.);
+  gMC->Gstpar(cladding, "CUTELE", cute);  // Allow beta >= 0.xx 
+  gMC->Gstpar(cladding, "CUTGAM", cutg);  // = 1.33 cutele. 
+  gMC->Gstpar(cladding, "CUTNEU", .01);   // Default. 
+  gMC->Gstpar(cladding, "CUTHAD", .01);   // Default. 
+  gMC->Gstpar(cladding, "CUTMUO", .01);   // Default. 
+  gMC->Gstpar(cladding, "BCUTE", cutg);   // = cutgam. 
+  gMC->Gstpar(cladding, "BCUTM", cutg);   // = cutgam. 
+  gMC->Gstpar(cladding, "DCUTE", cute);   // = cutele. 
+  gMC->Gstpar(cladding, "DCUTM", cute);   // = cutele. 
+  gMC->Gstpar(cladding, "PPCUTM", cutg);  // = 1.33 cutele. 
+  gMC->Gstpar(cladding, "DCAY", 1.);
+  gMC->Gstpar(cladding, "MULS", 1.);
+  gMC->Gstpar(cladding, "PFIS", 1.);
+  gMC->Gstpar(cladding, "MUNU", 1.);
+  gMC->Gstpar(cladding, "LOSS", 1.);
+  gMC->Gstpar(cladding, "PHOT", 1.);
+  gMC->Gstpar(cladding, "COMP", 1.);
+  gMC->Gstpar(cladding, "PAIR", 1.);
+  gMC->Gstpar(cladding, "BREM", 1.);
+  gMC->Gstpar(cladding, "RAYL", 1.);
+  gMC->Gstpar(cladding, "DRAY", 1.);
+  gMC->Gstpar(cladding, "ANNI", 1.);
+  gMC->Gstpar(cladding, "HADR", 1.);
+  gMC->Gstpar(cladding, "LABS", 1.);
   
   // **> and Inside the Cherenkov fibres, 
   Int_t fiber = idtmed[fOdFiber - 1];
-  pMC->Gstpar(fiber, "CUTELE", cute);  // Allow beta >= 0.xx 
-  pMC->Gstpar(fiber, "CUTGAM", cutg);  // = 1.33 cutele. 
-  pMC->Gstpar(fiber, "CUTNEU", .01);   // Default. 
-  pMC->Gstpar(fiber, "CUTHAD", .01);   // Default. 
-  pMC->Gstpar(fiber, "CUTMUO", .01);   // Default. 
-  pMC->Gstpar(fiber, "BCUTE", cutg);   // = cutgam. 
-  pMC->Gstpar(fiber, "BCUTM", cutg);   // = cutgam. 
-  pMC->Gstpar(fiber, "DCUTE", cute);   // = cutele. 
-  pMC->Gstpar(fiber, "DCUTM", cute);   // = cutele. 
-  pMC->Gstpar(fiber, "PPCUTM", cutg);  // = 1.33 cutele. 
-  pMC->Gstpar(fiber, "DCAY", 1.);
-  pMC->Gstpar(fiber, "MULS", 1.);
-  pMC->Gstpar(fiber, "PFIS", 1.);
-  pMC->Gstpar(fiber, "MUNU", 1.);
-  pMC->Gstpar(fiber, "LOSS", 1.);
-  pMC->Gstpar(fiber, "PHOT", 1.);
-  pMC->Gstpar(fiber, "COMP", 1.);
-  pMC->Gstpar(fiber, "PAIR", 1.);
-  pMC->Gstpar(fiber, "BREM", 1.);
-  pMC->Gstpar(fiber, "RAYL", 1.);
-  pMC->Gstpar(fiber, "DRAY", 1.);
-  pMC->Gstpar(fiber, "ANNI", 1.);
-  pMC->Gstpar(fiber, "HADR", 1.);
-  pMC->Gstpar(fiber, "LABS", 1.);
+  gMC->Gstpar(fiber, "CUTELE", cute);  // Allow beta >= 0.xx 
+  gMC->Gstpar(fiber, "CUTGAM", cutg);  // = 1.33 cutele. 
+  gMC->Gstpar(fiber, "CUTNEU", .01);   // Default. 
+  gMC->Gstpar(fiber, "CUTHAD", .01);   // Default. 
+  gMC->Gstpar(fiber, "CUTMUO", .01);   // Default. 
+  gMC->Gstpar(fiber, "BCUTE", cutg);   // = cutgam. 
+  gMC->Gstpar(fiber, "BCUTM", cutg);   // = cutgam. 
+  gMC->Gstpar(fiber, "DCUTE", cute);   // = cutele. 
+  gMC->Gstpar(fiber, "DCUTM", cute);   // = cutele. 
+  gMC->Gstpar(fiber, "PPCUTM", cutg);  // = 1.33 cutele. 
+  gMC->Gstpar(fiber, "DCAY", 1.);
+  gMC->Gstpar(fiber, "MULS", 1.);
+  gMC->Gstpar(fiber, "PFIS", 1.);
+  gMC->Gstpar(fiber, "MUNU", 1.);
+  gMC->Gstpar(fiber, "LOSS", 1.);
+  gMC->Gstpar(fiber, "PHOT", 1.);
+  gMC->Gstpar(fiber, "COMP", 1.);
+  gMC->Gstpar(fiber, "PAIR", 1.);
+  gMC->Gstpar(fiber, "BREM", 1.);
+  gMC->Gstpar(fiber, "RAYL", 1.);
+  gMC->Gstpar(fiber, "DRAY", 1.);
+  gMC->Gstpar(fiber, "ANNI", 1.);
+  gMC->Gstpar(fiber, "HADR", 1.);
+  gMC->Gstpar(fiber, "LABS", 1.);
 }
 
 //_____________________________________________________________________________
index a3bda91..364c02b 100644 (file)
@@ -78,8 +78,6 @@ void AliGenExtFile::NtupleInit()
 void AliGenExtFile::Generate()
 {
 
-  AliMC* pMC = AliMC::GetMC();
-
   Float_t polar[3]= {0,0,0};
   //
   Float_t origin[3]={0,0,0};
@@ -101,7 +99,7 @@ void AliGenExtFile::Generate()
 
   for (j=0;j<3;j++) origin[j]=fOrigin[j];
   if(fVertexSmear==perEvent) {
-    pMC->Rndm(random,6);
+    gMC->Rndm(random,6);
     for (j=0;j<3;j++) {
        origin[j]+=fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
            TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
@@ -122,7 +120,7 @@ void AliGenExtFile::Generate()
   }
   for (i=0; i<Ntracks; i++) {
 
-      pMC->Gfpart(Idpart, name, itrtyp,amass, charge, tlife); 
+      gMC->Gfpart(Idpart, name, itrtyp,amass, charge, tlife); 
       prwn=sqrt((E+amass)*(E-amass));
 
       Theta *= TMath::Pi()/180.;
@@ -138,7 +136,7 @@ void AliGenExtFile::Generate()
          p[2]=prwn*TMath::Cos(Theta);
          
          if(fVertexSmear==perTrack) {
-             pMC->Rndm(random,6);
+             gMC->Rndm(random,6);
              for (j=0;j<3;j++) {
                  origin[j]=fOrigin[j]
                      +fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
index d709455..807400d 100644 (file)
@@ -114,8 +114,6 @@ void AliGenFLUKAsource::FlukaInit()
 void AliGenFLUKAsource::Generate()
 {
 
-  AliMC* pMC = AliMC::GetMC();
-
   const Int_t ifluge[28]={kProton, kProtonBar, kElectron, kPositron,
                          kNuE, kNuEBar, kGamma, kNeutron, kNeutronBar,
                          kMuonPlus, kMuonMinus, kK0Long , kPiPlus, kPiMinus,
@@ -146,7 +144,7 @@ void AliGenFLUKAsource::Generate()
   // loop over number of particles
   Int_t nb=0;
   for (i=0; i<fNpart;i++) {
-    Int_t ev=pMC->CurrentEvent();
+    Int_t ev=gMC->CurrentEvent();
     Int_t entry=fNpart*(ev-1)+i; 
     nb = (Int_t)h2->GetEvent(entry); 
     if (irwn > nentries) {
@@ -191,7 +189,7 @@ void AliGenFLUKAsource::Generate()
        part=13;
     } else {
        part=ifluge[int(Ip)-1];
-       pMC->Gfpart(part, name, itrtyp,  
+       gMC->Gfpart(part, name, itrtyp,  
                   amass, charge, tlife); 
        prwn=sqrt(Ekin*Ekin + 2.*amass);
     }
@@ -207,13 +205,13 @@ void AliGenFLUKAsource::Generate()
     wgt = (part == 13) ? Wgt*fAddWeight : Wgt;
     iwgt=Int_t(wgt);
     fwgt=wgt-Float_t(iwgt);
-    pMC->Rndm(random,2);
+    gMC->Rndm(random,2);
     if (random[0] < fwgt) iwgt++;
     if (part==1 && iwgt>100) iwgt=100;
     Int_t nstack=0;
     for (j=0; j<iwgt; j++) {
        gAlice->SetTrack(1,-1,part,p,origin,polar,0,"Primary",nt);
-       pMC->Rndm(random,2);
+       gMC->Rndm(random,2);
        phi=2*random[1]*TMath::Pi();
        Float_t pn1=p[0]*TMath::Sin(phi) - p[1]*TMath::Cos(phi);
        Float_t pn2=p[0]*TMath::Cos(phi) + p[1]*TMath::Sin(phi);
index 441182b..8ab7554 100644 (file)
@@ -46,9 +46,8 @@ Double_t AliGenMUONlib::YPion( Double_t *py, Double_t *)
 //
 Int_t AliGenMUONlib::IpPion()
 {
-    AliMC* pMC = AliMC::GetMC();
     Float_t random[1];
-    pMC->Rndm(random,1);
+    gMC->Rndm(random,1);
     if (random[0] < 0.5) {
        return  211;
     } else {
@@ -104,9 +103,8 @@ Double_t AliGenMUONlib::YKaon( Double_t *py, Double_t *)
 //
 Int_t AliGenMUONlib::IpKaon()
 {
-    AliMC* pMC = AliMC::GetMC();
     Float_t random[1];
-    pMC->Rndm(random,1);
+    gMC->Rndm(random,1);
     if (random[0] < 0.5) {
        return  321;
     } else {
@@ -236,11 +234,10 @@ Double_t AliGenMUONlib::YCharm( Double_t *px, Double_t *)
 
 Int_t AliGenMUONlib::IpCharm()
 {  
-    AliMC* pMC = AliMC::GetMC();
     Float_t random[2];
     Int_t ip;
 //    411,421,431,4122
-    pMC->Rndm(random,2);
+    gMC->Rndm(random,2);
     if (random[0] < 0.5) {
        ip=411;
     } else if (random[0] < 0.75) {
@@ -280,10 +277,9 @@ Double_t AliGenMUONlib::YBeauty( Double_t *px, Double_t *)
 
 Int_t AliGenMUONlib::IpBeauty()
 {  
-    AliMC* pMC = AliMC::GetMC();
     Float_t random[2];
     Int_t ip;
-    pMC->Rndm(random,2);
+    gMC->Rndm(random,2);
     if (random[0] < 0.5) {
        ip=511;
     } else if (random[0] < 0.75) {
index 30075fe..af39767 100644 (file)
@@ -135,7 +135,6 @@ void AliGenParam::Generate()
 // the desired theta, phi and momentum windows; Gaussian smearing 
 // on the vertex is done if selected
 
-  AliMC* pMC = AliMC::GetMC();
 
   Float_t polar[3]= {0,0,0};
   //
@@ -152,7 +151,7 @@ void AliGenParam::Generate()
   Float_t random[6];
   for (j=0;j<3;j++) origin0[j]=fOrigin[j];
   if(fVertexSmear==perEvent) {
-      pMC->Rndm(random,6);
+      gMC->Rndm(random,6);
       for (j=0;j<3;j++) {
          origin0[j]+=fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
              TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
@@ -165,7 +164,7 @@ void AliGenParam::Generate()
          Int_t Ipart = fIpParaFunc();
          fChildWeight=(fPythia->GetBraPart(Ipart))*fParentWeight;        
          Float_t am=fPythia->GetPMAS(fPythia->LuComp(Ipart),1);
-         pMC->Rndm(random,2);
+         gMC->Rndm(random,2);
 //
 // phi
          phi=fPhiMin+random[0]*(fPhiMax-fPhiMin);
@@ -194,7 +193,7 @@ void AliGenParam::Generate()
          p[1]=pt*TMath::Sin(phi);
          p[2]=pl;
          if(fVertexSmear==perTrack) {
-             pMC->Rndm(random,6);
+             gMC->Rndm(random,6);
              for (j=0;j<3;j++) {
                  origin0[j]=
                      fOrigin[j]+fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
index 150901c..5b35035 100644 (file)
@@ -112,7 +112,6 @@ void AliGenPythia::Init()
 
 void AliGenPythia::Generate()
 {
-    AliMC* pMC = AliMC::GetMC();
 
     Float_t polar[3] =   {0,0,0};
     Float_t origin[3]=   {0,0,0};
@@ -132,7 +131,7 @@ void AliGenPythia::Generate()
     fTrials=0;
     for (j=0;j<3;j++) origin0[j]=fOrigin[j];
     if(fVertexSmear==perEvent) {
-       pMC->Rndm(random,6);
+       gMC->Rndm(random,6);
        for (j=0;j<3;j++) {
            origin0[j]+=fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
                TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
index 25455e1..42837c0 100644 (file)
@@ -60,7 +60,6 @@ void AliGenScan::Generate()
   //
   // Generate one trigger
   //
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t polar[3]= {0,0,0};
   //
@@ -93,7 +92,7 @@ void AliGenScan::Generate()
   for (Int_t ix=0; ix<fNx; ix++) {
       for (Int_t iy=0; iy<fNy; iy++) {
          for (Int_t iz=0; iz<fNz; iz++){
-             pMC->Rndm(random,6);
+             gMC->Rndm(random,6);
              origin[0]=fXmin+ix*dx+2*(random[0]-0.5)*fOsigma[0];
              origin[1]=fYmin+iy*dy+2*(random[1]-0.5)*fOsigma[1];
              origin[2]=fZmin+iz*dz+2*(random[2]-0.5)*fOsigma[2];            
index 5ed2f75..3bdf62e 100644 (file)
@@ -278,7 +278,6 @@ void AliPythia::ForceDecay(Decay_t decay)
 {
     if (fgInit) return;
     fgInit=1;
-    AliMC *pMC=AliMC::GetMC();
     
     Float_t mass;
     Float_t tlife;
@@ -333,42 +332,42 @@ void AliPythia::ForceDecay(Decay_t decay)
     kc=LuComp(41);         
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(113,"Phi",3,mass,0,tlife);
+    gMC->Gspart(113,"Phi",3,mass,0,tlife);
     fGPCode[kc][0]=113;
     fGPCode[kc][1]=113;
     // J/Psi  
     kc=LuComp(443);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(114,"J/Psi",3,mass,0,tlife);
+    gMC->Gspart(114,"J/Psi",3,mass,0,tlife);
     fGPCode[kc][0]=114;
     fGPCode[kc][1]=114;
     // psi prime
     kc=LuComp(30443);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(115,"Psi'",3,mass,0,tlife);
+    gMC->Gspart(115,"Psi'",3,mass,0,tlife);
     fGPCode[kc][0]=115;
     fGPCode[kc][1]=115;
     // upsilon(1s) 
     kc=LuComp(553);    
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(116,"Upsilon",3,mass,0,tlife);
+    gMC->Gspart(116,"Upsilon",3,mass,0,tlife);
     fGPCode[kc][0]=116;
     fGPCode[kc][1]=116;
     // upsilon(2s)     
     kc=LuComp(30553);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(117,"Upsilon'",3,mass,0,tlife);
+    gMC->Gspart(117,"Upsilon'",3,mass,0,tlife);
     fGPCode[kc][0]=117;
     fGPCode[kc][1]=117;
     // upsilon(3s)     
     kc=LuComp(30553);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(118,"Upsilon''",3,mass,0,tlife);
+    gMC->Gspart(118,"Upsilon''",3,mass,0,tlife);
     fGPCode[kc][0]=118;
     fGPCode[kc][1]=118;
 //
@@ -378,32 +377,32 @@ void AliPythia::ForceDecay(Decay_t decay)
     kc=LuComp(411);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(119,"D^+",3,mass, 1,tlife);
-    pMC->Gspart(120,"D^-",3,mass,-1,tlife);
+    gMC->Gspart(119,"D^+",3,mass, 1,tlife);
+    gMC->Gspart(120,"D^-",3,mass,-1,tlife);
     fGPCode[kc][0]=119;
     fGPCode[kc][1]=120;
     // D^0
     kc=LuComp(421);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(121,"D^0",3,mass,0,tlife);
-    pMC->Gspart(122,"D^0bar",3,mass,0,tlife);
+    gMC->Gspart(121,"D^0",3,mass,0,tlife);
+    gMC->Gspart(122,"D^0bar",3,mass,0,tlife);
     fGPCode[kc][0]=121;
     fGPCode[kc][1]=122;
     // D_s
     kc=LuComp(431);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(123,"D_s^+",3,mass, 1,tlife);
-    pMC->Gspart(124,"D_s^-",3,mass,-1,tlife);
+    gMC->Gspart(123,"D_s^+",3,mass, 1,tlife);
+    gMC->Gspart(124,"D_s^-",3,mass,-1,tlife);
     fGPCode[kc][0]=123;
     fGPCode[kc][1]=124;
     // Lambda_c
     kc=LuComp(4122);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(125,"Lambda_c+",3,mass, 1,tlife);
-    pMC->Gspart(126,"Lambda_c-",3,mass,-1,tlife);
+    gMC->Gspart(125,"Lambda_c+",3,mass, 1,tlife);
+    gMC->Gspart(126,"Lambda_c-",3,mass,-1,tlife);
     fGPCode[kc][0]=125;
     fGPCode[kc][1]=126;
     //
@@ -412,32 +411,32 @@ void AliPythia::ForceDecay(Decay_t decay)
     kc=LuComp(511);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(127,"B^0",3,mass, 0,tlife);
-    pMC->Gspart(128,"B^0bar",3,mass, 0,tlife);
+    gMC->Gspart(127,"B^0",3,mass, 0,tlife);
+    gMC->Gspart(128,"B^0bar",3,mass, 0,tlife);
     fGPCode[kc][0]=127;
     fGPCode[kc][1]=128;
     // B^+-
     kc=LuComp(521);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(129,"B^+",3,mass, 1,tlife);
-    pMC->Gspart(130,"B^-",3,mass,-1,tlife);
+    gMC->Gspart(129,"B^+",3,mass, 1,tlife);
+    gMC->Gspart(130,"B^-",3,mass,-1,tlife);
     fGPCode[kc][0]=129;
     fGPCode[kc][1]=130;
     // B_s
     kc=LuComp(531);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(131,"B_s",3,mass, 0,tlife);
-    pMC->Gspart(132,"B_s^bar",3,mass,0,tlife);
+    gMC->Gspart(131,"B_s",3,mass, 0,tlife);
+    gMC->Gspart(132,"B_s^bar",3,mass,0,tlife);
     fGPCode[kc][0]=131;
     fGPCode[kc][1]=132;
     // Lambda_b
     kc=LuComp(5122);
     mass =GetPMAS(kc,1);
     tlife=GetPMAS(kc,4);
-    pMC->Gspart(133,"Lambda_b",3,mass, 0,tlife);
-    pMC->Gspart(134,"Lambda_b^bar",3,mass,0,tlife);
+    gMC->Gspart(133,"Lambda_b",3,mass, 0,tlife);
+    gMC->Gspart(134,"Lambda_b^bar",3,mass,0,tlife);
     fGPCode[kc][0]=133;
     fGPCode[kc][1]=134;
 //
index dbd3b79..b2c2b3a 100644 (file)
@@ -200,7 +200,6 @@ void AliGenHIJINGpara::Generate()
   // Generate one trigger
   //
 
-  AliMC* pMC = AliMC::GetMC();
   
   const Float_t raKpic=0.14;
   const Float_t borne=1/(1+raKpic);
@@ -222,7 +221,7 @@ void AliGenHIJINGpara::Generate()
   //
   for (j=0;j<3;j++) origin[j]=fOrigin[j];
   if(fVertexSmear==perEvent) {
-    pMC->Rndm(random,6);
+    gMC->Rndm(random,6);
     for (j=0;j<3;j++) {
       origin[j]+=fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
        TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
@@ -230,7 +229,7 @@ void AliGenHIJINGpara::Generate()
   }
   for(i=0;i<fNpart;i++) {
     while(1) {
-      pMC->Rndm(random,3);
+      gMC->Rndm(random,3);
       if(random[0]<borne) {
        part=pions[Int_t (random[1]*3)];
        ptf=fPtpi;
@@ -252,7 +251,7 @@ void AliGenHIJINGpara::Generate()
       p[1]=pt*TMath::Sin(phi);
       p[2]=pl;
       if(fVertexSmear==perTrack) {
-       pMC->Rndm(random,6);
+       gMC->Rndm(random,6);
        for (j=0;j<3;j++) {
          origin[j]=fOrigin[j]+fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
            TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
@@ -347,7 +346,6 @@ void AliGenBox::Generate()
   //
   // Generate one trigger
   //
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t polar[3]= {0,0,0};
   //
@@ -360,14 +358,14 @@ void AliGenBox::Generate()
   //
   for (j=0;j<3;j++) origin[j]=fOrigin[j];
   if(fVertexSmear==perEvent) {
-    pMC->Rndm(random,6);
+    gMC->Rndm(random,6);
     for (j=0;j<3;j++) {
       origin[j]+=fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
        TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
     }
   }
   for(i=0;i<fNpart;i++) {
-    pMC->Rndm(random,3);
+    gMC->Rndm(random,3);
     pmom=fPMin+random[0]*(fPMax-fPMin);
     theta=fThetaMin+random[1]*(fThetaMax-fThetaMin);
     phi=fPhiMin+random[2]*(fPhiMax-fPhiMin);
@@ -375,7 +373,7 @@ void AliGenBox::Generate()
     p[1] = pmom*TMath::Sin(phi)*TMath::Sin(theta);
     p[2] = pmom*TMath::Cos(theta);
     if(fVertexSmear==perTrack) {
-      pMC->Rndm(random,6);
+      gMC->Rndm(random,6);
       for (j=0;j<3;j++) {
        origin[j]=fOrigin[j]+fOsigma[j]*TMath::Cos(2*random[2*j]*TMath::Pi())*
          TMath::Sqrt(-2*TMath::Log(random[2*j+1]));
index 4916b1a..4cb0555 100644 (file)
@@ -138,11 +138,10 @@ void AliFMD::StepManager()
   Float_t       hits[3];
   Int_t         copy,vol[1];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC=AliMC::GetMC();
   
-  pMC->CurrentVol(0, copy);
+  gMC->CurrentVol(0, copy);
   vol[0] = copy;
-  pMC->TrackPosition(hits);
+  gMC->TrackPosition(hits);
   new(lhits[fNhits++]) AliFMDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
 }
 
index 870ba83..5009a42 100644 (file)
@@ -57,7 +57,6 @@ void AliFMDv0::CreateGeometry()
   */
   //End_Html
 
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t rout, z;
   Float_t par[3], rin;
@@ -77,20 +76,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1R3", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1R3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1R3", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1R3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2R3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2R3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2R3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2R3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3R3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3R3", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3R3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3R3", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
   // *********************************************************** 
   //       DEFINE LEFT DISK#3 OF FMD 
   // *********************************************************** 
@@ -104,20 +103,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1L3", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1L3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1L3", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1L3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2L3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2L3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2L3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2L3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3L3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3L3", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3L3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3L3", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
   // ******************************************************** 
   //       DEFINE RIGHT DISK#2  OF FMD 
   // ******************************************************** 
@@ -131,20 +130,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1R2", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1R2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1R2", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1R2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2R2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2R2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2R2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2R2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3R2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3R2", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3R2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3R2", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
   // *********************************************************** 
   //       DEFINE LEFT DISK#2 OF FMD 
   // *********************************************************** 
@@ -158,20 +157,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1L2", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1L2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1L2", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1L2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2L2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2L2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2L2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2L2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3L2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3L2", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3L2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3L2", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
   // ******************************************************** 
   //       DEFINE RIGHT DISK#1  OF FMD 
   // ******************************************************** 
@@ -185,20 +184,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1R1", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1R1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1R1", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1R1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2R1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2R1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2R1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2R1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3R1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3R1", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3R1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3R1", 1, "ALIC", 0., 0., z + 1.525, 0, "ONLY");
   // *********************************************************** 
   //       DEFINE LEFT DISK#1 OF FMD 
   // *********************************************************** 
@@ -212,20 +211,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1L1", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1L1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1L1", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1L1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2L1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2L1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2L1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2L1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3L1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3L1", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3L1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3L1", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
   // *********************************************************** 
   //       DEFINE LEFT DISK#4 OF FMD 
   // *********************************************************** 
@@ -239,20 +238,20 @@ void AliFMDv0::CreateGeometry()
   par[0] = rin;
   par[1] = rout;
   par[2] = 1.5;
-  pMC->Gsvolu("R1L4", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("R1L4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R1L4", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("R1L4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #2 
   par[0] = rout;
   par[1] = rout + .65;
   par[2] = 1.5;
-  pMC->Gsvolu("R2L4", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("R2L4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("R2L4", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("R2L4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //       Ring #3 
   par[0] = rout + .65;
   par[1] = rout + 5.65;
   par[2] = .025;
-  pMC->Gsvolu("R3L4", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("R3L4", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
+  gMC->Gsvolu("R3L4", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("R3L4", 1, "ALIC", 0., 0., z - 1.525, 0, "ONLY");
 }
 
 //_____________________________________________________________________________
@@ -262,46 +261,44 @@ void AliFMDv0::DrawModule()
   // Draw a shaded view of the FMD version 0
   //
 
-  AliMC* pMC = AliMC::GetMC();
-  
   // Set everything unseen
-  pMC->Gsatt("*", "seen", -1);
+  gMC->Gsatt("*", "seen", -1);
   // 
   // Set ALIC mother transparent
-  pMC->Gsatt("ALIC","SEEN",0);
+  gMC->Gsatt("ALIC","SEEN",0);
   //
   // Set the volumes visible
-  pMC->Gsatt("R1R3","SEEN",1);
-  pMC->Gsatt("R2R3","SEEN",1);
-  pMC->Gsatt("R3R3","SEEN",1);
-  pMC->Gsatt("R1L3","SEEN",1);
-  pMC->Gsatt("R2L3","SEEN",1);
-  pMC->Gsatt("R3L3","SEEN",1);
-  pMC->Gsatt("R1R2","SEEN",1);
-  pMC->Gsatt("R2R2","SEEN",1);
-  pMC->Gsatt("R3R2","SEEN",1);
-  pMC->Gsatt("R1L2","SEEN",1);
-  pMC->Gsatt("R2L2","SEEN",1);
-  pMC->Gsatt("R3L2","SEEN",1);
-  pMC->Gsatt("R1R1","SEEN",1);
-  pMC->Gsatt("R2R1","SEEN",1);
-  pMC->Gsatt("R3R1","SEEN",1);
-  pMC->Gsatt("R1L1","SEEN",1);
-  pMC->Gsatt("R2L1","SEEN",1);
-  pMC->Gsatt("R3L1","SEEN",1);
-  pMC->Gsatt("R1L4","SEEN",1);
-  pMC->Gsatt("R2L4","SEEN",1);
-  pMC->Gsatt("R3L4","SEEN",1);
+  gMC->Gsatt("R1R3","SEEN",1);
+  gMC->Gsatt("R2R3","SEEN",1);
+  gMC->Gsatt("R3R3","SEEN",1);
+  gMC->Gsatt("R1L3","SEEN",1);
+  gMC->Gsatt("R2L3","SEEN",1);
+  gMC->Gsatt("R3L3","SEEN",1);
+  gMC->Gsatt("R1R2","SEEN",1);
+  gMC->Gsatt("R2R2","SEEN",1);
+  gMC->Gsatt("R3R2","SEEN",1);
+  gMC->Gsatt("R1L2","SEEN",1);
+  gMC->Gsatt("R2L2","SEEN",1);
+  gMC->Gsatt("R3L2","SEEN",1);
+  gMC->Gsatt("R1R1","SEEN",1);
+  gMC->Gsatt("R2R1","SEEN",1);
+  gMC->Gsatt("R3R1","SEEN",1);
+  gMC->Gsatt("R1L1","SEEN",1);
+  gMC->Gsatt("R2L1","SEEN",1);
+  gMC->Gsatt("R3L1","SEEN",1);
+  gMC->Gsatt("R1L4","SEEN",1);
+  gMC->Gsatt("R2L4","SEEN",1);
+  gMC->Gsatt("R3L4","SEEN",1);
   //
-  pMC->Gdopt("hide", "on");
-  pMC->Gdopt("shad", "on");
-  pMC->Gsatt("*", "fill", 7);
-  pMC->SetClipBox(".");
-  pMC->SetClipBox("*", 0, 1000, -1000, 1000, -1000, 1000);
-  pMC->DefaultRange();
-  pMC->Gdraw("alic", 40, 30, 0, 6, 9, .08, .08);
-  pMC->Gdhead(1111, "Forward Multiplicity Detector version 0");
-  pMC->Gdman(13, 9, "MAN");
+  gMC->Gdopt("hide", "on");
+  gMC->Gdopt("shad", "on");
+  gMC->Gsatt("*", "fill", 7);
+  gMC->SetClipBox(".");
+  gMC->SetClipBox("*", 0, 1000, -1000, 1000, -1000, 1000);
+  gMC->DefaultRange();
+  gMC->Gdraw("alic", 40, 30, 0, 6, 9, .08, .08);
+  gMC->Gdhead(1111, "Forward Multiplicity Detector version 0");
+  gMC->Gdman(13, 9, "MAN");
 }
 
 //_____________________________________________________________________________
index cf4739c..2c5918b 100644 (file)
@@ -59,7 +59,6 @@ void AliFMDv1::CreateGeometry()
   */
   //End_Html
 
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t rout;
   Float_t z;
@@ -94,75 +93,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWR3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWR3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWR3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWR3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWR3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWR3", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
+  gMC->Gsvolu("FWR3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWR3", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWR3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWR3", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWR3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWR3", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPR3", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPR3", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPR3", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPR3", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPR3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPR3", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPR3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPR3", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SMR3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SMR3", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
+  gMC->Gsvolu("SMR3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SMR3", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPR3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPR3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPR3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPR3", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1R3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1R3", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2R3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2R3", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1R3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1R3", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2R3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2R3", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKR3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKR3", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKR3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKR3", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCR3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCR3", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCR3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCR3", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SER3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SER3", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
+  gMC->Gsvolu("SER3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SER3", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CER3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CER3", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
+  gMC->Gsvolu("CER3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CER3", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
   // *********************************************************** 
   //     DEFINE LEFT DISK#3 OF FMD 
   // *********************************************************** 
@@ -184,75 +183,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWL3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWL3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWL3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWL3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWL3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWL3", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
+  gMC->Gsvolu("FWL3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWL3", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWL3", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWL3", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWL3", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWL3", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPL3", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPL3", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPL3", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPL3", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPL3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPL3", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPL3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPL3", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SML3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SML3", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
+  gMC->Gsvolu("SML3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SML3", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPL3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPL3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPL3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPL3", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1L3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1L3", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2L3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2L3", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1L3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1L3", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2L3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2L3", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKL3", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKL3", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKL3", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKL3", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCL3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCL3", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCL3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCL3", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SEL3", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SEL3", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
+  gMC->Gsvolu("SEL3", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SEL3", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CEL3", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CEL3", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
+  gMC->Gsvolu("CEL3", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CEL3", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
   // ******************************************************** 
   //     DEFINE RIGHT DISK#2  OF FMD 
   // ******************************************************** 
@@ -274,75 +273,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWR2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWR2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWR2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWR2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWR2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWR2", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
+  gMC->Gsvolu("FWR2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWR2", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWR2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWR2", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWR2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWR2", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPR2", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPR2", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPR2", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPR2", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPR2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPR2", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPR2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPR2", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SMR2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SMR2", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
+  gMC->Gsvolu("SMR2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SMR2", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPR2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPR2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPR2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPR2", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1R2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1R2", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2R2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2R2", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1R2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1R2", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2R2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2R2", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKR2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKR2", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKR2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKR2", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCR2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCR2", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCR2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCR2", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SER2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SER2", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
+  gMC->Gsvolu("SER2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SER2", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CER2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CER2", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
+  gMC->Gsvolu("CER2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CER2", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
   // *********************************************************** 
   //       DEFINE LEFT DISK#2 OF FMD 
   // *********************************************************** 
@@ -364,75 +363,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWL2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWL2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWL2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWL2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWL2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWL2", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
+  gMC->Gsvolu("FWL2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWL2", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWL2", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWL2", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWL2", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWL2", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPL2", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPL2", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPL2", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPL2", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPL2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPL2", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPL2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPL2", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SML2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SML2", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
+  gMC->Gsvolu("SML2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SML2", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPL2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPL2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPL2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPL2", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1L2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1L2", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2L2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2L2", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1L2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1L2", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2L2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2L2", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKL2", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKL2", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKL2", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKL2", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCL2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCL2", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCL2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCL2", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SEL2", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SEL2", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
+  gMC->Gsvolu("SEL2", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SEL2", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CEL2", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CEL2", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
+  gMC->Gsvolu("CEL2", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CEL2", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
   // ******************************************************** 
   //     DEFINE RIGHT DISK#1  OF FMD 
   // ******************************************************** 
@@ -454,75 +453,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWR1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWR1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWR1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWR1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWR1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWR1", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
+  gMC->Gsvolu("FWR1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWR1", 1, "ALIC", 0., 0., z + .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWR1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWR1", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWR1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWR1", 1, "ALIC", 0., 0., z + 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPR1", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPR1", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPR1", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPR1", 1, "ALIC", 0., 0., z + 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPR1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPR1", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPR1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPR1", 1, "ALIC", 0., 0., z + 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SMR1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SMR1", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
+  gMC->Gsvolu("SMR1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SMR1", 1, "ALIC", 0., 0., z + 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPR1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPR1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPR1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPR1", 1, "ALIC", 0., 0., z + 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1R1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1R1", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2R1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2R1", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1R1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1R1", 1, "ALIC", 0., 0., z + .25 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2R1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2R1", 1, "ALIC", 0., 0., z + 2.75 + t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKR1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKR1", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKR1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKR1", 1, "ALIC", 0., 0., z + .25 + t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCR1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCR1", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCR1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCR1", 1, "ALIC", 0., 0., z + .25 + t1 + t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SER1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SER1", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
+  gMC->Gsvolu("SER1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SER1", 1, "ALIC", 0., 0., z + 1.57 - .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CER1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CER1", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
+  gMC->Gsvolu("CER1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CER1", 1, "ALIC", 0., 0., z + 1.58 + .025, 0, "ONLY");
   // *********************************************************** 
   //     DEFINE LEFT DISK#1 OF FMD 
   // *********************************************************** 
@@ -544,75 +543,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWL1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWL1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWL1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWL1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWL1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWL1", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
+  gMC->Gsvolu("FWL1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWL1", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWL1", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWL1", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWL1", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWL1", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPL1", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPL1", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPL1", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPL1", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPL1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPL1", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPL1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPL1", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SML1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SML1", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
+  gMC->Gsvolu("SML1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SML1", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPL1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPL1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPL1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPL1", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1L1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1L1", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2L1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2L1", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1L1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1L1", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2L1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2L1", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
   //     Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKL1", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKL1", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKL1", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKL1", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCL1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCL1", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCL1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCL1", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SEL1", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SEL1", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
+  gMC->Gsvolu("SEL1", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SEL1", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CEL1", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CEL1", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
+  gMC->Gsvolu("CEL1", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CEL1", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
   // *********************************************************** 
   //     DEFINE LEFT DISK#4 OF FMD 
   // *********************************************************** 
@@ -634,75 +633,75 @@ void AliFMDv1::CreateGeometry()
   par[0] = rin - .02;
   par[1] = rin;
   par[2] = 1.5;
-  pMC->Gsvolu("IWL4", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("IWL4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("IWL4", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("IWL4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Front steel wall 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("FWL4", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("FWL4", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
+  gMC->Gsvolu("FWL4", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("FWL4", 1, "ALIC", 0., 0., z - .01, 0, "ONLY");
   //     Rear steel wall 
-  pMC->Gsvolu("RWL4", "TUBE", idtmed[899], par, 3);
-  pMC->Gspos("RWL4", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
+  gMC->Gsvolu("RWL4", "TUBE", idtmed[899], par, 3);
+  gMC->Gspos("RWL4", 1, "ALIC", 0., 0., z - 2.99, 0, "ONLY");
   //     MCP 
   par[0] = rin;
   par[1] = rout;
   par[2] = .07;
-  pMC->Gsvolu("MPL4", "TUBE", idtmed[900], par, 3);
-  pMC->Gspos("MPL4", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
+  gMC->Gsvolu("MPL4", "TUBE", idtmed[900], par, 3);
+  gMC->Gspos("MPL4", 1, "ALIC", 0., 0., z - 1.57, 0, "ONLY");
   //     Silicon plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .019;
-  pMC->Gsvolu("SPL4", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SPL4", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
+  gMC->Gsvolu("SPL4", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SPL4", 1, "ALIC", 0., 0., z - 1.719, 0, "ONLY");
   //     Summator plate 
   par[0] = rin;
   par[1] = rout;
   par[2] = .01;
-  pMC->Gsvolu("SML4", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SML4", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
+  gMC->Gsvolu("SML4", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SML4", 1, "ALIC", 0., 0., z - 2.01, 0, "ONLY");
   // *******Outer slice ******* 
   //     Ceramic plate 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = 1.25;
-  pMC->Gsvolu("CPL4", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CPL4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
+  gMC->Gsvolu("CPL4", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CPL4", 1, "ALIC", 0., 0., z - 1.5, 0, "ONLY");
   //     Covar spring 
   par[0] = rout;
   par[1] = rout + h1;
   par[2] = t0 / 2.;
-  pMC->Gsvolu("C1L4", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C1L4", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
-  pMC->Gsvolu("C2L4", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("C2L4", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C1L4", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C1L4", 1, "ALIC", 0., 0., z - .25 + t0 / 2., 0, "ONLY");
+  gMC->Gsvolu("C2L4", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("C2L4", 1, "ALIC", 0., 0., z - 2.75 - t0 / 2., 0, "ONLY");
   //       Getter camera 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t1 / 2.;
-  pMC->Gsvolu("GKL4", "TUBE", idtmed[903], par, 3);
-  pMC->Gspos("GKL4", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
+  gMC->Gsvolu("GKL4", "TUBE", idtmed[903], par, 3);
+  gMC->Gspos("GKL4", 1, "ALIC", 0., 0., z - .25 - t1 / 2., 0, "ONLY");
   //     Ceramic slice 
   par[0] = rout + h1;
   par[1] = rout + h1 + h2;
   par[2] = t2 / 2.;
-  pMC->Gsvolu("SCL4", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("SCL4", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
+  gMC->Gsvolu("SCL4", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("SCL4", 1, "ALIC", 0., 0., z - .25 - t1 - t2 / 2., 0, "ONLY");
   // ******Electronic slice ******* 
   //     Silicon ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("SEL4", "TUBE", idtmed[901], par, 3);
-  pMC->Gspos("SEL4", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
+  gMC->Gsvolu("SEL4", "TUBE", idtmed[901], par, 3);
+  gMC->Gspos("SEL4", 1, "ALIC", 0., 0., z - 1.57 + .025, 0, "ONLY");
   //     Ceramic ring 
   par[0] = rout + h1 + h2;
   par[1] = rout + h1 + h2 + 5.;
   par[2] = .025;
-  pMC->Gsvolu("CEL4", "TUBE", idtmed[902], par, 3);
-  pMC->Gspos("CEL4", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
+  gMC->Gsvolu("CEL4", "TUBE", idtmed[902], par, 3);
+  gMC->Gspos("CEL4", 1, "ALIC", 0., 0., z - 1.58 - .025, 0, "ONLY");
 }
  
 //_____________________________________________________________________________
@@ -712,116 +711,115 @@ void AliFMDv1::DrawModule()
   // Draw a shaded view of the FMD version 1
   //
 
-  AliMC* pMC = AliMC::GetMC();
   
   // Set everything unseen
-  pMC->Gsatt("*", "seen", -1);
+  gMC->Gsatt("*", "seen", -1);
   // 
   // Set ALIC mother transparent
-  pMC->Gsatt("ALIC","SEEN",0);
+  gMC->Gsatt("ALIC","SEEN",0);
   //
   // Set the volumes visible
-  pMC->Gsatt("IWR3","seen",1);
-  pMC->Gsatt("FWR3","seen",1);
-  pMC->Gsatt("RWR3","seen",1);
-  pMC->Gsatt("MPR3","seen",1);
-  pMC->Gsatt("SPR3","seen",1);
-  pMC->Gsatt("SMR3","seen",1);
-  pMC->Gsatt("CPR3","seen",1);
-  pMC->Gsatt("C1R3","seen",1);
-  pMC->Gsatt("C2R3","seen",1);
-  pMC->Gsatt("GKR3","seen",1);
-  pMC->Gsatt("SCR3","seen",1);
-  pMC->Gsatt("SER3","seen",1);
-  pMC->Gsatt("CER3","seen",1);
-  pMC->Gsatt("IWL3","seen",1);
-  pMC->Gsatt("FWL3","seen",1);
-  pMC->Gsatt("RWL3","seen",1);
-  pMC->Gsatt("MPL3","seen",1);
-  pMC->Gsatt("SPL3","seen",1);
-  pMC->Gsatt("SML3","seen",1);
-  pMC->Gsatt("CPL3","seen",1);
-  pMC->Gsatt("C1L3","seen",1);
-  pMC->Gsatt("C2L3","seen",1);
-  pMC->Gsatt("GKL3","seen",1);
-  pMC->Gsatt("SCL3","seen",1);
-  pMC->Gsatt("SEL3","seen",1);
-  pMC->Gsatt("CEL3","seen",1);
-  pMC->Gsatt("IWR2","seen",1);
-  pMC->Gsatt("FWR2","seen",1);
-  pMC->Gsatt("RWR2","seen",1);
-  pMC->Gsatt("MPR2","seen",1);
-  pMC->Gsatt("SPR2","seen",1);
-  pMC->Gsatt("SMR2","seen",1);
-  pMC->Gsatt("CPR2","seen",1);
-  pMC->Gsatt("C1R2","seen",1);
-  pMC->Gsatt("C2R2","seen",1);
-  pMC->Gsatt("GKR2","seen",1);
-  pMC->Gsatt("SCR2","seen",1);
-  pMC->Gsatt("SER2","seen",1);
-  pMC->Gsatt("CER2","seen",1);
-  pMC->Gsatt("IWL2","seen",1);
-  pMC->Gsatt("FWL2","seen",1);
-  pMC->Gsatt("RWL2","seen",1);
-  pMC->Gsatt("MPL2","seen",1);
-  pMC->Gsatt("SPL2","seen",1);
-  pMC->Gsatt("SML2","seen",1);
-  pMC->Gsatt("CPL2","seen",1);
-  pMC->Gsatt("C1L2","seen",1);
-  pMC->Gsatt("C2L2","seen",1);
-  pMC->Gsatt("GKL2","seen",1);
-  pMC->Gsatt("SCL2","seen",1);
-  pMC->Gsatt("SEL2","seen",1);
-  pMC->Gsatt("CEL2","seen",1);
-  pMC->Gsatt("IWR1","seen",1);
-  pMC->Gsatt("FWR1","seen",1);
-  pMC->Gsatt("RWR1","seen",1);
-  pMC->Gsatt("MPR1","seen",1);
-  pMC->Gsatt("SPR1","seen",1);
-  pMC->Gsatt("SMR1","seen",1);
-  pMC->Gsatt("CPR1","seen",1);
-  pMC->Gsatt("C1R1","seen",1);
-  pMC->Gsatt("C2R1","seen",1);
-  pMC->Gsatt("GKR1","seen",1);
-  pMC->Gsatt("SCR1","seen",1);
-  pMC->Gsatt("SER1","seen",1);
-  pMC->Gsatt("CER1","seen",1);
-  pMC->Gsatt("IWL1","seen",1);
-  pMC->Gsatt("FWL1","seen",1);
-  pMC->Gsatt("RWL1","seen",1);
-  pMC->Gsatt("MPL1","seen",1);
-  pMC->Gsatt("SPL1","seen",1);
-  pMC->Gsatt("SML1","seen",1);
-  pMC->Gsatt("CPL1","seen",1);
-  pMC->Gsatt("C1L1","seen",1);
-  pMC->Gsatt("C2L1","seen",1);
-  pMC->Gsatt("GKL1","seen",1);
-  pMC->Gsatt("SCL1","seen",1);
-  pMC->Gsatt("SEL1","seen",1);
-  pMC->Gsatt("CEL1","seen",1);
-  pMC->Gsatt("IWL4","seen",1);
-  pMC->Gsatt("FWL4","seen",1);
-  pMC->Gsatt("RWL4","seen",1);
-  pMC->Gsatt("MPL4","seen",1);
-  pMC->Gsatt("SPL4","seen",1);
-  pMC->Gsatt("SML4","seen",1);
-  pMC->Gsatt("CPL4","seen",1);
-  pMC->Gsatt("C1L4","seen",1);
-  pMC->Gsatt("C2L4","seen",1);
-  pMC->Gsatt("GKL4","seen",1);
-  pMC->Gsatt("SCL4","seen",1);
-  pMC->Gsatt("SEL4","seen",1);
-  pMC->Gsatt("CEL4","seen",1);
+  gMC->Gsatt("IWR3","seen",1);
+  gMC->Gsatt("FWR3","seen",1);
+  gMC->Gsatt("RWR3","seen",1);
+  gMC->Gsatt("MPR3","seen",1);
+  gMC->Gsatt("SPR3","seen",1);
+  gMC->Gsatt("SMR3","seen",1);
+  gMC->Gsatt("CPR3","seen",1);
+  gMC->Gsatt("C1R3","seen",1);
+  gMC->Gsatt("C2R3","seen",1);
+  gMC->Gsatt("GKR3","seen",1);
+  gMC->Gsatt("SCR3","seen",1);
+  gMC->Gsatt("SER3","seen",1);
+  gMC->Gsatt("CER3","seen",1);
+  gMC->Gsatt("IWL3","seen",1);
+  gMC->Gsatt("FWL3","seen",1);
+  gMC->Gsatt("RWL3","seen",1);
+  gMC->Gsatt("MPL3","seen",1);
+  gMC->Gsatt("SPL3","seen",1);
+  gMC->Gsatt("SML3","seen",1);
+  gMC->Gsatt("CPL3","seen",1);
+  gMC->Gsatt("C1L3","seen",1);
+  gMC->Gsatt("C2L3","seen",1);
+  gMC->Gsatt("GKL3","seen",1);
+  gMC->Gsatt("SCL3","seen",1);
+  gMC->Gsatt("SEL3","seen",1);
+  gMC->Gsatt("CEL3","seen",1);
+  gMC->Gsatt("IWR2","seen",1);
+  gMC->Gsatt("FWR2","seen",1);
+  gMC->Gsatt("RWR2","seen",1);
+  gMC->Gsatt("MPR2","seen",1);
+  gMC->Gsatt("SPR2","seen",1);
+  gMC->Gsatt("SMR2","seen",1);
+  gMC->Gsatt("CPR2","seen",1);
+  gMC->Gsatt("C1R2","seen",1);
+  gMC->Gsatt("C2R2","seen",1);
+  gMC->Gsatt("GKR2","seen",1);
+  gMC->Gsatt("SCR2","seen",1);
+  gMC->Gsatt("SER2","seen",1);
+  gMC->Gsatt("CER2","seen",1);
+  gMC->Gsatt("IWL2","seen",1);
+  gMC->Gsatt("FWL2","seen",1);
+  gMC->Gsatt("RWL2","seen",1);
+  gMC->Gsatt("MPL2","seen",1);
+  gMC->Gsatt("SPL2","seen",1);
+  gMC->Gsatt("SML2","seen",1);
+  gMC->Gsatt("CPL2","seen",1);
+  gMC->Gsatt("C1L2","seen",1);
+  gMC->Gsatt("C2L2","seen",1);
+  gMC->Gsatt("GKL2","seen",1);
+  gMC->Gsatt("SCL2","seen",1);
+  gMC->Gsatt("SEL2","seen",1);
+  gMC->Gsatt("CEL2","seen",1);
+  gMC->Gsatt("IWR1","seen",1);
+  gMC->Gsatt("FWR1","seen",1);
+  gMC->Gsatt("RWR1","seen",1);
+  gMC->Gsatt("MPR1","seen",1);
+  gMC->Gsatt("SPR1","seen",1);
+  gMC->Gsatt("SMR1","seen",1);
+  gMC->Gsatt("CPR1","seen",1);
+  gMC->Gsatt("C1R1","seen",1);
+  gMC->Gsatt("C2R1","seen",1);
+  gMC->Gsatt("GKR1","seen",1);
+  gMC->Gsatt("SCR1","seen",1);
+  gMC->Gsatt("SER1","seen",1);
+  gMC->Gsatt("CER1","seen",1);
+  gMC->Gsatt("IWL1","seen",1);
+  gMC->Gsatt("FWL1","seen",1);
+  gMC->Gsatt("RWL1","seen",1);
+  gMC->Gsatt("MPL1","seen",1);
+  gMC->Gsatt("SPL1","seen",1);
+  gMC->Gsatt("SML1","seen",1);
+  gMC->Gsatt("CPL1","seen",1);
+  gMC->Gsatt("C1L1","seen",1);
+  gMC->Gsatt("C2L1","seen",1);
+  gMC->Gsatt("GKL1","seen",1);
+  gMC->Gsatt("SCL1","seen",1);
+  gMC->Gsatt("SEL1","seen",1);
+  gMC->Gsatt("CEL1","seen",1);
+  gMC->Gsatt("IWL4","seen",1);
+  gMC->Gsatt("FWL4","seen",1);
+  gMC->Gsatt("RWL4","seen",1);
+  gMC->Gsatt("MPL4","seen",1);
+  gMC->Gsatt("SPL4","seen",1);
+  gMC->Gsatt("SML4","seen",1);
+  gMC->Gsatt("CPL4","seen",1);
+  gMC->Gsatt("C1L4","seen",1);
+  gMC->Gsatt("C2L4","seen",1);
+  gMC->Gsatt("GKL4","seen",1);
+  gMC->Gsatt("SCL4","seen",1);
+  gMC->Gsatt("SEL4","seen",1);
+  gMC->Gsatt("CEL4","seen",1);
   //
-  pMC->Gdopt("hide", "on");
-  pMC->Gdopt("shad", "on");
-  pMC->Gsatt("*", "fill", 7);
-  pMC->SetClipBox(".");
-  pMC->SetClipBox("*", 0, 1000, -1000, 1000, -1000, 1000);
-  pMC->DefaultRange();
-  pMC->Gdraw("alic", 40, 30, 0, 6, 9, .08, .08);
-  pMC->Gdhead(1111, "Forward Multiplicity Detector version 1");
-  pMC->Gdman(13, 9, "MAN");
+  gMC->Gdopt("hide", "on");
+  gMC->Gdopt("shad", "on");
+  gMC->Gsatt("*", "fill", 7);
+  gMC->SetClipBox(".");
+  gMC->SetClipBox("*", 0, 1000, -1000, 1000, -1000, 1000);
+  gMC->DefaultRange();
+  gMC->Gdraw("alic", 40, 30, 0, 6, 9, .08, .08);
+  gMC->Gdhead(1111, "Forward Multiplicity Detector version 1");
+  gMC->Gdman(13, 9, "MAN");
 }
 
 //_____________________________________________________________________________
index b2b58a7..1518e1c 100644 (file)
@@ -324,7 +324,6 @@ void AliITS::Init()
   // Initialise ITS after it has been built
   //
   Int_t i;
-  AliMC* pMC = AliMC::GetMC();
   //
   printf("\n");
   for(i=0;i<35;i++) printf("*");
@@ -333,12 +332,12 @@ void AliITS::Init()
   printf("\n");
   //
   //
-  fIdSens1=pMC->VolId("ITS1");
-  fIdSens2=pMC->VolId("ITS2");
-  fIdSens3=pMC->VolId("ITS3");
-  fIdSens4=pMC->VolId("ITS4");
-  fIdSens5=pMC->VolId("ITS5");
-  fIdSens6=pMC->VolId("ITS6");
+  fIdSens1=gMC->VolId("ITS1");
+  fIdSens2=gMC->VolId("ITS2");
+  fIdSens3=gMC->VolId("ITS3");
+  fIdSens4=gMC->VolId("ITS4");
+  fIdSens5=gMC->VolId("ITS5");
+  fIdSens6=gMC->VolId("ITS6");
   //
   for(i=0;i<80;i++) printf("*");
   printf("\n");
index bb0d594..f48691e 100644 (file)
@@ -62,7 +62,6 @@ void AliITSv0::CreateGeometry()
   */
   //End_Html
   
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t rl[6]    = { 3.9,7.6,14.,24.,40.,45. };       //SILICON LAYERS INNER RADIUS
   Float_t drl[6]   = { .755,.755,.809,.809,.7,.7 };     //THICKNESS OF LAYERS (in % radiation length)
@@ -174,172 +173,172 @@ void AliITSv0::CreateGeometry()
   dgh[0] = 3.5;
   dgh[1] = 50.;
   dgh[2] = zmax;
-  pMC->Gsvolu("ITSV", "TUBE", idtmed[275], dgh, 3);
+  gMC->Gsvolu("ITSV", "TUBE", idtmed[275], dgh, 3);
   
   // --- Place the ghost volume in its mother volume (ALIC) and make it 
   //     invisible 
   
-  pMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
-  pMC->Gsatt("ITSV", "SEEN", 0);
+  gMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+  gMC->Gsatt("ITSV", "SEEN", 0);
   
   //     ITS LAYERS (SILICON) 
   
   dits[0] = rl[0];
   dits[1] = rl[0] + drl[0];
   dits[2] = dzl[0];
-  pMC->Gsvolu("ITS1", "TUBE", idtmed[199], dits, 3);
-  pMC->Gspos("ITS1", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS1", "TUBE", idtmed[199], dits, 3);
+  gMC->Gspos("ITS1", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[1];
   dits[1] = rl[1] + drl[1];
   dits[2] = dzl[1];
-  pMC->Gsvolu("ITS2", "TUBE", idtmed[199], dits, 3);
-  pMC->Gspos("ITS2", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS2", "TUBE", idtmed[199], dits, 3);
+  gMC->Gspos("ITS2", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[2];
   dits[1] = rl[2] + drl[2];
   dits[2] = dzl[2];
-  pMC->Gsvolu("ITS3", "TUBE", idtmed[224], dits, 3);
-  pMC->Gspos("ITS3", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS3", "TUBE", idtmed[224], dits, 3);
+  gMC->Gspos("ITS3", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[3];
   dits[1] = rl[3] + drl[3];
   dits[2] = dzl[3];
-  pMC->Gsvolu("ITS4", "TUBE", idtmed[224], dits, 3);
-  pMC->Gspos("ITS4", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS4", "TUBE", idtmed[224], dits, 3);
+  gMC->Gspos("ITS4", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[4];
   dits[1] = rl[4] + drl[4];
   dits[2] = dzl[4];
-  pMC->Gsvolu("ITS5", "TUBE", idtmed[249], dits, 3);
-  pMC->Gspos("ITS5", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS5", "TUBE", idtmed[249], dits, 3);
+  gMC->Gspos("ITS5", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[5];
   dits[1] = rl[5] + drl[5];
   dits[2] = dzl[5];
-  pMC->Gsvolu("ITS6", "TUBE", idtmed[249], dits, 3);
-  pMC->Gspos("ITS6", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS6", "TUBE", idtmed[249], dits, 3);
+  gMC->Gspos("ITS6", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   //    ELECTRONICS BOXES   
   //     PCB (layer #3 and #4) 
   
-  pMC->Gsvolu("IPCB", "TUBE", idtmed[233], dits, 0);
+  gMC->Gsvolu("IPCB", "TUBE", idtmed[233], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drpcb[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IPCB", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IPCB", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPCB", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPCB", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     COPPER (layer #3 and #4) 
   
-  pMC->Gsvolu("ICO2", "TUBE", idtmed[234], dits, 0);
+  gMC->Gsvolu("ICO2", "TUBE", idtmed[234], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i];
     dits[1] = dits[0] + drcu[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICO2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICO2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     CERAMICS (layer #3 and #4) 
   
-  pMC->Gsvolu("ICER", "TUBE", idtmed[235], dits, 0);
+  gMC->Gsvolu("ICER", "TUBE", idtmed[235], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i] + drcu[i];
     dits[1] = dits[0] + drcer[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICER", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICER", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICER", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICER", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     SILICON (layer #3 and #4) 
   
-  pMC->Gsvolu("ISI2", "TUBE", idtmed[226], dits, 0);
+  gMC->Gsvolu("ISI2", "TUBE", idtmed[226], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i] + drcu[i] + drcer[i];
     dits[1] = dits[0] + drsi[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i - 1] + dits[2];
-    pMC->Gsposp("ISI2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISI2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     PLASTIC (G10FR4) (layer #5 and #6) 
   
-  pMC->Gsvolu("IPLA", "TUBE", idtmed[262], dits, 0);
+  gMC->Gsvolu("IPLA", "TUBE", idtmed[262], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drpla[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IPLA", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IPLA", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPLA", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPLA", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     COPPER (layer #5 and #6) 
   
-  pMC->Gsvolu("ICO3", "TUBE", idtmed[259], dits, 0);
+  gMC->Gsvolu("ICO3", "TUBE", idtmed[259], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i];
     dits[1] = dits[0] + drcu[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICO3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICO3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     EPOXY (layer #5 and #6) 
   
-  pMC->Gsvolu("IEPX", "TUBE", idtmed[262], dits, 0);
+  gMC->Gsvolu("IEPX", "TUBE", idtmed[262], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i] + drcu[i];
     dits[1] = dits[0] + drepx[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IEPX", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IEPX", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IEPX", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IEPX", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     SILICON (layer #5 and #6) 
   
-  pMC->Gsvolu("ISI3", "TUBE", idtmed[251], dits, 0);
+  gMC->Gsvolu("ISI3", "TUBE", idtmed[251], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i] + drcu[i] + drepx[i];
     dits[1] = dits[0] + drsi[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ISI3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISI3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //    SUPPORT 
   
-  pMC->Gsvolu("ISUP", "TUBE", idtmed[274], dits, 0);
+  gMC->Gsvolu("ISUP", "TUBE", idtmed[274], dits, 0);
   for (i = 0; i < 6; ++i) {
     dits[0] = rl[i];
     if (i < 5) dits[1] = rl[i+1];
     else       dits[1] = rlim;
     dits[2] = drsu / 2.;
     zpos = dzl[i] + dzb[i] + dits[2];
-    pMC->Gsposp("ISUP", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISUP", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISUP", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISUP", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   // CABLES (HORIZONTAL) 
   
-  pMC->Gsvolu("ICHO", "TUBE", idtmed[278], dits, 0);
+  gMC->Gsvolu("ICHO", "TUBE", idtmed[278], dits, 0);
   for (i = 0; i < 6; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drca;
     dits[2] = (rzcone + TMath::Tan(acone) * (rl[i] - rl[0]) - (dzl[i]+ dzb[i] + drsu)) / 2.;
     zpos = dzl[i] + dzb[i] + drsu + dits[2];
-    pMC->Gsposp("ICHO", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICHO", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICHO", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICHO", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   //    DEFINE A CONICAL GHOST VOLUME FOR THE PHI SEGMENTATION 
   pcits[0] = 0.;
@@ -351,21 +350,21 @@ void AliITSv0::CreateGeometry()
   pcits[6] = pcits[3] + TMath::Tan(acone) * (rlim - rl[0]);
   pcits[7] = rlim - rl[0] + 3.5;
   pcits[8] = rlim;
-  pMC->Gsvolu("ICMO", "PCON", idtmed[275], pcits, 9);
+  gMC->Gsvolu("ICMO", "PCON", idtmed[275], pcits, 9);
   AliMatrix(idrotm[200], 90., 0., 90., 90., 180., 0.);
-  pMC->Gspos("ICMO", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-  pMC->Gspos("ICMO", 2, "ITSV", 0., 0., 0., idrotm[200], "ONLY");
+  gMC->Gspos("ICMO", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gspos("ICMO", 2, "ITSV", 0., 0., 0., idrotm[200], "ONLY");
   
   //     DIVIDE INTO NSEC PHI-SECTIONS 
   
-  pMC->Gsdvn("ICMD", "ICMO", nsec, 2);
-  pMC->Gsatt("ICMO", "SEEN", 0);
-  pMC->Gsatt("ICMD", "SEEN", 0);
+  gMC->Gsdvn("ICMD", "ICMO", nsec, 2);
+  gMC->Gsatt("ICMO", "SEEN", 0);
+  gMC->Gsatt("ICMD", "SEEN", 0);
   
   //     CONICAL CABLES 
   
   pcits[2] = 2.;
-  pMC->Gsvolu("ICCO", "PCON", idtmed[278], pcits, 0);
+  gMC->Gsvolu("ICCO", "PCON", idtmed[278], pcits, 0);
   for (i = 1; i < 6; ++i) {
     pcits[0] = -dphi[i] / 2.;
     pcits[1] = dphi[i];
@@ -387,7 +386,7 @@ void AliITSv0::CreateGeometry()
     pcits[7] = rl[i] + dzco / TMath::Tan(acone) - drcac[i] / TMath::Sin(acone);
     pcits[8] = rl[i] + dzco / TMath::Tan(acone);
     
-    pMC->Gsposp("ICCO", i, "ICMD", 0., 0., 0., 0, "ONLY", pcits, 9);
+    gMC->Gsposp("ICCO", i, "ICMD", 0., 0., 0., 0, "ONLY", pcits, 9);
     
   }
   zend = pcits[6];
@@ -406,18 +405,18 @@ void AliITSv0::CreateGeometry()
   pcits[8] = pcits[4] + (pcits[6] - pcits[3]) * TMath::Tan(acable * kDegrad);
   pcits[7] = pcits[8] - drca_tpc;
   AliMatrix(idrotm[200], 90., 0., 90., 90., 180., 0.);
-  pMC->Gsvolu("ICCM", "PCON", idtmed[275], pcits, 9);
-  pMC->Gspos("ICCM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
-  pMC->Gspos("ICCM", 2, "ALIC", 0., 0., 0., idrotm[200], "ONLY");
-  pMC->Gsdvn("ITMD", "ICCM", nsec, 2);
-  pMC->Gsatt("ITMD", "SEEN", 0);
-  pMC->Gsatt("ICCM", "SEEN", 0);
+  gMC->Gsvolu("ICCM", "PCON", idtmed[275], pcits, 9);
+  gMC->Gspos("ICCM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+  gMC->Gspos("ICCM", 2, "ALIC", 0., 0., 0., idrotm[200], "ONLY");
+  gMC->Gsdvn("ITMD", "ICCM", nsec, 2);
+  gMC->Gsatt("ITMD", "SEEN", 0);
+  gMC->Gsatt("ICCM", "SEEN", 0);
   
   //     NOW PLACE SEGMENTS WITH DECREASING PHI SEGMENTS INTO THE 
   //     GHOST-VOLUME 
   
   pcits[2] = 2.;
-  pMC->Gsvolu("ITTT", "PCON", idtmed[278], pcits, 0);
+  gMC->Gsvolu("ITTT", "PCON", idtmed[278], pcits, 0);
   r0 = rend;
   z0 = zend;
   dz = (xltpc - zend) / 9.;
@@ -434,13 +433,13 @@ void AliITSv0::CreateGeometry()
     pcits[8] = r0 + (pcits[6] - z0) * TMath::Tan(acable * kDegrad);
     pcits[7] = pcits[8] - drca_tpc;
     
-    pMC->Gsposp("ITTT", i+1, "ITMD", 0., 0., 0., 0, "ONLY", pcits, 9);
+    gMC->Gsposp("ITTT", i+1, "ITMD", 0., 0., 0., 0, "ONLY", pcits, 9);
   }
   
   // --- Outputs the geometry tree in the EUCLID/CAD format 
   
   if (fEuclidOut) {
-    pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+    gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
   }
 }
  
@@ -451,41 +450,40 @@ void AliITSv0::DrawModule()
   // Draw a shaded view of the FMD version 1
   //
   
-  AliMC* pMC = AliMC::GetMC();
   
   // Set everything unseen
-  pMC->Gsatt("*", "seen", -1);
+  gMC->Gsatt("*", "seen", -1);
   // 
   // Set ALIC mother visible
-  pMC->Gsatt("ALIC","SEEN",0);
+  gMC->Gsatt("ALIC","SEEN",0);
   //
   // Set the volumes visible
-  pMC->Gsatt("ITSV","SEEN",0);
-  pMC->Gsatt("ITS1","SEEN",1);
-  pMC->Gsatt("ITS2","SEEN",1);
-  pMC->Gsatt("ITS3","SEEN",1);
-  pMC->Gsatt("ITS4","SEEN",1);
-  pMC->Gsatt("ITS5","SEEN",1);
-  pMC->Gsatt("ITS6","SEEN",1);
-  pMC->Gsatt("ISI2","SEEN",1);
-  pMC->Gsatt("IPLA","SEEN",1);
-  pMC->Gsatt("ICHO","SEEN",1);
-  pMC->Gsatt("ICMO","SEEN",0);
-  pMC->Gsatt("ICMD","SEEN",0);
-  pMC->Gsatt("ICCO","SEEN",1);
-  pMC->Gsatt("ICCM","SEEN",0);
-  pMC->Gsatt("ITMD","SEEN",0);
-  pMC->Gsatt("ITTT","SEEN",1);
+  gMC->Gsatt("ITSV","SEEN",0);
+  gMC->Gsatt("ITS1","SEEN",1);
+  gMC->Gsatt("ITS2","SEEN",1);
+  gMC->Gsatt("ITS3","SEEN",1);
+  gMC->Gsatt("ITS4","SEEN",1);
+  gMC->Gsatt("ITS5","SEEN",1);
+  gMC->Gsatt("ITS6","SEEN",1);
+  gMC->Gsatt("ISI2","SEEN",1);
+  gMC->Gsatt("IPLA","SEEN",1);
+  gMC->Gsatt("ICHO","SEEN",1);
+  gMC->Gsatt("ICMO","SEEN",0);
+  gMC->Gsatt("ICMD","SEEN",0);
+  gMC->Gsatt("ICCO","SEEN",1);
+  gMC->Gsatt("ICCM","SEEN",0);
+  gMC->Gsatt("ITMD","SEEN",0);
+  gMC->Gsatt("ITTT","SEEN",1);
   //
-  pMC->Gdopt("hide", "on");
-  pMC->Gdopt("shad", "on");
-  pMC->Gsatt("*", "fill", 7);
-  pMC->SetClipBox(".");
-  pMC->SetClipBox("*", 0, 300, -300, 300, -300, 300);
-  pMC->DefaultRange();
-  pMC->Gdraw("alic", 40, 30, 0, 11, 10, .05, .05);
-  pMC->Gdhead(1111, "Inner Tracking System Version 0");
-  pMC->Gdman(16, 6, "MAN");
+  gMC->Gdopt("hide", "on");
+  gMC->Gdopt("shad", "on");
+  gMC->Gsatt("*", "fill", 7);
+  gMC->SetClipBox(".");
+  gMC->SetClipBox("*", 0, 300, -300, 300, -300, 300);
+  gMC->DefaultRange();
+  gMC->Gdraw("alic", 40, 30, 0, 11, 10, .05, .05);
+  gMC->Gdhead(1111, "Inner Tracking System Version 0");
+  gMC->Gdman(16, 6, "MAN");
 }
 
 //_____________________________________________________________________________
@@ -500,53 +498,52 @@ void AliITSv0::StepManager()
   Float_t       position[3];
   Float_t       momentum[4];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC = AliMC::GetMC();
   //
-  if(pMC->TrackCharge() && pMC->Edep()) {
+  if(gMC->TrackCharge() && gMC->Edep()) {
     //
     // Only entering charged tracks
-    if((id=pMC->CurrentVol(0,copy))==fIdSens1) {  
+    if((id=gMC->CurrentVol(0,copy))==fIdSens1) {  
       vol[0]=1;
-      id=pMC->CurrentVolOff(1,0,copy);      
+      id=gMC->CurrentVolOff(1,0,copy);      
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                       
     } else if(id==fIdSens2) {
       vol[0]=2;
-      id=pMC->CurrentVolOff(1,0,copy);       
+      id=gMC->CurrentVolOff(1,0,copy);       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                    
     } else if(id==fIdSens3) {
       vol[0]=3;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;             
     } else if(id==fIdSens4) {
       vol[0]=4;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                  
     } else if(id==fIdSens5) {
       vol[0]=5;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;               
     } else if(id==fIdSens6) {
       vol[0]=6;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                      
     } else return;
-    pMC->TrackPosition(position);
-    pMC->TrackMomentum(momentum);
+    gMC->TrackPosition(position);
+    gMC->TrackMomentum(momentum);
     hits[0]=position[0];
     hits[1]=position[1];
     hits[2]=position[2];          
     hits[3]=momentum[0]*momentum[3];
     hits[4]=momentum[1]*momentum[3];
     hits[5]=momentum[2]*momentum[3];          
-    hits[6]=pMC->Edep();
+    hits[6]=gMC->Edep();
     new(lhits[fNhits++]) AliITShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
   }    
 }
index c20da4c..dd90bef 100644 (file)
@@ -66,7 +66,6 @@ void AliITSv1::CreateGeometry()
   //End_Html
   
 
-  AliMC* pMC = AliMC::GetMC();
   
   Float_t drcer[6] = { 0.,0.,.08,.08,0.,0. };           //CERAMICS THICKNESS
   Float_t drepx[6] = { 0.,0.,0.,0.,.5357,.5357 };       //EPOXY THICKNESS
@@ -172,173 +171,173 @@ void AliITSv1::CreateGeometry()
   dgh[0] = 3.5;
   dgh[1] = 50.;
   dgh[2] = zmax;
-  pMC->Gsvolu("ITSV", "TUBE", idtmed[275], dgh, 3);
+  gMC->Gsvolu("ITSV", "TUBE", idtmed[275], dgh, 3);
   
   // --- Place the ghost volume in its mother volume (ALIC) and make it 
   //     invisible 
   
-  pMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
-  pMC->Gsatt("ITSV", "SEEN", 0);
+  gMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+  gMC->Gsatt("ITSV", "SEEN", 0);
   
   //     ITS LAYERS (SILICON) 
   
   dits[0] = rl[0];
   dits[1] = rl[0] + drl[0];
   dits[2] = dzl[0];
-  pMC->Gsvolu("ITS1", "TUBE", idtmed[199], dits, 3);
-  pMC->Gspos("ITS1", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS1", "TUBE", idtmed[199], dits, 3);
+  gMC->Gspos("ITS1", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[1];
   dits[1] = rl[1] + drl[1];
   dits[2] = dzl[1];
-  pMC->Gsvolu("ITS2", "TUBE", idtmed[199], dits, 3);
-  pMC->Gspos("ITS2", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS2", "TUBE", idtmed[199], dits, 3);
+  gMC->Gspos("ITS2", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[2];
   dits[1] = rl[2] + drl[2];
   dits[2] = dzl[2];
-  pMC->Gsvolu("ITS3", "TUBE", idtmed[224], dits, 3);
-  pMC->Gspos("ITS3", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS3", "TUBE", idtmed[224], dits, 3);
+  gMC->Gspos("ITS3", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[3];
   dits[1] = rl[3] + drl[3];
   dits[2] = dzl[3];
-  pMC->Gsvolu("ITS4", "TUBE", idtmed[224], dits, 3);
-  pMC->Gspos("ITS4", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS4", "TUBE", idtmed[224], dits, 3);
+  gMC->Gspos("ITS4", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[4];
   dits[1] = rl[4] + drl[4];
   dits[2] = dzl[4];
-  pMC->Gsvolu("ITS5", "TUBE", idtmed[249], dits, 3);
-  pMC->Gspos("ITS5", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS5", "TUBE", idtmed[249], dits, 3);
+  gMC->Gspos("ITS5", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   dits[0] = rl[5];
   dits[1] = rl[5] + drl[5];
   dits[2] = dzl[5];
-  pMC->Gsvolu("ITS6", "TUBE", idtmed[249], dits, 3);
-  pMC->Gspos("ITS6", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsvolu("ITS6", "TUBE", idtmed[249], dits, 3);
+  gMC->Gspos("ITS6", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   
   //    ELECTRONICS BOXES 
   
   //     PCB (layer #3 and #4) 
   
-  pMC->Gsvolu("IPCB", "TUBE", idtmed[233], dits, 0);
+  gMC->Gsvolu("IPCB", "TUBE", idtmed[233], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drpcb[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IPCB", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IPCB", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPCB", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPCB", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     COPPER (layer #3 and #4) 
   
-  pMC->Gsvolu("ICO2", "TUBE", idtmed[234], dits, 0);
+  gMC->Gsvolu("ICO2", "TUBE", idtmed[234], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i];
     dits[1] = dits[0] + drcu[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICO2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICO2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     CERAMICS (layer #3 and #4) 
   
-  pMC->Gsvolu("ICER", "TUBE", idtmed[235], dits, 0);
+  gMC->Gsvolu("ICER", "TUBE", idtmed[235], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i] + drcu[i];
     dits[1] = dits[0] + drcer[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICER", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICER", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICER", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICER", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     SILICON (layer #3 and #4) 
   
-  pMC->Gsvolu("ISI2", "TUBE", idtmed[226], dits, 0);
+  gMC->Gsvolu("ISI2", "TUBE", idtmed[226], dits, 0);
   for (i = 2; i < 4; ++i) {
     dits[0] = rl[i] + drpcb[i] + drcu[i] + drcer[i];
     dits[1] = dits[0] + drsi[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ISI2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISI2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI2", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI2", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     PLASTIC (G10FR4) (layer #5 and #6) 
   
-  pMC->Gsvolu("IPLA", "TUBE", idtmed[262], dits, 0);
+  gMC->Gsvolu("IPLA", "TUBE", idtmed[262], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drpla[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IPLA", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IPLA", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPLA", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IPLA", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     COPPER (layer #5 and #6) 
   
-  pMC->Gsvolu("ICO3", "TUBE", idtmed[259], dits, 0);
+  gMC->Gsvolu("ICO3", "TUBE", idtmed[259], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i];
     dits[1] = dits[0] + drcu[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ICO3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICO3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICO3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     EPOXY (layer #5 and #6) 
   
-  pMC->Gsvolu("IEPX", "TUBE", idtmed[262], dits, 0);
+  gMC->Gsvolu("IEPX", "TUBE", idtmed[262], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i] + drcu[i];
     dits[1] = dits[0] + drepx[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("IEPX", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("IEPX", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IEPX", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("IEPX", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //     SILICON (layer #5 and #6) 
   
-  pMC->Gsvolu("ISI3", "TUBE", idtmed[251], dits, 0);
+  gMC->Gsvolu("ISI3", "TUBE", idtmed[251], dits, 0);
   for (i = 4; i < 6; ++i) {
     dits[0] = rl[i] + drpla[i] + drcu[i] + drepx[i];
     dits[1] = dits[0] + drsi[i];
     dits[2] = dzb[i] / 2.;
     zpos = dzl[i] + dits[2];
-    pMC->Gsposp("ISI3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISI3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI3", i-1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISI3", i+1, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   //    SUPPORT 
   
-  pMC->Gsvolu("ISUP", "TUBE", idtmed[274], dits, 0);
+  gMC->Gsvolu("ISUP", "TUBE", idtmed[274], dits, 0);
   for (i = 0; i < 6; ++i) {
     dits[0] = rl[i];
     if (i < 5) dits[1] = rl[i];
     else       dits[1] = rlim;
     dits[2] = drsu / 2.;
     zpos = dzl[i] + dzb[i] + dits[2];
-    pMC->Gsposp("ISUP", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ISUP", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISUP", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ISUP", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   
   // CABLES (HORIZONTAL) 
   
-  pMC->Gsvolu("ICHO", "TUBE", idtmed[278], dits, 0);
+  gMC->Gsvolu("ICHO", "TUBE", idtmed[278], dits, 0);
   for (i = 0; i < 6; ++i) {
     dits[0] = rl[i];
     dits[1] = dits[0] + drca;
     dits[2] = (rzcone + TMath::Tan(acone) * (rl[i] - rl[0]) - (dzl[i]+ dzb[i] + drsu)) / 2.;
     zpos = dzl[i - 1] + dzb[i] + drsu + dits[2];
-    pMC->Gsposp("ICHO", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
-    pMC->Gsposp("ICHO", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICHO", i+1, "ITSV", 0., 0., zpos, 0, "ONLY", dits, 3);
+    gMC->Gsposp("ICHO", i+7, "ITSV", 0., 0.,-zpos, 0, "ONLY", dits, 3);
   }
   //    DEFINE A CONICAL GHOST VOLUME FOR THE PHI SEGMENTATION 
   pcits[0] = 0.;
@@ -350,21 +349,21 @@ void AliITSv1::CreateGeometry()
   pcits[6] = pcits[3] + TMath::Tan(acone) * (rlim - rl[0]);
   pcits[7] = rlim - rl[0] + 3.5;
   pcits[8] = rlim;
-  pMC->Gsvolu("ICMO", "PCON", idtmed[275], pcits, 9);
+  gMC->Gsvolu("ICMO", "PCON", idtmed[275], pcits, 9);
   AliMatrix(idrotm[200], 90., 0., 90., 90., 180., 0.);
-  pMC->Gspos("ICMO", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-  pMC->Gspos("ICMO", 2, "ITSV", 0., 0., 0., idrotm[200], "ONLY");
+  gMC->Gspos("ICMO", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gspos("ICMO", 2, "ITSV", 0., 0., 0., idrotm[200], "ONLY");
   
   //     DIVIDE INTO NSEC PHI-SECTIONS 
   
-  pMC->Gsdvn("ICMD", "ICMO", nsec, 2);
-  pMC->Gsatt("ICMO", "SEEN", 0);
-  pMC->Gsatt("ICMD", "SEEN", 0);
+  gMC->Gsdvn("ICMD", "ICMO", nsec, 2);
+  gMC->Gsatt("ICMO", "SEEN", 0);
+  gMC->Gsatt("ICMD", "SEEN", 0);
   
   //     CONICAL CABLES 
   
   pcits[2] = 2.;
-  pMC->Gsvolu("ICCO", "PCON", idtmed[278], pcits, 0);
+  gMC->Gsvolu("ICCO", "PCON", idtmed[278], pcits, 0);
   for (i = 1; i < 6; ++i) {
     pcits[0] = -dphi[i] / 2.;
     pcits[1] = dphi[i];
@@ -386,7 +385,7 @@ void AliITSv1::CreateGeometry()
     pcits[7] = rl[i] + dzco / TMath::Tan(acone) - drcac[i] / TMath::Sin(acone);
     pcits[8] = rl[i] + dzco / TMath::Tan(acone);
     
-    pMC->Gsposp("ICCO", i, "ICMD", 0., 0., 0., 0, "ONLY", pcits, 9);
+    gMC->Gsposp("ICCO", i, "ICMD", 0., 0., 0., 0, "ONLY", pcits, 9);
     
   }
   zend = pcits[6];
@@ -405,18 +404,18 @@ void AliITSv1::CreateGeometry()
   pcits[8] = pcits[4] + (pcits[6] - pcits[3]) * TMath::Tan(acable * kDegrad);
   pcits[7] = pcits[8] - drca_tpc;
   AliMatrix(idrotm[200], 90., 0., 90., 90., 180., 0.);
-  pMC->Gsvolu("ICCM", "PCON", idtmed[275], pcits, 9);
-  pMC->Gspos("ICCM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
-  pMC->Gspos("ICCM", 2, "ALIC", 0., 0., 0., idrotm[200], "ONLY");
-  pMC->Gsdvn("ITMD", "ICCM", nsec, 2);
-  pMC->Gsatt("ITMD", "SEEN", 0);
-  pMC->Gsatt("ICCM", "SEEN", 0);
+  gMC->Gsvolu("ICCM", "PCON", idtmed[275], pcits, 9);
+  gMC->Gspos("ICCM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+  gMC->Gspos("ICCM", 2, "ALIC", 0., 0., 0., idrotm[200], "ONLY");
+  gMC->Gsdvn("ITMD", "ICCM", nsec, 2);
+  gMC->Gsatt("ITMD", "SEEN", 0);
+  gMC->Gsatt("ICCM", "SEEN", 0);
   
   //     NOW PLACE SEGMENTS WITH DECREASING PHI SEGMENTS INTO THE 
   //     GHOST-VOLUME 
   
   pcits[2] = 2.;
-  pMC->Gsvolu("ITTT", "PCON", idtmed[278], pcits, 0);
+  gMC->Gsvolu("ITTT", "PCON", idtmed[278], pcits, 0);
   r0 = rend;
   z0 = zend;
   dz = (xltpc - zend) / 9.;
@@ -433,13 +432,13 @@ void AliITSv1::CreateGeometry()
     pcits[8] = r0 + (pcits[6] - z0) * TMath::Tan(acable * kDegrad);
     pcits[7] = pcits[8] - drca_tpc;
     
-    pMC->Gsposp("ITTT", i+1, "ITMD", 0., 0., 0., 0, "ONLY", pcits, 9);
+    gMC->Gsposp("ITTT", i+1, "ITMD", 0., 0., 0., 0, "ONLY", pcits, 9);
   }
   
   // --- Outputs the geometry tree in the EUCLID/CAD format 
   
   if (fEuclidOut) {
-    pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+    gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
   }
 }
 
@@ -468,50 +467,49 @@ void AliITSv1::DrawModule()
   // Draw a shaded view of the FMD version 1
   //
 
-  AliMC* pMC = AliMC::GetMC();
   
   // Set everything unseen
-  pMC->Gsatt("*", "seen", -1);
+  gMC->Gsatt("*", "seen", -1);
   // 
   // Set ALIC mother visible
-  pMC->Gsatt("ALIC","SEEN",0);
+  gMC->Gsatt("ALIC","SEEN",0);
   //
   // Set the volumes visible
-  pMC->Gsatt("ITSV","SEEN",0);
-  pMC->Gsatt("ITS1","SEEN",1);
-  pMC->Gsatt("ITS2","SEEN",1);
-  pMC->Gsatt("ITS3","SEEN",1);
-  pMC->Gsatt("ITS4","SEEN",1);
-  pMC->Gsatt("ITS5","SEEN",1);
-  pMC->Gsatt("ITS6","SEEN",1);
+  gMC->Gsatt("ITSV","SEEN",0);
+  gMC->Gsatt("ITS1","SEEN",1);
+  gMC->Gsatt("ITS2","SEEN",1);
+  gMC->Gsatt("ITS3","SEEN",1);
+  gMC->Gsatt("ITS4","SEEN",1);
+  gMC->Gsatt("ITS5","SEEN",1);
+  gMC->Gsatt("ITS6","SEEN",1);
 
-  pMC->Gsatt("IPCB","SEEN",1);
-  pMC->Gsatt("ICO2","SEEN",1);
-  pMC->Gsatt("ICER","SEEN",0);
-  pMC->Gsatt("ISI2","SEEN",0);
-  pMC->Gsatt("IPLA","SEEN",0);
-  pMC->Gsatt("ICO3","SEEN",0);
-  pMC->Gsatt("IEPX","SEEN",0);
-  pMC->Gsatt("ISI3","SEEN",1);
-  pMC->Gsatt("ISUP","SEEN",0);
-  pMC->Gsatt("ICHO","SEEN",0);
-  pMC->Gsatt("ICMO","SEEN",0);
-  pMC->Gsatt("ICMD","SEEN",0);
-  pMC->Gsatt("ICCO","SEEN",1);
-  pMC->Gsatt("ICCM","SEEN",0);
-  pMC->Gsatt("ITMD","SEEN",0);
-  pMC->Gsatt("ITTT","SEEN",1);
+  gMC->Gsatt("IPCB","SEEN",1);
+  gMC->Gsatt("ICO2","SEEN",1);
+  gMC->Gsatt("ICER","SEEN",0);
+  gMC->Gsatt("ISI2","SEEN",0);
+  gMC->Gsatt("IPLA","SEEN",0);
+  gMC->Gsatt("ICO3","SEEN",0);
+  gMC->Gsatt("IEPX","SEEN",0);
+  gMC->Gsatt("ISI3","SEEN",1);
+  gMC->Gsatt("ISUP","SEEN",0);
+  gMC->Gsatt("ICHO","SEEN",0);
+  gMC->Gsatt("ICMO","SEEN",0);
+  gMC->Gsatt("ICMD","SEEN",0);
+  gMC->Gsatt("ICCO","SEEN",1);
+  gMC->Gsatt("ICCM","SEEN",0);
+  gMC->Gsatt("ITMD","SEEN",0);
+  gMC->Gsatt("ITTT","SEEN",1);
 
   //
-  pMC->Gdopt("hide", "on");
-  pMC->Gdopt("shad", "on");
-  pMC->Gsatt("*", "fill", 7);
-  pMC->SetClipBox(".");
-  pMC->SetClipBox("*", 0, 300, -300, 300, -300, 300);
-  pMC->DefaultRange();
-  pMC->Gdraw("alic", 40, 30, 0, 11, 10, .07, .07);
-  pMC->Gdhead(1111, "Inner Tracking System Version 1");
-  pMC->Gdman(17, 6, "MAN");
+  gMC->Gdopt("hide", "on");
+  gMC->Gdopt("shad", "on");
+  gMC->Gsatt("*", "fill", 7);
+  gMC->SetClipBox(".");
+  gMC->SetClipBox("*", 0, 300, -300, 300, -300, 300);
+  gMC->DefaultRange();
+  gMC->Gdraw("alic", 40, 30, 0, 11, 10, .07, .07);
+  gMC->Gdhead(1111, "Inner Tracking System Version 1");
+  gMC->Gdman(17, 6, "MAN");
 }
 
 //_____________________________________________________________________________
@@ -526,53 +524,52 @@ void AliITSv1::StepManager()
   Float_t       position[3];
   Float_t       momentum[4];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC = AliMC::GetMC();
   //
-  if(pMC->TrackCharge() && pMC->Edep()) {
+  if(gMC->TrackCharge() && gMC->Edep()) {
     //
     // Only entering charged tracks
-    if((id=pMC->CurrentVol(0,copy))==fIdSens1) {  
+    if((id=gMC->CurrentVol(0,copy))==fIdSens1) {  
       vol[0]=1;
-      id=pMC->CurrentVolOff(1,0,copy);      
+      id=gMC->CurrentVolOff(1,0,copy);      
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                       
     } else if(id==fIdSens2) {
       vol[0]=2;
-      id=pMC->CurrentVolOff(1,0,copy);       
+      id=gMC->CurrentVolOff(1,0,copy);       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                    
     } else if(id==fIdSens3) {
       vol[0]=3;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;             
     } else if(id==fIdSens4) {
       vol[0]=4;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                  
     } else if(id==fIdSens5) {
       vol[0]=5;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;               
     } else if(id==fIdSens6) {
       vol[0]=6;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                      
     } else return;
-    pMC->TrackPosition(position);
-    pMC->TrackMomentum(momentum);
+    gMC->TrackPosition(position);
+    gMC->TrackMomentum(momentum);
     hits[0]=position[0];
     hits[1]=position[1];
     hits[2]=position[2];          
     hits[3]=momentum[0]*momentum[3];
     hits[4]=momentum[1]*momentum[3];
     hits[5]=momentum[2]*momentum[3];        
-    hits[6]=pMC->Edep();
+    hits[6]=gMC->Edep();
     new(lhits[fNhits++]) AliITShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
   }      
 }
index 5d9cfc0..8235833 100644 (file)
@@ -64,7 +64,6 @@ void AliITSv3::CreateGeometry()
   */
   //End_Html
 
-  AliMC* pMC = AliMC::GetMC();
   
   const Float_t xx[14] = { 0.,0.,-14.002,-6.288,-25.212,-16.292,-35.713,-26.401,
                           -45.34,-36.772,-18.74,-12.814,-14.358,0. };
@@ -148,13 +147,13 @@ void AliITSv3::CreateGeometry()
   dgh[12] = 70;
   dgh[13] = 49.999;
   dgh[14] = 49.999;
-  pMC->Gsvolu("ITSV", "PCON", idtmed[275], dgh, 15);
+  gMC->Gsvolu("ITSV", "PCON", idtmed[275], dgh, 15);
   
   // --- Place the ghost volume in its mother volume (ALIC) and make it 
   //     invisible 
   
-  pMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
-  pMC->Gsatt("ITSV", "SEEN", 0);
+  gMC->Gspos("ITSV", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+  gMC->Gsatt("ITSV", "SEEN", 0);
   
   //************************************************************************
   //*                                                                      *
@@ -184,13 +183,13 @@ void AliITSv3::CreateGeometry()
   dgh[12] = 25+(9-3.01)/xxm;
   dgh[13] = 9;
   dgh[14] = 9;
-  pMC->Gsvolu("IT12", "PCON", idtmed[275], dgh, 15);
+  gMC->Gsvolu("IT12", "PCON", idtmed[275], dgh, 15);
   
   // --- Place the ghost volume in its mother volume (ITSV) and make it 
   //     invisible 
   
-  pMC->Gspos("IT12", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-  pMC->Gsatt("IT12", "SEEN", 0);
+  gMC->Gspos("IT12", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsatt("IT12", "SEEN", 0);
   
   // --- Define a ghost volume containing a single element of layer #1 
   //     and fill it with air or vacuum 
@@ -198,30 +197,30 @@ void AliITSv3::CreateGeometry()
   dbox1[0] = 0.005+0.01+0.0075;
   dbox1[1] = .79;
   dbox1[2] = 12.67;
-  pMC->Gsvolu("IPV1", "BOX ", idtmed[203], dbox1, 3);
+  gMC->Gsvolu("IPV1", "BOX ", idtmed[203], dbox1, 3);
   
   //--- Divide each element of layer #1 in three ladders along the beam direction
   
-  pMC->Gsdvn("IPB1", "IPV1", 3, 3);
+  gMC->Gsdvn("IPB1", "IPV1", 3, 3);
   
   // --- Make the ghost volumes invisible 
   
-  pMC->Gsatt("IPV1", "SEEN", 0);
-  pMC->Gsatt("IPB1", "SEEN", 0);
+  gMC->Gsatt("IPV1", "SEEN", 0);
+  gMC->Gsatt("IPB1", "SEEN", 0);
   
   // --- Define a volume containing the chip of pixels (silicon, layer #1) 
   
   dchi[0] = .005;
   dchi[1] = .79;
   dchi[2] = dbox1[2] / 3.;
-  pMC->Gsvolu("ICH1", "BOX ", idtmed[200], dchi, 3);
+  gMC->Gsvolu("ICH1", "BOX ", idtmed[200], dchi, 3);
   
   // --- Define a volume containing the bus of pixels (silicon, layer #1) 
   
   dbus[0] = .01;
   dbus[1] = .64;
   dbus[2] = 4.19;
-  pMC->Gsvolu("IBU1", "BOX ", idtmed[201], dbus, 3);
+  gMC->Gsvolu("IBU1", "BOX ", idtmed[201], dbus, 3);
   
   // --- Define a volume containing the sensitive part of pixels 
   //     (silicon, layer #1) 
@@ -229,28 +228,28 @@ void AliITSv3::CreateGeometry()
   dits[0] = .0075;
   dits[1] = .64;
   dits[2] = 4.19;
-  pMC->Gsvolu("ITS1", "BOX ", idtmed[199], dits, 3);
+  gMC->Gsvolu("ITS1", "BOX ", idtmed[199], dits, 3);
   
   // --- Place the chip into its mother (IPB1) 
   
   xpos = dbox1[0] - dchi[0];
   ypos = 0.;
   zpos = 0.;
-  pMC->Gspos("ICH1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("ICH1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the sensitive volume into its mother (IPB1) 
   
   xpos = dbox1[0] - dchi[0] * 2. - dits[0];
   ypos = dchi[1] - dits[1];
   zpos = -(dchi[2] - dits[2]);
-  pMC->Gspos("ITS1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("ITS1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the bus into its mother (IPB1) 
   
   xpos = dbox1[0] - dchi[0] * 2. - dits[0] * 2. - dbus[0];
   ypos = dchi[1] - dbus[1];
   zpos = -(dchi[2] - dbus[2]);
-  pMC->Gspos("IBU1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IBU1", 1, "IPB1", xpos, ypos, zpos, 0, "ONLY");
 
   // --- Define a ghost volume containing a single element of layer #2 
   //     and fill it with air or vacuum 
@@ -258,30 +257,30 @@ void AliITSv3::CreateGeometry()
   dbox2[0] = 0.005+0.01+0.0075;
   dbox2[1] = .79;
   dbox2[2] = 16.91;
-  pMC->Gsvolu("IPV2", "BOX ", idtmed[203], dbox2, 3);
+  gMC->Gsvolu("IPV2", "BOX ", idtmed[203], dbox2, 3);
   
   //--- Divide each element of layer #2 in four ladders along the beam direction
   
-  pMC->Gsdvn("IPB2", "IPV2", 4, 3);
+  gMC->Gsdvn("IPB2", "IPV2", 4, 3);
   
   // --- Make the ghost volumes invisible 
   
-  pMC->Gsatt("IPV2", "SEEN", 0);
-  pMC->Gsatt("IPB2", "SEEN", 0);
+  gMC->Gsatt("IPV2", "SEEN", 0);
+  gMC->Gsatt("IPB2", "SEEN", 0);
   
   // --- Define a volume containing the chip of pixels (silicon, layer #2) 
   
   dchi[0] = .005;
   dchi[1] = .79;
   dchi[2] = dbox2[2] / 4.;
-  pMC->Gsvolu("ICH2", "BOX ", idtmed[200], dchi, 3);
+  gMC->Gsvolu("ICH2", "BOX ", idtmed[200], dchi, 3);
   
   // --- Define a volume containing the bus of pixels (silicon, layer #2) 
   
   dbus[0] = .01;
   dbus[1] = .64;
   dbus[2] = 4.19;
-  pMC->Gsvolu("IBU2", "BOX ", idtmed[201], dbus, 3);
+  gMC->Gsvolu("IBU2", "BOX ", idtmed[201], dbus, 3);
   
   // --- Define a volume containing the sensitive part of pixels 
   //     (silicon, layer #2) 
@@ -289,42 +288,42 @@ void AliITSv3::CreateGeometry()
   dits[0] = .0075;
   dits[1] = .64;
   dits[2] = 4.19;
-  pMC->Gsvolu("ITS2", "BOX ", idtmed[199], dits, 3);
+  gMC->Gsvolu("ITS2", "BOX ", idtmed[199], dits, 3);
   
   // --- Place the chip into its mother (IPB2) 
   
   xpos = dbox1[0] - dbus[0] * 2. - dits[0] * 2. - dchi[0];
   ypos = 0.;
   zpos = 0.;
-  pMC->Gspos("ICH2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("ICH2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the sensitive volume into its mother (IPB2) 
   
   xpos = dbox1[0] - dbus[0] * 2. - dits[0];
   ypos = -(dchi[1] - dits[1]);
   zpos = -(dchi[2] - dits[2]);
-  pMC->Gspos("ITS2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("ITS2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the bus into its mother (IPB2) 
   
   xpos = dbox1[0] - dbus[0];
   ypos = -(dchi[1] - dbus[1]);
   zpos = -(dchi[2] - dbus[2]);
-  pMC->Gspos("IBU2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IBU2", 1, "IPB2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Define a generic segment of an element of the mechanical support 
   
   dsup[0] = 0.;
   dsup[1] = 0.;
   dsup[2] = 0.;
-  pMC->Gsvolu("SPIX", "BOX ", idtmed[202], dsup, 0);
+  gMC->Gsvolu("SPIX", "BOX ", idtmed[202], dsup, 0);
   
   // --- Define a generic arc of an element of the mechanical support 
   
   darc[0] = 0.;
   darc[1] = 0.;
   darc[2] = 0.;
-  pMC->Gsvolu("SARC", "TUBS", idtmed[202], darc, 0);
+  gMC->Gsvolu("SARC", "TUBS", idtmed[202], darc, 0);
   
   // --- Define the mechanical supports of layers #1 and #2 and place the 
   //     elements of the layers in it 
@@ -364,7 +363,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta12 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1100], 90., atheta12, 90., atheta12 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1100], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1100], "ONLY", dsup, 3);
     
     // --- Place part # 2-3 (see sketch) 
     
@@ -393,7 +392,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta23 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1101], 90., atheta23, 90., atheta23 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY", dsup, 3);
     
     // --- Place an element of layer #2 
     
@@ -417,7 +416,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos  = 0.;
     ++jbox2;
-    pMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY");
+    gMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY");
     
     // --- Place part # 3-4 (see sketch) 
     
@@ -446,7 +445,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta34 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1102], 90., atheta34, 90., atheta34 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 3, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1102], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 3, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1102], "ONLY", dsup, 3);
     
     // --- Place part # 4-5 (see sketch) 
     
@@ -475,7 +474,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta45 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1103], 90., atheta45, 90., atheta45 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 4, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 4, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY", dsup, 3);
     
     // --- Place an element of layer #2 
     
@@ -499,7 +498,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos   = 0.;
     ++jbox2;
-    pMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY");
+    gMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY");
     
     // --- Place part # 5-6 (see sketch) 
     
@@ -528,7 +527,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta56 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1104], 90., atheta56, 90., atheta56 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 5, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1104], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 5, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1104], "ONLY", dsup, 3);
     
     // --- Place part # 6-7 (see sketch) 
     
@@ -557,7 +556,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta67 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1105], 90., atheta67, 90., atheta67 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 6, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 6, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY", dsup, 3);
     
     // --- Place an element of layer #2 
     
@@ -581,7 +580,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos   = 0.;
     ++jbox2;
-    pMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY");
+    gMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY");
     
     // --- Place part # 7-8 (see sketch) 
     
@@ -610,7 +609,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta78 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1106], 90., atheta78, 90., atheta78 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 7, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1106], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 7, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1106], "ONLY", dsup, 3);
     
     // --- Place part # 8-9 (see sketch) 
     
@@ -639,7 +638,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta89 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1107], 90., atheta89, 90., atheta89 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 8, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 8, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY", dsup, 3);
     
     // --- Place an element of layer #2 
     
@@ -663,7 +662,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos   = 0.;
     ++jbox2;
-    pMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY");
+    gMC->Gspos("IPV2", jbox2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY");
     
     // --- Place part # 9-10 (see sketch) 
     
@@ -692,7 +691,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta910 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1108], 90., atheta910, 90., atheta910 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 9, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1108], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 9, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1108], "ONLY", dsup, 3);
     
     // --- Place part # 10-11 (see sketch) 
     
@@ -721,7 +720,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta1011 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1109], 90., atheta1011, 90.,atheta1011 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 10, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1109], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 10, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1109], "ONLY", dsup, 3);
     
     // --- Place part # 13-14 (see sketch) 
     
@@ -750,7 +749,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta1314 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1112], 90., atheta1314, 90.,atheta1314 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 13, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 13, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY", dsup, 3);
     
     // --- Place an element of layer #1 
     
@@ -774,7 +773,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos   = 0.;
     ++jbox1;
-    pMC->Gspos("IPV1", jbox1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY");
+    gMC->Gspos("IPV1", jbox1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY");
     
     // --- Place part # 12-13 (see sketch) 
     
@@ -803,7 +802,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta1213 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1111], 90., atheta1213, 90.,atheta1213 + 90., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 12, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1111], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 12, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1111], "ONLY", dsup, 3);
     
     // --- Place part # 11-12 (see sketch) 
     
@@ -832,7 +831,7 @@ void AliITSv3::CreateGeometry()
     zpos  = 0.;
     atheta1112 = (i-1) * 36. + offset1 + offset2 - gteta;
     AliMatrix(idrotm[(i-1) * 13 + 1110], 270., atheta1112, 90., atheta1112 + 270., 0., 0.);
-    pMC->Gsposp("SPIX", (i-1) * 13 + 11, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY", dsup, 3);
+    gMC->Gsposp("SPIX", (i-1) * 13 + 11, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY", dsup, 3);
 
     // --- Place an element of layer #1 
     
@@ -856,7 +855,7 @@ void AliITSv3::CreateGeometry()
     ypos   = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos   = 0.;
     ++jbox1;
-    pMC->Gspos("IPV1", jbox1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY");
+    gMC->Gspos("IPV1", jbox1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY");
     
     // --- Place arc # 13 (between part 1-2 and part 2-3) (see sketch) 
     
@@ -875,7 +874,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 13, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 13, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1112], "ONLY", darc, 5);
     
     // --- Place arc # 12 (between part 2-3 and part 3-4) (see sketch) 
     
@@ -894,7 +893,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 12, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1111], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 12, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1111], "ONLY", darc, 5);
     
     // --- Place arc # 11 (between part 3-4 and part 4-5) (see sketch) 
     
@@ -913,7 +912,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 11, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 11, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1110], "ONLY", darc, 5);
     
     // --- Place arc # 10 (between part 4-5 and part 5-6) (see sketch) 
     
@@ -932,7 +931,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 10, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1109], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 10, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1109], "ONLY", darc, 5);
     
     // --- Place arc # 9 (between part 5-6 and part) (see sketch) 
     
@@ -951,7 +950,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 9, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1108], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 9, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1108], "ONLY", darc, 5);
     
     // --- Place arc # 8 (between part 6-7 and part 7-8) (see sketch) 
     
@@ -970,7 +969,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 8, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 8, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1107], "ONLY", darc, 5);
     
     // --- Place arc # 7 (between part 7-8 and part 8-9) (see sketch) 
     
@@ -989,7 +988,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 7, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1106], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 7, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1106], "ONLY", darc, 5);
     
     // --- Place arc # 6 (between part 8-9 and part 9-10) (see sketch) 
     
@@ -1008,7 +1007,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 6, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 6, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1105], "ONLY", darc, 5);
     
     // --- Place arc # 5 (between part 9-10 and part 10-11) 
     //     (see sketch) 
@@ -1028,7 +1027,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 5, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1104], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 5, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1104], "ONLY", darc, 5);
     
     // --- Place arc # 4 (between part 10-11 and part 11-12) 
     //     (see sketch) 
@@ -1048,7 +1047,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 4, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 4, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1103], "ONLY", darc, 5);
     
     // --- Place arc # 3 (between part 11-12 and part 12-13) 
     //     (see sketch) 
@@ -1068,7 +1067,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 3, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1102], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 3, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1102], "ONLY", darc, 5);
     
     // --- Place arc # 2 (between part 12-13 and part 13-14) 
     //     (see sketch) 
@@ -1088,7 +1087,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 2, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1101], "ONLY", darc, 5);
     
     // --- Place arc # 1 (between part 13-14 and part 1-2) 
     //     (see sketch) 
@@ -1108,7 +1107,7 @@ void AliITSv3::CreateGeometry()
     xpos    = xpos1 * TMath::Cos(gteta * degrad) + ypos1 * TMath::Sin(gteta *degrad);
     ypos    = -xpos1 * TMath::Sin(gteta * degrad) + ypos1 * TMath::Cos(gteta * degrad);
     zpos    = 0.;
-    pMC->Gsposp("SARC", (i-1) * 13 + 1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1100], "ONLY", darc, 5);
+    gMC->Gsposp("SARC", (i-1) * 13 + 1, "IT12", xpos, ypos, zpos, idrotm[(i-1) * 13 + 1100], "ONLY", darc, 5);
     
   }
   //************************************************************************
@@ -1137,13 +1136,13 @@ void AliITSv3::CreateGeometry()
   dgh[12] = 25.+(9.-3.01)/xxm+(9.01-9.)/xxm+(27.-9.01)/xxm;
   dgh[13] = 27.;
   dgh[14] = 27.;
-  pMC->Gsvolu("IT34", "PCON", idtmed[275], dgh, 15);
+  gMC->Gsvolu("IT34", "PCON", idtmed[275], dgh, 15);
   
   // --- Place the ghost volume in its mother volume (ITSV) and make it 
   //     invisible 
   
-  pMC->Gspos("IT34", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-  pMC->Gsatt("IT34", "SEEN", 0);
+  gMC->Gspos("IT34", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+  gMC->Gsatt("IT34", "SEEN", 0);
   
   // --- Layer #3 
   
@@ -1157,11 +1156,11 @@ void AliITSv3::CreateGeometry()
   // the widest element is the sensitive element 
   dbox1[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IDV1", "BOX ", idtmed[228], dbox1, 3);
+  gMC->Gsvolu("IDV1", "BOX ", idtmed[228], dbox1, 3);
   
   // --- Make the ghost volume invisible 
   
-  pMC->Gsatt("IDV1", "SEEN", 0);
+  gMC->Gsatt("IDV1", "SEEN", 0);
   
   // --- Define a volume containing the sensitive part of drifts 
   //     (silicon, layer #3) 
@@ -1170,7 +1169,7 @@ void AliITSv3::CreateGeometry()
   // see material budget report by G. Feofilov 
   dits[1] = 3.85;
   dits[2] = 4.35;
-  pMC->Gsvolu("ITS3", "BOX ", idtmed[224], dits, 3);
+  gMC->Gsvolu("ITS3", "BOX ", idtmed[224], dits, 3);
   
   //--- Define the part of the (smaller) rib between two sensitive parts made of
   //     carbon (layer #3) 
@@ -1179,7 +1178,7 @@ void AliITSv3::CreateGeometry()
   dsup[1] = .01;
   dsup[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR11", "BOX ", idtmed[227], dsup, 3);
+  gMC->Gsvolu("IR11", "BOX ", idtmed[227], dsup, 3);
   
   //--- Define the first part of the (smaller) rib between two sensitive parts
   //     made of aluminum (layer #3) 
@@ -1188,7 +1187,7 @@ void AliITSv3::CreateGeometry()
   dal1[1] = 0.00096/2.;
   dal1[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR12", "BOX ", idtmed[230], dal1, 3);
+  gMC->Gsvolu("IR12", "BOX ", idtmed[230], dal1, 3);
   
   //--- Define the part of the (smaller) rib between two sensitive parts made of
   //     kapton (layer #3) 
@@ -1197,7 +1196,7 @@ void AliITSv3::CreateGeometry()
   dkap[1] = .01585;
   dkap[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR13", "BOX ", idtmed[236], dkap, 3);
+  gMC->Gsvolu("IR13", "BOX ", idtmed[236], dkap, 3);
   
   //--- Define the second part of the (smaller) rib between two sensitive parts
   //     made of aluminum (layer #3) 
@@ -1206,7 +1205,7 @@ void AliITSv3::CreateGeometry()
   dal2[1] = 0.0027/2.;
   dal2[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR14", "BOX ", idtmed[230], dal2, 3);
+  gMC->Gsvolu("IR14", "BOX ", idtmed[230], dal2, 3);
   
   // --- Define the part of the (smaller) rib between two sensitive parts 
   //     made of silicon (the electronics) (layer #3) 
@@ -1215,7 +1214,7 @@ void AliITSv3::CreateGeometry()
   dchi[1] = 0.0071/2.;
   dchi[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR15", "BOX ", idtmed[225], dal2, 3);
+  gMC->Gsvolu("IR15", "BOX ", idtmed[225], dal2, 3);
   
   // --- Define the part of the (smaller) rib between two sensitive parts 
   //     made of water (the cooler) (layer #3) 
@@ -1224,7 +1223,7 @@ void AliITSv3::CreateGeometry()
   dwat[1] = 0.0093/2.;
   dwat[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR16", "BOX ", idtmed[231], dwat, 3);
+  gMC->Gsvolu("IR16", "BOX ", idtmed[231], dwat, 3);
   
   //--- Define the third part of the (smaller) rib between two sensitive parts
   //     made of aluminum (the cooling tubes) (layer #3) 
@@ -1233,7 +1232,7 @@ void AliITSv3::CreateGeometry()
   dtub[1] = 0.00134/2.;
   dtub[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR17", "BOX ", idtmed[230], dtub, 3);
+  gMC->Gsvolu("IR17", "BOX ", idtmed[230], dtub, 3);
   
   // --- Define the part of the end-ladder stuff made of PCB (layer #3) 
   
@@ -1241,7 +1240,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dpcb[1] = 3.5;
   dpcb[2] = 7.5;
-  pMC->Gsvolu("IEL1", "BOX ", idtmed[233], dpcb, 3);
+  gMC->Gsvolu("IEL1", "BOX ", idtmed[233], dpcb, 3);
   
   // --- Define the part of the end-ladder stuff made of copper (layer #3) 
   
@@ -1249,7 +1248,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dcop[1] = 3.5;
   dcop[2] = 7.5;
-  pMC->Gsvolu("IEL2", "BOX ", idtmed[234], dcop, 3);
+  gMC->Gsvolu("IEL2", "BOX ", idtmed[234], dcop, 3);
   
   // --- Define the part of the end-ladder stuff made of ceramics (layer #3)
   
@@ -1257,7 +1256,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dcer[1] = 3.5;
   dcer[2] = 7.5;
-  pMC->Gsvolu("IEL3", "BOX ", idtmed[235], dcer, 3);
+  gMC->Gsvolu("IEL3", "BOX ", idtmed[235], dcer, 3);
   
   // --- Define the part of the end-ladder stuff made of silicon (layer #3) 
   
@@ -1265,7 +1264,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dsil[1] = 3.5;
   dsil[2] = 7.5;
-  pMC->Gsvolu("IEL4", "BOX ", idtmed[226], dsil, 3);
+  gMC->Gsvolu("IEL4", "BOX ", idtmed[226], dsil, 3);
   
   //--- Place the sensitive part of the drifts (smaller ribs) into its mother
   //     (IDV1) 
@@ -1289,7 +1288,7 @@ void AliITSv3::CreateGeometry()
       xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0] * 2. - dits[0];
       zpos = dits[2] + 0. - 1. + dits[2] * 2. + .1 + dits[2];
     }
-    pMC->Gspos("ITS3", j, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ITS3", j, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // --- Place the smaller ribs into their mother (IDV1) 
@@ -1302,76 +1301,76 @@ void AliITSv3::CreateGeometry()
   // --- Carbon 
   
   ypos = 2.81;
-  pMC->Gspos("IR11", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR11", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = dsup[1] + 2.81 + dal1[1];
-  pMC->Gspos("IR12", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR12", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1];
-  pMC->Gspos("IR13", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR13", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
 
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1];
-  pMC->Gspos("IR14", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR14", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1];
-  pMC->Gspos("IR15", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR15", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1];
-  pMC->Gspos("IR16", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR16", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. 
     + dtub[1];
-  pMC->Gspos("IR17", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR17", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Right ribs (just a matter of convention) 
   
   // --- Carbon 
   
   ypos = -2.81;
-  pMC->Gspos("IR11", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR11", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = -(dsup[1] + 2.81 + dal1[1]);
-  pMC->Gspos("IR12", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR12", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1]);
-  pMC->Gspos("IR13", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR13", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1]);
-  pMC->Gspos("IR14", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR14", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1]);
-  pMC->Gspos("IR15", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR15", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1]);
-  pMC->Gspos("IR16", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR16", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. + dtub[1]);
-  pMC->Gspos("IR17", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR17", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the end-ladder stuff into its mother (IDV1) 
   
@@ -1384,22 +1383,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox1[0] - dpcb[0];
-  pMC->Gspos("IEL1", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL1", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL2", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL2", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL3", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL3", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL4", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL4", 1, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Positive-Z end-ladder 
   
@@ -1409,22 +1408,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox1[0] - dpcb[0];
-  pMC->Gspos("IEL1", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL1", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
 
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL2", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL2", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL3", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL3", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL4", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL4", 2, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   //--- Define a ghost volume containing a single ladder of layer #3 (with the
   //     larger lenght of ribs) and fill it with air or vacuum 
@@ -1434,11 +1433,11 @@ void AliITSv3::CreateGeometry()
   // the widest element is the sensitive element 
   dbox2[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IDV2", "BOX ", idtmed[228], dbox2, 3);
+  gMC->Gsvolu("IDV2", "BOX ", idtmed[228], dbox2, 3);
   
   // --- Make the ghost volume invisible 
   
-  pMC->Gsatt("IDV2", "SEEN", 0);
+  gMC->Gsatt("IDV2", "SEEN", 0);
   
   //--- Define the part of the (larger) rib between two sensitive parts madeof
   //     carbon (layer #3) 
@@ -1447,7 +1446,7 @@ void AliITSv3::CreateGeometry()
   dsup[1] = .01;
   dsup[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR21", "BOX ", idtmed[227], dsup, 3);
+  gMC->Gsvolu("IR21", "BOX ", idtmed[227], dsup, 3);
   
   //--- Define the first part of the (larger) rib between two sensitive parts
   //     made of aluminum (layer #3) 
@@ -1456,7 +1455,7 @@ void AliITSv3::CreateGeometry()
   dal1[1] = 0.00096/2.;
   dal1[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR22", "BOX ", idtmed[230], dal1, 3);
+  gMC->Gsvolu("IR22", "BOX ", idtmed[230], dal1, 3);
   
   //--- Define the part of the (larger) rib between two sensitive parts madeof
   //     kapton (layer #3) 
@@ -1465,7 +1464,7 @@ void AliITSv3::CreateGeometry()
   dkap[1] = 0.0317/2.;
   dkap[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR23", "BOX ", idtmed[236], dkap, 3);
+  gMC->Gsvolu("IR23", "BOX ", idtmed[236], dkap, 3);
   
   //--- Define the second part of the (larger) rib between two sensitive parts
   //     made of aluminum (layer #3) 
@@ -1474,7 +1473,7 @@ void AliITSv3::CreateGeometry()
   dal2[1] = 0.0027/2.;
   dal2[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR24", "BOX ", idtmed[230], dal2, 3);
+  gMC->Gsvolu("IR24", "BOX ", idtmed[230], dal2, 3);
   
   // --- Define the part of the (larger) rib between two sensitive parts 
   //     made of silicon (the electronics) (layer #3) 
@@ -1483,7 +1482,7 @@ void AliITSv3::CreateGeometry()
   dchi[1] = 0.0071/2.;
   dchi[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR25", "BOX ", idtmed[225], dal2, 3);
+  gMC->Gsvolu("IR25", "BOX ", idtmed[225], dal2, 3);
   
   // --- Define the part of the (larger) rib between two sensitive parts 
   //     made of water (the cooler) (layer #3) 
@@ -1492,7 +1491,7 @@ void AliITSv3::CreateGeometry()
   dwat[1] = 0.0093/2.;
   dwat[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR26", "BOX ", idtmed[231], dwat, 3);
+  gMC->Gsvolu("IR26", "BOX ", idtmed[231], dwat, 3);
   
   //--- Define the third part of the (larger) rib between two sensitive parts
   //     made of aluminum (the cooling tubes) (layer #3) 
@@ -1501,7 +1500,7 @@ void AliITSv3::CreateGeometry()
   dtub[1] = 0.00134/2.;
   dtub[2] = (8.7*5.-2.*1.+2.*0.1)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR27", "BOX ", idtmed[230], dtub, 3);
+  gMC->Gsvolu("IR27", "BOX ", idtmed[230], dtub, 3);
   
   //--- Place the sensitive part of the drifts (smaller ribs) into its mother
   //     (IDV2) 
@@ -1525,7 +1524,7 @@ void AliITSv3::CreateGeometry()
       xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0] * 2. - dits[0];
       zpos = dits[2] + 0. - 1. + dits[2] * 2. + .1 + dits[2];
     }
-    pMC->Gspos("ITS3", j, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ITS3", j, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // --- Place the larger ribs into their mother (IDV2) 
@@ -1539,74 +1538,74 @@ void AliITSv3::CreateGeometry()
   // --- Carbon 
   
   ypos = 2.81;
-  pMC->Gspos("IR21", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR21", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = dsup[1] + 2.81 + dal1[1];
-  pMC->Gspos("IR22", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR22", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1];
-  pMC->Gspos("IR23", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR23", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1];
-  pMC->Gspos("IR24", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR24", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1];
-  pMC->Gspos("IR25", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR25", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1];
-  pMC->Gspos("IR26", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR26", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. + dtub[1];
-  pMC->Gspos("IR27", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR27", 1, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Right ribs (just a matter of convention) 
   
   // --- Carbon 
   
   ypos = -2.81;
-  pMC->Gspos("IR21", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR21", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = -(dsup[1] + 2.81 + dal1[1]);
-  pMC->Gspos("IR22", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR22", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1]);
-  pMC->Gspos("IR23", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR23", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1]);
-  pMC->Gspos("IR24", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR24", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1]);
-  pMC->Gspos("IR25", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR25", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1]);
-  pMC->Gspos("IR26", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR26", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. + dtub[1]);
-  pMC->Gspos("IR27", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR27", 2, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the end-ladder stuff into its mother (IDV1) 
   
@@ -1619,22 +1618,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox2[0] - dpcb[0];
-  pMC->Gspos("IEL1", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL1", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL2", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL2", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL3", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL3", 3, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL4", 3, "IDV1", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL4", 3, "IDV1", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Positive-Z end-ladder 
   
@@ -1644,22 +1643,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox2[0] - dpcb[0];
-  pMC->Gspos("IEL1", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL1", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL2", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL2", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL3", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL3", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL4", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL4", 4, "IDV2", xpos, ypos, zpos, 0, "ONLY");
   
   //--- Place the ghost volumes containing the drift ladders of layer #3 in their
   //     mother volume (IT34) 
@@ -1673,13 +1672,13 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 12.);
       ypos = rzero * TMath::Sin((i-1) * twopi / 12.);
       zpos = 0.;
-      pMC->Gspos("IDV1", i, "IT34", xpos, ypos, zpos, idrotm[i+1299], "ONLY");
+      gMC->Gspos("IDV1", i, "IT34", xpos, ypos, zpos, idrotm[i+1299], "ONLY");
     } else {
       rzero = 13.85;
       xpos = rzero * TMath::Cos((i-1) * twopi / 12.);
       ypos = rzero * TMath::Sin((i-1) * twopi / 12.);
       zpos = 0.;
-      pMC->Gspos("IDV2", i, "IT34", xpos, ypos, zpos, idrotm[i+1299], "ONLY");
+      gMC->Gspos("IDV2", i, "IT34", xpos, ypos, zpos, idrotm[i+1299], "ONLY");
     }
   }
   
@@ -1696,11 +1695,11 @@ void AliITSv3::CreateGeometry()
   // the widest element is the end-ladder stuff 
   dbox1[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IDV3", "BOX ", idtmed[228], dbox1, 3);
+  gMC->Gsvolu("IDV3", "BOX ", idtmed[228], dbox1, 3);
   
   // --- Make the ghost volume invisible 
   
-  pMC->Gsatt("IDV3", "SEEN", 0);
+  gMC->Gsatt("IDV3", "SEEN", 0);
   
   // --- Define a volume containing the sensitive part of drifts 
   //     (silicon, layer #4) 
@@ -1709,7 +1708,7 @@ void AliITSv3::CreateGeometry()
   // see material budget report by G. Feofilov 
   dits[1] = 3.125;
   dits[2] = 4.35;
-  pMC->Gsvolu("ITS4", "BOX ", idtmed[224], dits, 3);
+  gMC->Gsvolu("ITS4", "BOX ", idtmed[224], dits, 3);
   
   //--- Define the part of the (smaller) rib between two sensitive parts made of
   //     carbon (layer #4) 
@@ -1718,7 +1717,7 @@ void AliITSv3::CreateGeometry()
   dsup[1] = .01;
   dsup[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR31", "BOX ", idtmed[227], dsup, 3);
+  gMC->Gsvolu("IR31", "BOX ", idtmed[227], dsup, 3);
   
   //--- Define the first part of the (smaller) rib between two sensitive parts
   //     made of aluminum (layer #4) 
@@ -1727,7 +1726,7 @@ void AliITSv3::CreateGeometry()
   dal1[1] = 0.00096/2.;
   dal1[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR32", "BOX ", idtmed[230], dal1, 3);
+  gMC->Gsvolu("IR32", "BOX ", idtmed[230], dal1, 3);
   
   //--- Define the part of the (smaller) rib between two sensitive parts made of
   //     kapton (layer #4) 
@@ -1736,7 +1735,7 @@ void AliITSv3::CreateGeometry()
   dkap[1] = 0.0317/2.;
   dkap[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR33", "BOX ", idtmed[236], dkap, 3);
+  gMC->Gsvolu("IR33", "BOX ", idtmed[236], dkap, 3);
   
   //--- Define the second part of the (smaller) rib between two sensitive parts
   //     made of aluminum (layer #4) 
@@ -1745,7 +1744,7 @@ void AliITSv3::CreateGeometry()
   dal2[1] = 0.0027/2.;
   dal2[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR34", "BOX ", idtmed[230], dal2, 3);
+  gMC->Gsvolu("IR34", "BOX ", idtmed[230], dal2, 3);
   
   // --- Define the part of the (smaller) rib between two sensitive parts 
   //     made of silicon (the electronics) (layer #4) 
@@ -1754,7 +1753,7 @@ void AliITSv3::CreateGeometry()
   dchi[1] = 0.0071/2.;
   dchi[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR35", "BOX ", idtmed[225], dal2, 3);
+  gMC->Gsvolu("IR35", "BOX ", idtmed[225], dal2, 3);
   
   // --- Define the part of the (smaller) rib between two sensitive parts 
   //     made of water (the cooler) (layer #4) 
@@ -1763,7 +1762,7 @@ void AliITSv3::CreateGeometry()
   dwat[1] = 0.0093/2.;
   dwat[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IR36", "BOX ", idtmed[231], dwat, 3);
+  gMC->Gsvolu("IR36", "BOX ", idtmed[231], dwat, 3);
   
   //--- Define the third part of the (smaller) rib between two sensitive parts
   //     made of aluminum (the cooling tubes) (layer #4) 
@@ -1772,7 +1771,7 @@ void AliITSv3::CreateGeometry()
   dtub[1] = 0.00134/2.;
   dtub[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR37", "BOX ", idtmed[230], dtub, 3);
+  gMC->Gsvolu("IR37", "BOX ", idtmed[230], dtub, 3);
   
   // --- Define the part of the end-ladder stuff made of PCB (layer #4) 
   
@@ -1780,7 +1779,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dpcb[1] = 3.5;
   dpcb[2] = 7.5;
-  pMC->Gsvolu("IEL5", "BOX ", idtmed[233], dpcb, 3);
+  gMC->Gsvolu("IEL5", "BOX ", idtmed[233], dpcb, 3);
   
   // --- Define the part of the end-ladder stuff made of copper (layer #4) 
   
@@ -1788,7 +1787,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dcop[1] = 3.5;
   dcop[2] = 7.5;
-  pMC->Gsvolu("IEL6", "BOX ", idtmed[234], dcop, 3);
+  gMC->Gsvolu("IEL6", "BOX ", idtmed[234], dcop, 3);
   
   // --- Define the part of the end-ladder stuff made of ceramics (layer #4)
   
@@ -1796,7 +1795,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dcer[1] = 3.5;
   dcer[2] = 7.5;
-  pMC->Gsvolu("IEL7", "BOX ", idtmed[235], dcer, 3);
+  gMC->Gsvolu("IEL7", "BOX ", idtmed[235], dcer, 3);
   
   // --- Define the part of the end-ladder stuff made of silicon (layer #4) 
   
@@ -1804,7 +1803,7 @@ void AliITSv3::CreateGeometry()
   // twice the foreseen thickness 
   dsil[1] = 3.5;
   dsil[2] = 7.5;
-  pMC->Gsvolu("IEL8", "BOX ", idtmed[226], dsil, 3);
+  gMC->Gsvolu("IEL8", "BOX ", idtmed[226], dsil, 3);
   
   //--- Place the sensitive part of the drifts (smaller ribs) into its mother
   //     (IDV3) 
@@ -1834,7 +1833,7 @@ void AliITSv3::CreateGeometry()
       xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0] * 2. - dits[0];
       zpos = dits[2] + 0. - .7 + dits[2] * 2. + 0. + dits[2] * 2. - 1.3 + dits[2];
     }
-    pMC->Gspos("ITS4", j, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ITS4", j, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // --- Place the smaller ribs into their mother (IDV3) 
@@ -1847,80 +1846,80 @@ void AliITSv3::CreateGeometry()
   // --- Carbon 
   
   ypos = 2.81;
-  pMC->Gspos("IR31", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR31", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = dsup[1] + 2.81 + dal1[1];
-  pMC->Gspos("IR32", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR32", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
 
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1];
-  pMC->Gspos("IR33", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR33", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1];
-  pMC->Gspos("IR34", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR34", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1];
-  pMC->Gspos("IR35", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR35", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1];
-  pMC->Gspos("IR36", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR36", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. 
     + dtub[1];
-  pMC->Gspos("IR37", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR37", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Right ribs (just a matter of convention) 
   
   // --- Carbon 
   
   ypos = -2.81;
-  pMC->Gspos("IR31", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR31", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = -(dsup[1] + 2.81 + dal1[1]);
-  pMC->Gspos("IR32", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR32", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1]);
-  pMC->Gspos("IR33", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR33", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1]);
-  pMC->Gspos("IR34", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR34", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1]);
-  pMC->Gspos("IR35", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR35", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1]);
-  pMC->Gspos("IR36", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR36", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 
           2. + dtub[1]);
-  pMC->Gspos("IR37", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR37", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the end-ladder stuff into its mother (IDV1) 
   
@@ -1933,22 +1932,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox1[0] - dpcb[0];
-  pMC->Gspos("IEL5", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL5", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL6", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL6", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL7", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL7", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL8", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL8", 1, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Positive-Z end-ladder 
   
@@ -1958,22 +1957,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox1[0] - dpcb[0];
-  pMC->Gspos("IEL5", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL5", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL6", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL6", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL7", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL7", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox1[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL8", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL8", 2, "IDV3", xpos, ypos, zpos, 0, "ONLY");
   
   //--- Define a ghost volume containing a single ladder of layer #4 (with the
   //     larger lenght of ribs) and fill it with air or vacuum 
@@ -1983,11 +1982,11 @@ void AliITSv3::CreateGeometry()
   // the widest element is the end-ladder stuff 
   dbox2[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lenght 
-  pMC->Gsvolu("IDV4", "BOX ", idtmed[228], dbox2, 3);
+  gMC->Gsvolu("IDV4", "BOX ", idtmed[228], dbox2, 3);
   
   // --- Make the ghost volume invisible 
   
-  pMC->Gsatt("IDV4", "SEEN", 0);
+  gMC->Gsatt("IDV4", "SEEN", 0);
   
   //--- Define the part of the (larger) rib between two sensitive parts madeof
   //     carbon (layer #4) 
@@ -1996,7 +1995,7 @@ void AliITSv3::CreateGeometry()
   dsup[1] = .01;
   dsup[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR41", "BOX ", idtmed[227], dsup, 3);
+  gMC->Gsvolu("IR41", "BOX ", idtmed[227], dsup, 3);
   
   //--- Define the first part of the (larger) rib between two sensitive parts
   //     made of aluminum (layer #4) 
@@ -2005,7 +2004,7 @@ void AliITSv3::CreateGeometry()
   dal1[1] = 0.00096/2.;
   dal1[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR42", "BOX ", idtmed[230], dal1, 3);
+  gMC->Gsvolu("IR42", "BOX ", idtmed[230], dal1, 3);
   
   //--- Define the part of the (larger) rib between two sensitive parts madeof
   //     kapton (layer #4) 
@@ -2014,7 +2013,7 @@ void AliITSv3::CreateGeometry()
   dkap[1] = 0.0317/2.;
   dkap[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR43", "BOX ", idtmed[236], dkap, 3);
+  gMC->Gsvolu("IR43", "BOX ", idtmed[236], dkap, 3);
   
   //--- Define the second part of the (larger) rib between two sensitive parts
   //     made of aluminum (layer #4) 
@@ -2023,7 +2022,7 @@ void AliITSv3::CreateGeometry()
   dal2[1] = 0.0027/2.;
   dal2[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR44", "BOX ", idtmed[230], dal2, 3);
+  gMC->Gsvolu("IR44", "BOX ", idtmed[230], dal2, 3);
   
   // --- Define the part of the (larger) rib between two sensitive parts 
   //     made of silicon (the electronics) (layer #4) 
@@ -2032,7 +2031,7 @@ void AliITSv3::CreateGeometry()
   dchi[1] = 0.0071/2.;
   dchi[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR45", "BOX ", idtmed[225], dal2, 3);
+  gMC->Gsvolu("IR45", "BOX ", idtmed[225], dal2, 3);
   
   // --- Define the part of the (larger) rib between two sensitive parts 
   //     made of water (the cooler) (layer #4) 
@@ -2041,7 +2040,7 @@ void AliITSv3::CreateGeometry()
   dwat[1] = 0.0093/2.;
   dwat[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR46", "BOX ", idtmed[231], dwat, 3);
+  gMC->Gsvolu("IR46", "BOX ", idtmed[231], dwat, 3);
   
   //--- Define the third part of the (larger) rib between two sensitive parts
   //     made of aluminum (the cooling tubes) (layer #4) 
@@ -2050,7 +2049,7 @@ void AliITSv3::CreateGeometry()
   dtub[1] = 0.00134/2.;
   dtub[2] = (8.7*7.-2.*0.7-2.*1.3)/2.+2.*7.5;
   // 7.5 cm is the lengh 
-  pMC->Gsvolu("IR47", "BOX ", idtmed[230], dtub, 3);
+  gMC->Gsvolu("IR47", "BOX ", idtmed[230], dtub, 3);
   
   //--- Place the sensitive part of the drifts (smaller ribs) into its mother
   //     (IDV4) 
@@ -2080,7 +2079,7 @@ void AliITSv3::CreateGeometry()
       xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0] * 2. - dits[0];
       zpos = dits[2] + 0. - .7 + dits[2] * 2. + 0. + dits[2] * 2. - 1.3 + dits[2];
     }
-    pMC->Gspos("ITS4", j, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ITS4", j, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // --- Place the larger ribs into their mother (IDV4) 
@@ -2094,79 +2093,79 @@ void AliITSv3::CreateGeometry()
   // --- Carbon 
   
   ypos = 2.81;
-  pMC->Gspos("IR41", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR41", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = dsup[1] + 2.81 + dal1[1];
-  pMC->Gspos("IR42", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR42", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1];
-  pMC->Gspos("IR43", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR43", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1];
-  pMC->Gspos("IR44", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR44", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1];
-  pMC->Gspos("IR45", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR45", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1];
-  pMC->Gspos("IR46", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR46", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. 
     + dtub[1];
-  pMC->Gspos("IR47", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR47", 1, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Right ribs (just a matter of convention) 
   
   // --- Carbon 
   
   ypos = -2.81;
-  pMC->Gspos("IR41", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR41", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #1 
   
   ypos = -(dsup[1] + 2.81 + dal1[1]);
-  pMC->Gspos("IR42", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR42", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Kapton 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1]);
-  pMC->Gspos("IR43", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR43", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #2 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1]);
-  pMC->Gspos("IR44", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR44", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (chip) 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1]);
-  pMC->Gspos("IR45", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR45", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Water 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1]);
-  pMC->Gspos("IR46", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR46", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Aluminum #3 
   
   ypos = -(dsup[1] + 2.81 + dal1[1] * 2. + dkap[1] * 
           2. + dal2[1] * 2. + dchi[1] * 2. + dwat[1] * 2. + dtub[1]);
-  pMC->Gspos("IR47", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IR47", 2, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Place the end-ladder stuff into its mother (IDV1) 
   
@@ -2179,22 +2178,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox2[0] - dpcb[0];
-  pMC->Gspos("IEL5", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL5", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL6", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL6", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL7", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL7", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL8", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL8", 3, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Positive-Z end-ladder 
   
@@ -2204,22 +2203,22 @@ void AliITSv3::CreateGeometry()
   // --- PCB 
   
   xpos = dbox2[0] - dpcb[0];
-  pMC->Gspos("IEL5", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL5", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Copper 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0];
-  pMC->Gspos("IEL6", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL6", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Ceramics 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0];
-  pMC->Gspos("IEL7", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL7", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   // --- Silicon (bus) 
   
   xpos = dbox2[0] - dpcb[0] * 2. - dcop[0] * 2. - dcer[0] * 2. - dsil[0];
-  pMC->Gspos("IEL8", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("IEL8", 4, "IDV4", xpos, ypos, zpos, 0, "ONLY");
   
   //--- Place the ghost volumes containing the drift ladders of layer #4 in their
   //     mother volume (IT34) 
@@ -2233,13 +2232,13 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 24.);
       ypos = rzero * TMath::Sin((i-1) * twopi / 24.);
       zpos = 0.;
-      pMC->Gspos("IDV3", i, "IT34", xpos, ypos, zpos, idrotm[i+1399], "ONLY");
+      gMC->Gspos("IDV3", i, "IT34", xpos, ypos, zpos, idrotm[i+1399], "ONLY");
     } else {
       rzero = (24.0+22.8)/2.;
       xpos = rzero * TMath::Cos((i-1) * twopi / 24.);
       ypos = rzero * TMath::Sin((i-1) * twopi / 24.);
       zpos = 0.;
-      pMC->Gspos("IDV4", i, "IT34", xpos, ypos, zpos, idrotm[i+1399], "ONLY");
+      gMC->Gspos("IDV4", i, "IT34", xpos, ypos, zpos, idrotm[i+1399], "ONLY");
     }
   }
   
@@ -2277,9 +2276,9 @@ void AliITSv3::CreateGeometry()
       (37.-27)/xxm+(49.998-37.)/xxm;
     dgh[13] = 49.998;
     dgh[14] = 49.998;
-    pMC->Gsvolu("IT56", "PCON", idtmed[275], dgh, 15);
-    pMC->Gspos("IT56", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-    pMC->Gsatt("IT56", "SEEN", 0);
+    gMC->Gsvolu("IT56", "PCON", idtmed[275], dgh, 15);
+    gMC->Gspos("IT56", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+    gMC->Gsatt("IT56", "SEEN", 0);
     
     // --- Layer #5 
     
@@ -2291,11 +2290,11 @@ void AliITSv3::CreateGeometry()
     dbox1[0] = (0.0600+2.*0.0150)/2.;
     dbox1[1] = 3.75;
     dbox1[2] = 90.22/2.;
-    pMC->Gsvolu("ISV1", "BOX ", idtmed[253], dbox1, 3);
+    gMC->Gsvolu("ISV1", "BOX ", idtmed[253], dbox1, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ISV1", "SEEN", 0);
+    gMC->Gsatt("ISV1", "SEEN", 0);
     
     // --- Define a ghost volume containing the electronics and cooling of
     //     a single ladder of layer #5 and fill it with air or vacuum 
@@ -2303,11 +2302,11 @@ void AliITSv3::CreateGeometry()
     dsrv[0] = (TMath::Sqrt(3.) / 2. * 4.2 + .47 + .05) / 2.;
     dsrv[1] = 3.75;
     dsrv[2] = 90.22/2.;
-    pMC->Gsvolu("SSV1", "BOX ", idtmed[253], dsrv, 3);
+    gMC->Gsvolu("SSV1", "BOX ", idtmed[253], dsrv, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("SSV1", "SEEN", 0);
+    gMC->Gsatt("SSV1", "SEEN", 0);
     
     // --- Define a ghost volume containing the end-ladder stuff of 
     //     a single ladder of layer #5 and fill it with air or vacuum 
@@ -2315,11 +2314,11 @@ void AliITSv3::CreateGeometry()
     dela[0] = 2.;
     dela[1] = 3.5;
     dela[2] = 4.;
-    pMC->Gsvolu("ELL5", "BOX ", idtmed[253], dela, 3);
+    gMC->Gsvolu("ELL5", "BOX ", idtmed[253], dela, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ELL5", "SEEN", 0);
+    gMC->Gsatt("ELL5", "SEEN", 0);
     
     // --- Define a volume containing the sensitive part of the strips 
     //     (silicon, layer #5) 
@@ -2327,7 +2326,7 @@ void AliITSv3::CreateGeometry()
     dits[0] = .015;
     dits[1] = 3.75;
     dits[2] = 2.1;
-    pMC->Gsvolu("ITS5", "BOX ", idtmed[249], dits, 3);
+    gMC->Gsvolu("ITS5", "BOX ", idtmed[249], dits, 3);
     
     // --- Define a volume containing the electronics of the strips 
     //     (silicon, layer #5) 
@@ -2335,21 +2334,21 @@ void AliITSv3::CreateGeometry()
     dchi[0] = .02;
     dchi[1] = 3.4;
     dchi[2] = .525;
-    pMC->Gsvolu("SCH5", "BOX ", idtmed[250], dchi, 3);
+    gMC->Gsvolu("SCH5", "BOX ", idtmed[250], dchi, 3);
     
     // --- Define the cooling tubes (aluminum, layer #5) 
     
     dtub[0] = .09;
     dtub[1] = dtub[0] + .01;
     dtub[2] = 90.22/2.;
-    pMC->Gsvolu("STB5", "TUBE", idtmed[255], dtub, 3);
+    gMC->Gsvolu("STB5", "TUBE", idtmed[255], dtub, 3);
     
     // --- Define the cooling fluid (water or freon, layer #5) 
     
     dwat[0] = 0.;
     dwat[1] = .09;
     dwat[2] = 90.22/2.;
-    pMC->Gsvolu("SWT5", "TUBE", idtmed[256], dwat, 3);
+    gMC->Gsvolu("SWT5", "TUBE", idtmed[256], dwat, 3);
     //        CALL GSVOLU('SWT5','TUBE',IDTMED(258),DWAT,3,IOUT)   ! freon
     
     //--- Define the (triangular) element of the heat bridge (carbon, layer #5)
@@ -2365,7 +2364,7 @@ void AliITSv3::CreateGeometry()
     dfra[7] = .015;
     dfra[8] = dfra[5];
     dfra[9] = dfra[6];
-    pMC->Gsvolu("SFR5", "PGON", idtmed[252], dfra, 10);
+    gMC->Gsvolu("SFR5", "PGON", idtmed[252], dfra, 10);
     
     // --- Define the element connecting the triangles of the heat bridge 
     //     (carbon, layer #5) 
@@ -2373,7 +2372,7 @@ void AliITSv3::CreateGeometry()
     dcei[0] = 0.;
     dcei[1] = .03;
     dcei[2] = 90.22/2.;
-    pMC->Gsvolu("SCE5", "TUBE", idtmed[252], dcei, 3);
+    gMC->Gsvolu("SCE5", "TUBE", idtmed[252], dcei, 3);
     
     // --- Define the part of the end-ladder stuff made of plastic (G10FR4) 
     //     (layer #5) 
@@ -2381,21 +2380,21 @@ void AliITSv3::CreateGeometry()
     dpla[0] = (10./(8.*7.))/2.;
     dpla[1] = 3.5;
     dpla[2] = 4.;
-    pMC->Gsvolu("EPL5", "BOX ", idtmed[262], dpla, 3);
+    gMC->Gsvolu("EPL5", "BOX ", idtmed[262], dpla, 3);
     
     // --- Define the part of the end-ladder stuff made of copper (layer #5) 
     
     dcop[0] = (2./(8.*7.))/2.;
     dcop[1] = 3.5;
     dcop[2] = 4.;
-    pMC->Gsvolu("ECU5", "BOX ", idtmed[259], dcop, 3);
+    gMC->Gsvolu("ECU5", "BOX ", idtmed[259], dcop, 3);
     
     // --- Define the part of the end-ladder stuff made of epoxy (layer #5) 
     
     depx[0] = (30./(8.*7.))/2.;
     depx[1] = 3.5;
     depx[2] = 4.;
-    pMC->Gsvolu("EPX5", "BOX ", idtmed[262], depx, 3);
+    gMC->Gsvolu("EPX5", "BOX ", idtmed[262], depx, 3);
     
     // --- Define the part of the end-ladder stuff made of silicon (bus) 
     //     (layer #5) 
@@ -2403,7 +2402,7 @@ void AliITSv3::CreateGeometry()
     dsil[0] = (20./(8.*7.))/2.;
     dsil[1] = 3.5;
     dsil[2] = 4.;
-    pMC->Gsvolu("ESI5", "BOX ", idtmed[251], dsil, 3);
+    gMC->Gsvolu("ESI5", "BOX ", idtmed[251], dsil, 3);
     
     // --- Place the end-ladder stuff into its mother (ELL5) 
     
@@ -2414,22 +2413,22 @@ void AliITSv3::CreateGeometry()
     // --- Plastic 
     
     xpos = -dela[0] + dpla[0];
-    pMC->Gspos("EPL5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPL5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Copper 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0];
-    pMC->Gspos("ECU5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ECU5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Epoxy 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0];
-    pMC->Gspos("EPX5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPX5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Silicon (bus) 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0] * 2. + sep + dsil[0];
-    pMC->Gspos("ESI5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ESI5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the sensitive part of the strips into its mother (ISV1) 
     
@@ -2438,7 +2437,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = dbox1[0] - dits[0];
       else            xpos = -dbox1[0] + dits[0];
       zpos = ((j - 1) - 11.) * 3.91;
-      pMC->Gspos("ITS5", j, "ISV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("ITS5", j, "ISV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the electronics of the strips into its mother (SSV1) 
@@ -2448,7 +2447,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = -dsrv[0] + .28;
       else            xpos = -dsrv[0] + .28 - dits[0] * 2. - .03;
       zpos = ((j - 1) - 11.) * 3.91 + .85;
-      pMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     //--- Place the cooling tubes and the cooling fluid into their mother (SSV1)
@@ -2459,14 +2458,14 @@ void AliITSv3::CreateGeometry()
     // --- Left tube (just a matter of convention) 
     
     ypos = -2.25-0.1;
-    pMC->Gspos("STB5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right tube (just a matter of convention) 
     
     ypos = 2.25+0.1;
-    pMC->Gspos("STB5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the heat bridge elements into their mother (SSV1) 
     
@@ -2474,7 +2473,7 @@ void AliITSv3::CreateGeometry()
     ypos = 0.;
     for (j = 1; j <= 24; ++j) {
       zpos = ((j - 1) - 11.) * 3.91 - -4.2/2.;
-      pMC->Gspos("SFR5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SFR5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the elements connecting the triangles of the heat bridge 
@@ -2486,19 +2485,19 @@ void AliITSv3::CreateGeometry()
     
     xpos = -dsrv[0] + .47;
     ypos = -(2.1+0.015);
-    pMC->Gspos("SCE5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right element 
     
     xpos = -dsrv[0] + .47;
     ypos = 2.1+0.015;
-    pMC->Gspos("SCE5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Top element 
     
     xpos = -dsrv[0] + .47 + TMath::Sqrt(3.) / 2. * 4.2 + .015;
     ypos = 0.;
-    pMC->Gspos("SCE5", 3, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 3, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the ghost volumes containing the strip ladders (ISV1), 
     //    electronics/cooling (SSV1) and end-ladder stuff (ELL5) of layer #5 in
@@ -2518,23 +2517,23 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 35. + offset1);
       ypos = rzero * TMath::Sin((i-1) * twopi / 35. + offset1);
       zpos = 0.;
-      pMC->Gspos("ISV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ISV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       
       // --- Electronics/cooling 
       
       xpos = runo * TMath::Cos((i-1) * twopi / 35. + offset1);
       ypos = runo * TMath::Sin((i-1) * twopi / 35. + offset1);
       zpos = 0.;
-      pMC->Gspos("SSV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("SSV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       
       // --- End-ladders (nagative-Z and positive-Z) 
       
       xpos = rtwo * TMath::Cos((i-1) * twopi / 35. + offset1);
       ypos = rtwo * TMath::Sin((i-1) * twopi / 35. + offset1);
       zpos = -(dbox1[2] + dela[2] + 6.);
-      pMC->Gspos("ELL5", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ELL5", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       zpos = dbox1[2] + dela[2] + 6.;
-      pMC->Gspos("ELL5", i + 35, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ELL5", i + 35, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
     }
     
     
@@ -2548,11 +2547,11 @@ void AliITSv3::CreateGeometry()
     dbox2[0] = (0.0600+2.*0.0150)/2.;
     dbox2[1] = 3.75;
     dbox2[2] = 101.95/2.;
-    pMC->Gsvolu("ISV2", "BOX ", idtmed[253], dbox2, 3);
+    gMC->Gsvolu("ISV2", "BOX ", idtmed[253], dbox2, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ISV2", "SEEN", 0);
+    gMC->Gsatt("ISV2", "SEEN", 0);
     
     // --- Define a ghost volume containing the electronics and cooling of
     //     a single ladder of layer #6 and fill it with air or vacuum 
@@ -2560,11 +2559,11 @@ void AliITSv3::CreateGeometry()
     dsrv[0] = (TMath::Sqrt(3.) / 2. * 4.2 + .47 + .05) / 2.;
     dsrv[1] = 3.75;
     dsrv[2] = 101.95/2.;
-    pMC->Gsvolu("SSV2", "BOX ", idtmed[253], dsrv, 3);
+    gMC->Gsvolu("SSV2", "BOX ", idtmed[253], dsrv, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("SSV2", "SEEN", 0);
+    gMC->Gsatt("SSV2", "SEEN", 0);
     
     // --- Define a ghost volume containing the end-ladder stuff of 
     //     a single ladder of layer #6 and fill it with air or vacuum 
@@ -2572,11 +2571,11 @@ void AliITSv3::CreateGeometry()
     dela[0] = 2.;
     dela[1] = 3.5;
     dela[2] = 4.;
-    pMC->Gsvolu("ELL6", "BOX ", idtmed[253], dela, 3);
+    gMC->Gsvolu("ELL6", "BOX ", idtmed[253], dela, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ELL6", "SEEN", 0);
+    gMC->Gsatt("ELL6", "SEEN", 0);
     
     // --- Define a volume containing the sensitive part of the strips 
     //     (silicon, layer #6) 
@@ -2584,7 +2583,7 @@ void AliITSv3::CreateGeometry()
     dits[0] = .015;
     dits[1] = 3.75;
     dits[2] = 2.1;
-    pMC->Gsvolu("ITS6", "BOX ", idtmed[249], dits, 3);
+    gMC->Gsvolu("ITS6", "BOX ", idtmed[249], dits, 3);
     
     // --- Define a volume containing the electronics of the strips 
     //     (silicon, layer #6) 
@@ -2592,21 +2591,21 @@ void AliITSv3::CreateGeometry()
     dchi[0] = .02;
     dchi[1] = 3.4;
     dchi[2] = .525;
-    pMC->Gsvolu("SCH6", "BOX ", idtmed[250], dchi, 3);
+    gMC->Gsvolu("SCH6", "BOX ", idtmed[250], dchi, 3);
     
     // --- Define the cooling tubes (aluminum, layer #6) 
     
     dtub[0] = .09;
     dtub[1] = dtub[0] + .01;
     dtub[2] = 101.95/2.;
-    pMC->Gsvolu("STB6", "TUBE", idtmed[255], dtub, 3);
+    gMC->Gsvolu("STB6", "TUBE", idtmed[255], dtub, 3);
     
     // --- Define the cooling fluid (water or freon, layer #6) 
     
     dwat[0] = 0.;
     dwat[1] = .09;
     dwat[2] = 101.95/2.;
-    pMC->Gsvolu("SWT6", "TUBE", idtmed[256], dwat, 3);
+    gMC->Gsvolu("SWT6", "TUBE", idtmed[256], dwat, 3);
     //        CALL GSVOLU('SWT6','TUBE',IDTMED(258),DWAT,3,IOUT)   ! freon
     
     //--- Define the (triangular) element of the heat bridge (carbon, layer #6)
@@ -2622,7 +2621,7 @@ void AliITSv3::CreateGeometry()
     dfra[7] = .015;
     dfra[8] = dfra[5];
     dfra[9] = dfra[6];
-    pMC->Gsvolu("SFR6", "PGON", idtmed[252], dfra, 10);
+    gMC->Gsvolu("SFR6", "PGON", idtmed[252], dfra, 10);
     
     // --- Define the element connecting the triangles of the heat bridge 
     //     (carbon, layer #6) 
@@ -2630,7 +2629,7 @@ void AliITSv3::CreateGeometry()
     dcei[0] = 0.;
     dcei[1] = .03;
     dcei[2] = 101.95/2.;
-    pMC->Gsvolu("SCE6", "TUBE", idtmed[252], dcei, 3);
+    gMC->Gsvolu("SCE6", "TUBE", idtmed[252], dcei, 3);
     
     // --- Define the part of the end-ladder stuff made of plastic (G10FR4) 
     //     (layer #6) 
@@ -2638,21 +2637,21 @@ void AliITSv3::CreateGeometry()
     dpla[0] = (10./(8.*7.))/2.;
     dpla[1] = 3.5;
     dpla[2] = 4.;
-    pMC->Gsvolu("EPL6", "BOX ", idtmed[262], dpla, 3);
+    gMC->Gsvolu("EPL6", "BOX ", idtmed[262], dpla, 3);
     
     // --- Define the part of the end-ladder stuff made of copper (layer #6) 
     
     dcop[0] = (2./(8.*7.))/2.;
     dcop[1] = 3.5;
     dcop[2] = 4.;
-    pMC->Gsvolu("ECU6", "BOX ", idtmed[259], dcop, 3);
+    gMC->Gsvolu("ECU6", "BOX ", idtmed[259], dcop, 3);
     
     // --- Define the part of the end-ladder stuff made of epoxy (layer #6) 
     
     depx[0] = (30./(8.*7.))/2.;
     depx[1] = 3.5;
     depx[2] = 4.;
-    pMC->Gsvolu("EPX6", "BOX ", idtmed[262], depx, 3);
+    gMC->Gsvolu("EPX6", "BOX ", idtmed[262], depx, 3);
     
     // --- Define the part of the end-ladder stuff made of silicon (bus) 
     //     (layer #6) 
@@ -2660,7 +2659,7 @@ void AliITSv3::CreateGeometry()
     dsil[0] = (20./(8.*7.))/2.;
     dsil[1] = 3.5;
     dsil[2] = 4.;
-    pMC->Gsvolu("ESI6", "BOX ", idtmed[251], dsil, 3);
+    gMC->Gsvolu("ESI6", "BOX ", idtmed[251], dsil, 3);
     
     // --- Place the end-ladder stuff into its mother (ELL5) 
     
@@ -2671,22 +2670,22 @@ void AliITSv3::CreateGeometry()
     // --- Plastic 
     
     xpos = -dela[0] + dpla[0];
-    pMC->Gspos("EPL6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPL6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Copper 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0];
-    pMC->Gspos("ECU6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ECU6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Epoxy 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0];
-    pMC->Gspos("EPX6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPX6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Silicon (bus) 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0] * 2. + sep + dsil[0];
-    pMC->Gspos("ESI6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ESI6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the sensitive part of the strips into its mother (ISV2) 
     
@@ -2695,7 +2694,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = dbox2[0] - dits[0];
       else            xpos = -dbox2[0] + dits[0];
       zpos = ((j - 1) - 12.) * 3.91 - 1.96;
-      pMC->Gspos("ITS6", j, "ISV2", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("ITS6", j, "ISV2", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the electronics of the strips into its mother (SSV2) 
@@ -2705,7 +2704,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = -dsrv[0] + .28;
       else            xpos = -dsrv[0] + .28 - dits[0] * 2. - .03;
       zpos = ((j - 1) - 12.) * 3.91 - 1.96 + .85;
-      pMC->Gspos("SCH5", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SCH5", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     }
 
     //--- Place the cooling tubes and the cooling fluid into their mother (SSV1)
@@ -2716,14 +2715,14 @@ void AliITSv3::CreateGeometry()
     // --- Left tube (just a matter of convention) 
     
     ypos = -2.25-0.1;
-    pMC->Gspos("STB6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right tube (just a matter of convention) 
     
     ypos = 2.25+0.;
-    pMC->Gspos("STB6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the heat bridge elements into their mother (SSV2) 
     
@@ -2731,7 +2730,7 @@ void AliITSv3::CreateGeometry()
     ypos = 0.;
     for (j = 1; j <= 27; ++j) {
       zpos = ((j - 1) - 12.) * 3.91 - 1.96 - 4.2/2.;
-      pMC->Gspos("SFR6", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SFR6", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the elements connecting the triangles of the heat bridge 
@@ -2743,19 +2742,19 @@ void AliITSv3::CreateGeometry()
     
     xpos = -dsrv[0] + .47;
     ypos = -(2.1+0.015);
-    pMC->Gspos("SCE6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right element 
     
     xpos = -dsrv[0] + .47;
     ypos = 2.1+0.015;
-    pMC->Gspos("SCE6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Top element 
     
     xpos = -dsrv[0] + .47 + TMath::Sqrt(3.) / 2. * 4.2 + .015;
     ypos = 0.;
-    pMC->Gspos("SCE6", 3, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 3, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the ghost volumes containing the strip ladders (ISV2), 
     //    electronics/cooling (SSV2) and end-ladder stuff (ELL6) of layer #6 in
@@ -2775,23 +2774,23 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 39. + offset1);
       ypos = rzero * TMath::Sin((i-1) * twopi / 39. + offset1);
       zpos = 0.;
-      pMC->Gspos("ISV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ISV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       
       // --- Electronics/cooling 
       
       xpos = runo * TMath::Cos((i-1) * twopi / 39. + offset1);
       ypos = runo * TMath::Sin((i-1) * twopi / 39. + offset1);
       zpos = 0.;
-      pMC->Gspos("SSV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("SSV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       
       // --- End-ladders (nagative-Z and positive-Z) 
       
       xpos = rtwo * TMath::Cos((i-1) * twopi / 39. + offset1);
       ypos = rtwo * TMath::Sin((i-1) * twopi / 39. + offset1);
       zpos = -(dbox2[2] + dela[2] + 6.);
-      pMC->Gspos("ELL6", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ELL6", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       zpos = dbox2[2] + dela[2] + 6.;
-      pMC->Gspos("ELL6", i + 39, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ELL6", i + 39, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
     }
     //#ifdef NEVER
   }
@@ -2823,9 +2822,9 @@ void AliITSv3::CreateGeometry()
       (27.-9.01) / xxm + (36.-27.) / xxm + (49.998-36.) / xxm;
     dgh[13] = 49.998;
     dgh[14] = 49.998;
-    pMC->Gsvolu("IT56", "PCON", idtmed[275], dgh, 15);
-    pMC->Gspos("IT56", 1, "ITSV", 0., 0., 0., 0, "ONLY");
-    pMC->Gsatt("IT56", "SEEN", 0);
+    gMC->Gsvolu("IT56", "PCON", idtmed[275], dgh, 15);
+    gMC->Gspos("IT56", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+    gMC->Gsatt("IT56", "SEEN", 0);
     
     // --- Layer #5 
     
@@ -2837,11 +2836,11 @@ void AliITSv3::CreateGeometry()
     dbox1[0] = (0.0600+2.*0.0150)/2.;
     dbox1[1] = 3.75;
     dbox1[2] = 86.31/2.;
-    pMC->Gsvolu("ISV1", "BOX ", idtmed[253], dbox1, 3);
+    gMC->Gsvolu("ISV1", "BOX ", idtmed[253], dbox1, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ISV1", "SEEN", 0);
+    gMC->Gsatt("ISV1", "SEEN", 0);
     
     // --- Define a ghost volume containing the electronics and cooling of
     //     a single ladder of layer #5 and fill it with air or vacuum 
@@ -2849,11 +2848,11 @@ void AliITSv3::CreateGeometry()
     dsrv[0] = (TMath::Sqrt(3.) / 2. * 4.2 + .47 + .05) / 2.;
     dsrv[1] = 3.75;
     dsrv[2] = 86.31/2.;
-    pMC->Gsvolu("SSV1", "BOX ", idtmed[253], dsrv, 3);
+    gMC->Gsvolu("SSV1", "BOX ", idtmed[253], dsrv, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("SSV1", "SEEN", 0);
+    gMC->Gsatt("SSV1", "SEEN", 0);
     
     // --- Define a ghost volume containing the end-ladder stuff of 
     //     a single ladder of layer #5 and fill it with air or vacuum 
@@ -2861,11 +2860,11 @@ void AliITSv3::CreateGeometry()
     dela[0] = 2.;
     dela[1] = 3.5;
     dela[2] = 4.;
-    pMC->Gsvolu("ELL5", "BOX ", idtmed[253], dela, 3);
+    gMC->Gsvolu("ELL5", "BOX ", idtmed[253], dela, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ELL5", "SEEN", 0);
+    gMC->Gsatt("ELL5", "SEEN", 0);
     
     // --- Define a volume containing the sensitive part of the strips 
     //     (silicon, layer #5) 
@@ -2873,7 +2872,7 @@ void AliITSv3::CreateGeometry()
     dits[0] = .015;
     dits[1] = 3.75;
     dits[2] = 2.1;
-    pMC->Gsvolu("ITS5", "BOX ", idtmed[249], dits, 3);
+    gMC->Gsvolu("ITS5", "BOX ", idtmed[249], dits, 3);
     
     // --- Define a volume containing the electronics of the strips 
     //     (silicon, layer #5) 
@@ -2881,21 +2880,21 @@ void AliITSv3::CreateGeometry()
     dchi[0] = .02;
     dchi[1] = 3.4;
     dchi[2] = .525;
-    pMC->Gsvolu("SCH5", "BOX ", idtmed[250], dchi, 3);
+    gMC->Gsvolu("SCH5", "BOX ", idtmed[250], dchi, 3);
     
     // --- Define the cooling tubes (aluminum, layer #5) 
     
     dtub[0] = .09;
     dtub[1] = dtub[0] + .01;
     dtub[2] = 86.31/2.;
-    pMC->Gsvolu("STB5", "TUBE", idtmed[255], dtub, 3);
+    gMC->Gsvolu("STB5", "TUBE", idtmed[255], dtub, 3);
     
     // --- Define the cooling fluid (water or freon, layer #5) 
     
     dwat[0] = 0.;
     dwat[1] = .09;
     dwat[2] = 86.31/2.;
-    pMC->Gsvolu("SWT5", "TUBE", idtmed[256], dwat, 3);
+    gMC->Gsvolu("SWT5", "TUBE", idtmed[256], dwat, 3);
     //        CALL GSVOLU('SWT5','TUBE',IDTMED(258),DWAT,3,IOUT)   ! freon
     
     //--- Define the (triangular) element of the heat bridge (carbon, layer #5)
@@ -2911,7 +2910,7 @@ void AliITSv3::CreateGeometry()
     dfra[7] = .015;
     dfra[8] = dfra[5];
     dfra[9] = dfra[6];
-    pMC->Gsvolu("SFR5", "PGON", idtmed[252], dfra, 10);
+    gMC->Gsvolu("SFR5", "PGON", idtmed[252], dfra, 10);
     
     // --- Define the element connecting the triangles of the heat bridge 
     //     (carbon, layer #5) 
@@ -2919,7 +2918,7 @@ void AliITSv3::CreateGeometry()
     dcei[0] = 0.;
     dcei[1] = .03;
     dcei[2] = 86.31/2.;
-    pMC->Gsvolu("SCE5", "TUBE", idtmed[252], dcei, 3);
+    gMC->Gsvolu("SCE5", "TUBE", idtmed[252], dcei, 3);
     
     // --- Define the part of the end-ladder stuff made of plastic (G10FR4) 
     //     (layer #5) 
@@ -2927,21 +2926,21 @@ void AliITSv3::CreateGeometry()
     dpla[0] = (10./(8.*7.))/2;
     dpla[1] = 3.5;
     dpla[2] = 4.;
-    pMC->Gsvolu("EPL5", "BOX ", idtmed[262], dpla, 3);
+    gMC->Gsvolu("EPL5", "BOX ", idtmed[262], dpla, 3);
     
     // --- Define the part of the end-ladder stuff made of copper (layer #5) 
     
     dcop[0] = (2./(8.*7.))/2;
     dcop[1] = 3.5;
     dcop[2] = 4.;
-    pMC->Gsvolu("ECU5", "BOX ", idtmed[259], dcop, 3);
+    gMC->Gsvolu("ECU5", "BOX ", idtmed[259], dcop, 3);
     
     // --- Define the part of the end-ladder stuff made of epoxy (layer #5) 
     
     depx[0] = (30./(8.*7.))/2.;
     depx[1] = 3.5;
     depx[2] = 4.;
-    pMC->Gsvolu("EPX5", "BOX ", idtmed[262], depx, 3);
+    gMC->Gsvolu("EPX5", "BOX ", idtmed[262], depx, 3);
     
     // --- Define the part of the end-ladder stuff made of silicon (bus) 
     //     (layer #5) 
@@ -2949,7 +2948,7 @@ void AliITSv3::CreateGeometry()
     dsil[0] = (20./(8.*7.))/2.;
     dsil[1] = 3.5;
     dsil[2] = 4.;
-    pMC->Gsvolu("ESI5", "BOX ", idtmed[251], dsil, 3);
+    gMC->Gsvolu("ESI5", "BOX ", idtmed[251], dsil, 3);
     
     // --- Place the end-ladder stuff into its mother (ELL5) 
     
@@ -2960,22 +2959,22 @@ void AliITSv3::CreateGeometry()
     // --- Plastic 
     
     xpos = -dela[0] + dpla[0];
-    pMC->Gspos("EPL5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPL5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Copper 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0];
-    pMC->Gspos("ECU5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ECU5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Epoxy 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0];
-    pMC->Gspos("EPX5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPX5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Silicon (bus) 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0] * 2. + sep + dsil[0];
-    pMC->Gspos("ESI5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ESI5", 1, "ELL5", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the sensitive part of the strips into its mother (ISV1) 
     
@@ -2984,7 +2983,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = dbox1[0] - dits[0];
       else            xpos = -dbox1[0] + dits[0];
       zpos = ((j - 1) - 10.) * 3.91 - 1.96;
-      pMC->Gspos("ITS5", j, "ISV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("ITS5", j, "ISV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the electronics of the strips into its mother (SSV1) 
@@ -2994,7 +2993,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = -dsrv[0] + .28;
       else            xpos = -dsrv[0] + .28 - dits[0] * 2. - .03;
       zpos = ((j - 1) - 10.) * 3.91 - 1.96 + .85;
-      pMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     //--- Place the cooling tubes and the cooling fluid into their mother (SSV1)
@@ -3005,14 +3004,14 @@ void AliITSv3::CreateGeometry()
     // --- Left tube (just a matter of convention) 
     
     ypos = -(2.25+0.1);
-    pMC->Gspos("STB5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right tube (just a matter of convention) 
     
     ypos = (2.25+0.1);
-    pMC->Gspos("STB5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the heat bridge elements into their mother (SSV1) 
     
@@ -3020,7 +3019,7 @@ void AliITSv3::CreateGeometry()
     ypos = 0.;
     for (j = 1; j <= 23; ++j) {
       zpos = ((j - 1) - 10.) * 3.91 - 1.96 - 4.2/2.;
-      pMC->Gspos("SFR5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SFR5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the elements connecting the triangles of the heat bridge 
@@ -3032,19 +3031,19 @@ void AliITSv3::CreateGeometry()
     
     xpos = -dsrv[0] + .47;
     ypos = -(2.1+0.015);
-    pMC->Gspos("SCE5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 1, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right element 
     
     xpos = -dsrv[0] + .47;
     ypos = (2.1+0.015);
-    pMC->Gspos("SCE5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 2, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Top element 
     
     xpos = -dsrv[0] + .47 + TMath::Sqrt(3.) / 2. * 4.2 + .015;
     ypos = 0.;
-    pMC->Gspos("SCE5", 3, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE5", 3, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the ghost volumes containing the strip ladders (ISV1), 
     //    electronics/cooling (SSV1) and end-ladder stuff (ELL5) of layer #5 in
@@ -3064,23 +3063,23 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 32. + offset1);
       ypos = rzero * TMath::Sin((i-1) * twopi / 32. + offset1);
       zpos = 0.;
-      pMC->Gspos("ISV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ISV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       
       // --- Electronics/cooling 
       
       xpos = runo * TMath::Cos((i-1) * twopi / 32. + offset1);
       ypos = runo * TMath::Sin((i-1) * twopi / 32. + offset1);
       zpos = 0.;
-      pMC->Gspos("SSV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("SSV1", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       
       // --- End-ladders (nagative-Z and positive-Z) 
       
       xpos = rtwo * TMath::Cos((i-1) * twopi / 32. + offset1);
       ypos = rtwo * TMath::Sin((i-1) * twopi / 32. + offset1);
       zpos = -(dbox1[2] + dela[2] + 6.);
-      pMC->Gspos("ELL5", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ELL5", i, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
       zpos = dbox1[2] + dela[2] + 6.;
-      pMC->Gspos("ELL5", i + 35, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
+      gMC->Gspos("ELL5", i + 35, "IT56", xpos, ypos, zpos, idrotm[i+1499], "ONLY");
     }
     
     
@@ -3094,11 +3093,11 @@ void AliITSv3::CreateGeometry()
     dbox2[0] = (0.0600+2.*0.0150)/2.;
     dbox2[1] = 3.75;
     dbox2[2] = 94.13/2.;
-    pMC->Gsvolu("ISV2", "BOX ", idtmed[253], dbox2, 3);
+    gMC->Gsvolu("ISV2", "BOX ", idtmed[253], dbox2, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ISV2", "SEEN", 0);
+    gMC->Gsatt("ISV2", "SEEN", 0);
     
     // --- Define a ghost volume containing the electronics and cooling of
     //     a single ladder of layer #6 and fill it with air or vacuum 
@@ -3106,11 +3105,11 @@ void AliITSv3::CreateGeometry()
     dsrv[0] = (TMath::Sqrt(3.) / 2. * 4.2 + .47 + .05) / 2.;
     dsrv[1] = 3.75;
     dsrv[2] = 94.13/2.;
-    pMC->Gsvolu("SSV2", "BOX ", idtmed[253], dsrv, 3);
+    gMC->Gsvolu("SSV2", "BOX ", idtmed[253], dsrv, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("SSV2", "SEEN", 0);
+    gMC->Gsatt("SSV2", "SEEN", 0);
     
     // --- Define a ghost volume containing the end-ladder stuff of 
     //     a single ladder of layer #6 and fill it with air or vacuum 
@@ -3118,11 +3117,11 @@ void AliITSv3::CreateGeometry()
     dela[0] = 2.;
     dela[1] = 3.5;
     dela[2] = 4.;
-    pMC->Gsvolu("ELL6", "BOX ", idtmed[253], dela, 3);
+    gMC->Gsvolu("ELL6", "BOX ", idtmed[253], dela, 3);
     
     // --- Make the ghost volume invisible 
     
-    pMC->Gsatt("ELL6", "SEEN", 0);
+    gMC->Gsatt("ELL6", "SEEN", 0);
     
     // --- Define a volume containing the sensitive part of the strips 
     //     (silicon, layer #6) 
@@ -3130,7 +3129,7 @@ void AliITSv3::CreateGeometry()
     dits[0] = .015;
     dits[1] = 3.75;
     dits[2] = 2.1;
-    pMC->Gsvolu("ITS6", "BOX ", idtmed[249], dits, 3);
+    gMC->Gsvolu("ITS6", "BOX ", idtmed[249], dits, 3);
     
     // --- Define a volume containing the electronics of the strips 
     //     (silicon, layer #6) 
@@ -3138,21 +3137,21 @@ void AliITSv3::CreateGeometry()
     dchi[0] = .02;
     dchi[1] = 3.4;
     dchi[2] = .525;
-    pMC->Gsvolu("SCH6", "BOX ", idtmed[250], dchi, 3);
+    gMC->Gsvolu("SCH6", "BOX ", idtmed[250], dchi, 3);
     
     // --- Define the cooling tubes (aluminum, layer #6) 
     
     dtub[0] = .09;
     dtub[1] = dtub[0] + .01;
     dtub[2] = 94.13/2.;
-    pMC->Gsvolu("STB6", "TUBE", idtmed[255], dtub, 3);
+    gMC->Gsvolu("STB6", "TUBE", idtmed[255], dtub, 3);
     
     // --- Define the cooling fluid (water or freon, layer #6) 
     
     dwat[0] = 0.;
     dwat[1] = .09;
     dwat[2] = 94.13/2.;
-    pMC->Gsvolu("SWT6", "TUBE", idtmed[256], dwat, 3);
+    gMC->Gsvolu("SWT6", "TUBE", idtmed[256], dwat, 3);
     //        CALL GSVOLU('SWT6','TUBE',IDTMED(258),DWAT,3,IOUT)   ! freon
     
     //--- Define the (triangular) element of the heat bridge (carbon, layer #6)
@@ -3168,7 +3167,7 @@ void AliITSv3::CreateGeometry()
     dfra[7] = .015;
     dfra[8] = dfra[5];
     dfra[9] = dfra[6];
-    pMC->Gsvolu("SFR6", "PGON", idtmed[252], dfra, 10);
+    gMC->Gsvolu("SFR6", "PGON", idtmed[252], dfra, 10);
     
     // --- Define the element connecting the triangles of the heat bridge 
     //     (carbon, layer #6) 
@@ -3176,7 +3175,7 @@ void AliITSv3::CreateGeometry()
     dcei[0] = 0.;
     dcei[1] = .03;
     dcei[2] = 94.13/2.;
-    pMC->Gsvolu("SCE6", "TUBE", idtmed[252], dcei, 3);
+    gMC->Gsvolu("SCE6", "TUBE", idtmed[252], dcei, 3);
     
     // --- Define the part of the end-ladder stuff made of plastic (G10FR4) 
     //     (layer #6) 
@@ -3184,21 +3183,21 @@ void AliITSv3::CreateGeometry()
     dpla[0] = (10./(8.*7.))/2;
     dpla[1] = 3.5;
     dpla[2] = 4.;
-    pMC->Gsvolu("EPL6", "BOX ", idtmed[262], dpla, 3);
+    gMC->Gsvolu("EPL6", "BOX ", idtmed[262], dpla, 3);
     
     // --- Define the part of the end-ladder stuff made of copper (layer #6) 
     
     dcop[0] = (2./(8.*7.))/2;
     dcop[1] = 3.5;
     dcop[2] = 4.;
-    pMC->Gsvolu("ECU6", "BOX ", idtmed[259], dcop, 3);
+    gMC->Gsvolu("ECU6", "BOX ", idtmed[259], dcop, 3);
     
     // --- Define the part of the end-ladder stuff made of epoxy (layer #6) 
     
     depx[0] = (30./(8.*7.))/2.;
     depx[1] = 3.5;
     depx[2] = 4.;
-    pMC->Gsvolu("EPX6", "BOX ", idtmed[262], depx, 3);
+    gMC->Gsvolu("EPX6", "BOX ", idtmed[262], depx, 3);
     
     // --- Define the part of the end-ladder stuff made of silicon (bus) 
     //     (layer #6) 
@@ -3206,7 +3205,7 @@ void AliITSv3::CreateGeometry()
     dsil[0] = (20./(8.*7.))/2.;
     dsil[1] = 3.5;
     dsil[2] = 4.;
-    pMC->Gsvolu("ESI6", "BOX ", idtmed[251], dsil, 3);
+    gMC->Gsvolu("ESI6", "BOX ", idtmed[251], dsil, 3);
     
     // --- Place the end-ladder stuff into its mother (ELL5) 
     
@@ -3217,22 +3216,22 @@ void AliITSv3::CreateGeometry()
     // --- Plastic 
     
     xpos = -dela[0] + dpla[0];
-    pMC->Gspos("EPL6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPL6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Copper 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0];
-    pMC->Gspos("ECU6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ECU6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Epoxy 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0];
-    pMC->Gspos("EPX6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("EPX6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Silicon (bus) 
     
     xpos = -dela[0] + dpla[0] * 2. + sep + dcop[0] * 2. + sep + depx[0] * 2. + sep + dsil[0];
-    pMC->Gspos("ESI6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("ESI6", 1, "ELL6", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the sensitive part of the strips into its mother (ISV2) 
     
@@ -3241,7 +3240,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = -dbox2[0] + dits[0];
       else            xpos = dbox2[0] - dits[0];
       zpos = ((j - 1) - 11.) * 3.91 - 1.96;
-      pMC->Gspos("ITS6", j, "ISV2", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("ITS6", j, "ISV2", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the electronics of the strips into its mother (SSV2) 
@@ -3251,7 +3250,7 @@ void AliITSv3::CreateGeometry()
       if (j % 2 == 0) xpos = -dsrv[0] + .28 - dits[0] * 2. - .03;
       else            xpos = -dsrv[0] + .28;
       zpos = ((j - 1) - 11.) * 3.91 - 1.96 + .85;
-      pMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SCH5", j, "SSV1", xpos, ypos, zpos, 0, "ONLY");
     }
     
     //--- Place the cooling tubes and the cooling fluid into their mother (SSV2)
@@ -3262,14 +3261,14 @@ void AliITSv3::CreateGeometry()
     // --- Left tube (just a matter of convention) 
     
     ypos = -(2.25+0.1);
-    pMC->Gspos("STB6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right tube (just a matter of convention) 
     
     ypos = (2.25+0.1);
-    pMC->Gspos("STB6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
-    pMC->Gspos("SWT6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("STB6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SWT6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the heat bridge elements into their mother (SSV2) 
     
@@ -3277,7 +3276,7 @@ void AliITSv3::CreateGeometry()
     ypos = 0.;
     for (j = 1; j <= 25; ++j) {
       zpos = ((j - 1) - 11.) * 3.91 - 1.96 - 4.2/2.;
-      pMC->Gspos("SFR6", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+      gMC->Gspos("SFR6", j, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     }
     
     // --- Place the elements connecting the triangles of the heat bridge 
@@ -3289,19 +3288,19 @@ void AliITSv3::CreateGeometry()
     
     xpos = -dsrv[0] + .47;
     ypos = -(2.1+0.015);
-    pMC->Gspos("SCE6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 1, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Right element 
     
     xpos = -dsrv[0] + .47;
     ypos = (2.1+0.015);
-    pMC->Gspos("SCE6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 2, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Top element 
     
     xpos = -dsrv[0] + .47 + TMath::Sqrt(3.) / 2. * 4.2 + .015;
     ypos = 0.;
-    pMC->Gspos("SCE6", 3, "SSV2", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gspos("SCE6", 3, "SSV2", xpos, ypos, zpos, 0, "ONLY");
     
     // --- Place the ghost volumes containing the strip ladders (ISV2), 
     //    electronics/cooling (SSV2) and end-ladder stuff (ELL6) of layer #6 in
@@ -3321,23 +3320,23 @@ void AliITSv3::CreateGeometry()
       xpos = rzero * TMath::Cos((i-1) * twopi / 36. + offset1);
       ypos = rzero * TMath::Sin((i-1) * twopi / 36. + offset1);
       zpos = 0.;
-      pMC->Gspos("ISV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ISV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       
       // --- Electronics/cooling 
       
       xpos = runo * TMath::Cos((i-1) * twopi / 36. + offset1);
       ypos = runo * TMath::Sin((i-1) * twopi / 36. + offset1);
       zpos = 0.;
-      pMC->Gspos("SSV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("SSV2", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       
       // --- End-ladders (nagative-Z and positive-Z) 
       
       xpos = rtwo * TMath::Cos((i-1) * twopi / 36. + offset1);
       ypos = rtwo * TMath::Sin((i-1) * twopi / 36. + offset1);
       zpos = -(dbox2[2] + dela[2] + 6.);
-      pMC->Gspos("ELL6", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ELL6", i, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
       zpos = dbox2[2] + dela[2] + 6.;
-      pMC->Gspos("ELL6", i + 39, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
+      gMC->Gspos("ELL6", i + 39, "IT56", xpos, ypos, zpos, idrotm[i+1599], "ONLY");
     }
     
     
@@ -3371,8 +3370,8 @@ void AliITSv3::CreateGeometry()
     dits[1] = dits[0] + .06926;
     dits[2] = dpcb[2] * 2. + 62.7 - 10.5;
     // old value 60.3 
-    pMC->Gsvolu("ITSG", "TUBE", idtmed[274], dits, 3);
-    pMC->Gspos("ITSG", 1, "ITSV", 0., 0., 0., 0, "ONLY");
+    gMC->Gsvolu("ITSG", "TUBE", idtmed[274], dits, 3);
+    gMC->Gspos("ITSG", 1, "ITSV", 0., 0., 0., 0, "ONLY");
   } else {
     goto L8901;
   }
@@ -3396,8 +3395,8 @@ void AliITSv3::CreateGeometry()
       xtra[i] = rzero * TMath::Cos(i * angle * degrad);
       ytra[i] = rzero * TMath::Sin(i * angle * degrad);
       ztra[i] = 0.;
-      pMC->Gsvolu(natra[i], "TUBE", idtmed[274], dtra, 3);
-      pMC->Gspos(natra[i], 1, "ITSV", xtra[i], ytra[i], ztra[i], 0, "ONLY");
+      gMC->Gsvolu(natra[i], "TUBE", idtmed[274], dtra, 3);
+      gMC->Gspos(natra[i], 1, "ITSV", xtra[i], ytra[i], ztra[i], 0, "ONLY");
     }
     
     atheta = 22.5;
@@ -3406,17 +3405,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[0] + xtra[1]) / 2.;
     ypos   = (ytra[0] + ytra[1]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[0], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[0], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5100], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5100], "ONLY");
+    gMC->Gspos(natra1[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5100], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[1], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[1], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5101], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5101], "ONLY");
+    gMC->Gspos(natra1[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5101], "ONLY");
     
     atheta = 67.5;
     aphi2  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3424,17 +3423,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[1] + xtra[2]) / 2.;
     ypos   = (ytra[1] + ytra[2]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[2], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[2], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5102], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5102], "ONLY");
+    gMC->Gspos(natra1[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5102], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[3], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[3], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5103], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5103], "ONLY");
+    gMC->Gspos(natra1[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5103], "ONLY");
     
     atheta = 112.5;
     aphi1  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3442,17 +3441,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[2] + xtra[3]) / 2.;
     ypos   = (ytra[2] + ytra[3]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[4], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[4], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5104], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5104], "ONLY");
+    gMC->Gspos(natra1[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5104], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[5], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[5], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5105], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5105], "ONLY");
+    gMC->Gspos(natra1[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5105], "ONLY");
     
     atheta = 157.5;
     aphi2  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3460,17 +3459,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[3] + xtra[4]) / 2.;
     ypos   = (ytra[3] + ytra[4]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[6], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[6], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5106], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5106], "ONLY");
+    gMC->Gspos(natra1[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5106], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[7], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[7], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5107], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5107], "ONLY");
+    gMC->Gspos(natra1[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5107], "ONLY");
     
     atheta = 22.5;
     aphi2  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3478,17 +3477,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[4] + xtra[5]) / 2.;
     ypos   = (ytra[4] + ytra[5]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[8], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[8], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5108], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5108], "ONLY");
+    gMC->Gspos(natra1[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5108], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[9], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[9], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5109], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5109], "ONLY");
+    gMC->Gspos(natra1[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5109], "ONLY");
     
     atheta = 67.5;
     aphi1  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3496,17 +3495,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[5] + xtra[6]) / 2.;
     ypos   = (ytra[5] + ytra[6]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[10], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[10], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5110], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5110], "ONLY");
+    gMC->Gspos(natra1[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5110], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[11], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[11], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5111], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5111], "ONLY");
+    gMC->Gspos(natra1[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5111], "ONLY");
     
     atheta = 112.5;
     aphi2  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3514,17 +3513,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[6] + xtra[7]) / 2.;
     ypos   = (ytra[6] + ytra[7]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[12], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[12], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5112], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5112], "ONLY");
+    gMC->Gspos(natra1[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5112], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[13], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[13], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5113], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5113], "ONLY");
+    gMC->Gspos(natra1[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5113], "ONLY");
     
     atheta = 157.5;
     aphi1  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3532,17 +3531,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[7] + xtra[0]) / 2.;
     ypos   = (ytra[7] + ytra[0]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[14], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[14], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5114], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5114], "ONLY");
+    gMC->Gspos(natra1[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5114], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[15], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[15], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5115], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5115], "ONLY");
+    gMC->Gspos(natra1[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5115], "ONLY");
     
     
   } else if (fMinorVersion == 4) {
@@ -3561,8 +3560,8 @@ void AliITSv3::CreateGeometry()
       xtra[i] = rzero * TMath::Cos(i * angle * degrad);
       ytra[i] = rzero * TMath::Sin(i * angle * degrad);
       ztra[i] = 0.;
-      pMC->Gsvolu(natra[i], "TUBE", idtmed[274], dtra, 3);
-      pMC->Gspos(natra[i], 1, "ITSV", xtra[i], ytra[i], ztra[i], 0, "ONLY");
+      gMC->Gsvolu(natra[i], "TUBE", idtmed[274], dtra, 3);
+      gMC->Gspos(natra[i], 1, "ITSV", xtra[i], ytra[i], ztra[i], 0, "ONLY");
     }
     
     atheta = 22.5;
@@ -3571,17 +3570,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[0] + xtra[1]) / 2.;
     ypos   = (ytra[0] + ytra[1]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[0], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[0], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5100], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5100], "ONLY");
+    gMC->Gspos(natra1[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5100], "ONLY");
     zpos   = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[1], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[1], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5101], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5101], "ONLY");
+    gMC->Gspos(natra1[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5101], "ONLY");
     
     atheta = 67.5;
     aphi2  = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3589,17 +3588,17 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra[1] + xtra[2]) / 2.;
     ypos   = (ytra[1] + ytra[2]) / 2.;
     zpos   = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[2], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[2], "TUBE", idtmed[274], dtra1, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5102], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5102], "ONLY");
+    gMC->Gspos(natra1[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5102], "ONLY");
     zpos = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[3], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[3], "TUBE", idtmed[274], dtra1, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5103], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5103], "ONLY");
+    gMC->Gspos(natra1[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5103], "ONLY");
     
     atheta = 112.5;
     aphi1 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3607,17 +3606,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra[2] + xtra[3]) / 2.;
     ypos  = (ytra[2] + ytra[3]) / 2.;
     zpos  = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[4], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[4], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5104], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5104], "ONLY");
+    gMC->Gspos(natra1[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5104], "ONLY");
     zpos  = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[5], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[5], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5105], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5105], "ONLY");
+    gMC->Gspos(natra1[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5105], "ONLY");
     
     atheta = 157.5;
     aphi2 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3625,17 +3624,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra[3] + xtra[4]) / 2.;
     ypos  = (ytra[3] + ytra[4]) / 2.;
     zpos  = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[6], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[6], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5106], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5106], "ONLY");
+    gMC->Gspos(natra1[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5106], "ONLY");
     zpos  = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[7], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[7], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5107], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5107], "ONLY");
+    gMC->Gspos(natra1[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5107], "ONLY");
     
     atheta = 22.5;
     aphi2 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3643,17 +3642,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra[4] + xtra[5]) / 2.;
     ypos  = (ytra[4] + ytra[5]) / 2.;
     zpos  = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[8], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[8], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5108], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5108], "ONLY");
+    gMC->Gspos(natra1[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5108], "ONLY");
     zpos  = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[9], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[9], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5109], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5109], "ONLY");
+    gMC->Gspos(natra1[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5109], "ONLY");
     
     atheta = 67.5;
     aphi1 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3661,17 +3660,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra[5] + xtra[6]) / 2.;
     ypos = (ytra[5] + ytra[6]) / 2.;
     zpos = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[10], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[10], "TUBE", idtmed[274], dtra1, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5110], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5110], "ONLY");
+    gMC->Gspos(natra1[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5110], "ONLY");
     zpos = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[11], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[11], "TUBE", idtmed[274], dtra1, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5111], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5111], "ONLY");
+    gMC->Gspos(natra1[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5111], "ONLY");
     
     atheta = 112.5;
     aphi2 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3679,17 +3678,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra[6] + xtra[7]) / 2.;
     ypos  = (ytra[6] + ytra[7]) / 2.;
     zpos  = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[12], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[12], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5112], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5112], "ONLY");
+    gMC->Gspos(natra1[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5112], "ONLY");
     zpos  = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[13], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[13], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5113], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5113], "ONLY");
+    gMC->Gspos(natra1[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5113], "ONLY");
     
     atheta = 157.5;
     aphi1 = TMath::ACos(dtra[2] / TMath::Sqrt(dtra[2] * dtra[2] + (50.5 / cos(28.*degrad) * (50.5 / cos(28.*degrad))- 50.5*50.5))) * raddeg;
@@ -3697,17 +3696,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra[7] + xtra[0]) / 2.;
     ypos  = (ytra[7] + ytra[0]) / 2.;
     zpos  = dtra[2] / 2.;
-    pMC->Gsvolu(natra1[14], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[14], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5114], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra1[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5114], "ONLY");
+    gMC->Gspos(natra1[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5114], "ONLY");
     zpos  = -dtra[2] / 2.;
-    pMC->Gsvolu(natra1[15], "TUBE", idtmed[274], dtra1, 3);
+    gMC->Gsvolu(natra1[15], "TUBE", idtmed[274], dtra1, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5115], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra1[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5115], "ONLY");
+    gMC->Gspos(natra1[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5115], "ONLY");
   } else {
     goto L9012;
   }
@@ -3735,8 +3734,8 @@ void AliITSv3::CreateGeometry()
       xtra1[i] = rzero * TMath::Cos((i * angle + offset) *degrad);
       ytra1[i] = rzero * TMath::Sin((i * angle + offset) *degrad);
       ztra1[i] = 0.;
-      pMC->Gsvolu(natra2[i], "TUBE", idtmed[274], dtra2, 3);
-      pMC->Gspos(natra2[i], 1, "ITSV", xtra1[i], ytra1[i], ztra1[i], 0, "ONLY");
+      gMC->Gsvolu(natra2[i], "TUBE", idtmed[274], dtra2, 3);
+      gMC->Gspos(natra2[i], 1, "ITSV", xtra1[i], ytra1[i], ztra1[i], 0, "ONLY");
     }
     
     atheta = 60.;
@@ -3744,66 +3743,66 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[0] + xtra1[1]) / 2.;
     ypos = (ytra1[0] + ytra1[1]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[0], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[0], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5200], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5200], "ONLY");
+    gMC->Gspos(natra3[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5200], "ONLY");
     
     atheta = 120.;
     aphi = 90.;
     xpos = (xtra1[1] + xtra1[2]) / 2.;
     ypos = (ytra1[1] + ytra1[2]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[1], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[1], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5201], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5201], "ONLY");
+    gMC->Gspos(natra3[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5201], "ONLY");
     
     atheta = 180.;
     aphi = 90.;
     xpos = (xtra1[2] + xtra1[3]) / 2.;
     ypos = (ytra1[2] + ytra1[3]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[2], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[2], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5202], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5202], "ONLY");
+    gMC->Gspos(natra3[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5202], "ONLY");
     
     atheta = 60.;
     aphi = 90.;
     xpos = (xtra1[3] + xtra1[4]) / 2.;
     ypos = (ytra1[3] + ytra1[4]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[3], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[3], "TUBE", idtmed[274], dtra3, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5203], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5203], "ONLY");
+    gMC->Gspos(natra3[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5203], "ONLY");
     
     atheta = 120.;
     aphi = 90.;
     xpos = (xtra1[4] + xtra1[5]) / 2.;
     ypos = (ytra1[4] + ytra1[5]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[4], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[4], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5204], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5204], "ONLY");
+    gMC->Gspos(natra3[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5204], "ONLY");
     
     atheta = 180.;
     aphi = 90.;
     xpos = (xtra1[5] + xtra1[0]) / 2.;
     ypos = (ytra1[5] + ytra1[0]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[5], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[5], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5205], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5205], "ONLY");
+    gMC->Gspos(natra3[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5205], "ONLY");
     
     atheta = 60.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3811,17 +3810,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra1[0] + xtra1[1]) / 2.;
     ypos  = (ytra1[0] + ytra1[1]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[0], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[0], "TUBE", idtmed[274], dtra4, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5210], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5210], "ONLY");
+    gMC->Gspos(natra4[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5210], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[1], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[1], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5211], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5211], "ONLY");
+    gMC->Gspos(natra4[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5211], "ONLY");
     
     atheta = 120.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3829,17 +3828,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[1] + xtra1[2]) / 2.;
     ypos = (ytra1[1] + ytra1[2]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[2], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[2], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5212], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5212], "ONLY");
+    gMC->Gspos(natra4[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5212], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[3], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[3], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5213], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5213], "ONLY");
+    gMC->Gspos(natra4[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5213], "ONLY");
     
     atheta = 180.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3847,17 +3846,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra1[2] + xtra1[3]) / 2.;
     ypos  = (ytra1[2] + ytra1[3]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[4], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[4], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5214], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5214], "ONLY");
+    gMC->Gspos(natra4[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5214], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[5], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[5], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5215], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5215], "ONLY");
+    gMC->Gspos(natra4[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5215], "ONLY");
     atheta = 180.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad)) 
                                                                      - 50.*50.))) * raddeg;
@@ -3865,17 +3864,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[2] + xtra1[3]) / 2.;
     ypos = (ytra1[2] + ytra1[3]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[6], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[6], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5216], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5216], "ONLY");
+    gMC->Gspos(natra4[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5216], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[7], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[7], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5217], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5217], "ONLY");
+    gMC->Gspos(natra4[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5217], "ONLY");
     
     atheta = 60.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3883,17 +3882,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[3] + xtra1[4]) / 2.;
     ypos = (ytra1[3] + ytra1[4]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[8], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[8], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5218], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5218], "ONLY");
+    gMC->Gspos(natra4[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5218], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[9], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[9], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5219], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5219], "ONLY");
+    gMC->Gspos(natra4[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5219], "ONLY");
     
     atheta = 120.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3901,17 +3900,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra1[4] + xtra1[5]) / 2.;
     ypos  = (ytra1[4] + ytra1[5]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[10], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[10], "TUBE", idtmed[274], dtra4, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5220], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5220], "ONLY");
+    gMC->Gspos(natra4[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5220], "ONLY");
     zpos  = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[11], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[11], "TUBE", idtmed[274], dtra4, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5221], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5221], "ONLY");
+    gMC->Gspos(natra4[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5221], "ONLY");
     
     atheta = 180.;
     aphi2  = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -3919,34 +3918,34 @@ void AliITSv3::CreateGeometry()
     xpos   = (xtra1[5] + xtra1[0]) / 2.;
     ypos   = (ytra1[5] + ytra1[0]) / 2.;
     zpos   = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[12], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[12], "TUBE", idtmed[274], dtra4, 3);
     r2     = atheta + 90.;
     r3     = atheta + 90.;
     AliMatrix(idrotm[5222], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5222], "ONLY");
+    gMC->Gspos(natra4[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5222], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[13], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[13], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5223], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5223], "ONLY");
+    gMC->Gspos(natra4[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5223], "ONLY");
     atheta = 180.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
     aphi2 = 180. - aphi1;
     xpos  = (xtra1[5] + xtra1[0]) / 2.;
     ypos  = (ytra1[5] + ytra1[0]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[14], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[14], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5224], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5224], "ONLY");
+    gMC->Gspos(natra4[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5224], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[15], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[15], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5225], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5225], "ONLY");
+    gMC->Gspos(natra4[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5225], "ONLY");
     
     
   } else if (fMinorVersion == 5) {
@@ -3968,8 +3967,8 @@ void AliITSv3::CreateGeometry()
       xtra1[i] = rzero * TMath::Cos((i * angle + offset) *degrad);
       ytra1[i] = rzero * TMath::Sin((i * angle + offset) *degrad);
       ztra1[i] = 0.;
-      pMC->Gsvolu(natra2[i], "TUBE", idtmed[274], dtra2, 3);
-      pMC->Gspos(natra2[i], 1, "ITSV", xtra1[i], ytra1[i], ztra1[i], 0, "ONLY");
+      gMC->Gsvolu(natra2[i], "TUBE", idtmed[274], dtra2, 3);
+      gMC->Gspos(natra2[i], 1, "ITSV", xtra1[i], ytra1[i], ztra1[i], 0, "ONLY");
     }
     
     atheta = 60.;
@@ -3977,66 +3976,66 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[0] + xtra1[1]) / 2.;
     ypos = (ytra1[0] + ytra1[1]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[0], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[0], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5200], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5200], "ONLY");
+    gMC->Gspos(natra3[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5200], "ONLY");
     
     atheta = 120.;
     aphi = 90.;
     xpos = (xtra1[1] + xtra1[2]) / 2.;
     ypos = (ytra1[1] + ytra1[2]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[1], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[1], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5201], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5201], "ONLY");
+    gMC->Gspos(natra3[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5201], "ONLY");
     
     atheta = 180.;
     aphi = 90.;
     xpos = (xtra1[2] + xtra1[3]) / 2.;
     ypos = (ytra1[2] + ytra1[3]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[2], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[2], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5202], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5202], "ONLY");
+    gMC->Gspos(natra3[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5202], "ONLY");
     
     atheta = 60.;
     aphi   = 90.;
     xpos   = (xtra1[3] + xtra1[4]) / 2.;
     ypos   = (ytra1[3] + ytra1[4]) / 2.;
     zpos   = 0.;
-    pMC->Gsvolu(natra3[3], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[3], "TUBE", idtmed[274], dtra3, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5203], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5203], "ONLY");
+    gMC->Gspos(natra3[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5203], "ONLY");
     
     atheta = 120.;
     aphi = 90.;
     xpos = (xtra1[4] + xtra1[5]) / 2.;
     ypos = (ytra1[4] + ytra1[5]) / 2.;
     zpos = 0.;
-    pMC->Gsvolu(natra3[4], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[4], "TUBE", idtmed[274], dtra3, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5204], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5204], "ONLY");
+    gMC->Gspos(natra3[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5204], "ONLY");
     
     atheta = 180.;
     aphi   = 90.;
     xpos   = (xtra1[5] + xtra1[0]) / 2.;
     ypos   = (ytra1[5] + ytra1[0]) / 2.;
     zpos   = 0.;
-    pMC->Gsvolu(natra3[5], "TUBE", idtmed[274], dtra3, 3);
+    gMC->Gsvolu(natra3[5], "TUBE", idtmed[274], dtra3, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5205], 90., atheta, aphi + 90., r2, aphi, r3);
-    pMC->Gspos(natra3[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5205], "ONLY");
+    gMC->Gspos(natra3[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5205], "ONLY");
     
     atheta = 60.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4044,17 +4043,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[0] + xtra1[1]) / 2.;
     ypos = (ytra1[0] + ytra1[1]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[0], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[0], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5210], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5210], "ONLY");
+    gMC->Gspos(natra4[0], 1, "ITSV", xpos, ypos, zpos, idrotm[5210], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[1], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[1], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5211], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5211], "ONLY");
+    gMC->Gspos(natra4[1], 1, "ITSV", xpos, ypos, zpos, idrotm[5211], "ONLY");
     
     atheta = 120.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4062,17 +4061,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[1] + xtra1[2]) / 2.;
     ypos = (ytra1[1] + ytra1[2]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[2], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[2], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5212], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5212], "ONLY");
+    gMC->Gspos(natra4[2], 1, "ITSV", xpos, ypos, zpos, idrotm[5212], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[3], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[3], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5213], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5213], "ONLY");
+    gMC->Gspos(natra4[3], 1, "ITSV", xpos, ypos, zpos, idrotm[5213], "ONLY");
     
     atheta = 180.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4080,34 +4079,34 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[2] + xtra1[3]) / 2.;
     ypos = (ytra1[2] + ytra1[3]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[4], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[4], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5214], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5214], "ONLY");
+    gMC->Gspos(natra4[4], 1, "ITSV", xpos, ypos, zpos, idrotm[5214], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[5], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[5], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5215], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5215], "ONLY");
+    gMC->Gspos(natra4[5], 1, "ITSV", xpos, ypos, zpos, idrotm[5215], "ONLY");
     atheta = 180.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
     aphi2 = 180. - aphi1;
     xpos = (xtra1[2] + xtra1[3]) / 2.;
     ypos = (ytra1[2] + ytra1[3]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[6], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[6], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5216], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5216], "ONLY");
+    gMC->Gspos(natra4[6], 1, "ITSV", xpos, ypos, zpos, idrotm[5216], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[7], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[7], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5217], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5217], "ONLY");
+    gMC->Gspos(natra4[7], 1, "ITSV", xpos, ypos, zpos, idrotm[5217], "ONLY");
     
     atheta = 60.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4115,17 +4114,17 @@ void AliITSv3::CreateGeometry()
     xpos = (xtra1[3] + xtra1[4]) / 2.;
     ypos = (ytra1[3] + ytra1[4]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[8], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[8], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5218], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5218], "ONLY");
+    gMC->Gspos(natra4[8], 1, "ITSV", xpos, ypos, zpos, idrotm[5218], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[9], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[9], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5219], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5219], "ONLY");
+    gMC->Gspos(natra4[9], 1, "ITSV", xpos, ypos, zpos, idrotm[5219], "ONLY");
     
     atheta = 120.;
     aphi1 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4133,17 +4132,17 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra1[4] + xtra1[5]) / 2.;
     ypos  = (ytra1[4] + ytra1[5]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[10], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[10], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5220], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5220], "ONLY");
+    gMC->Gspos(natra4[10], 1, "ITSV", xpos, ypos, zpos, idrotm[5220], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[11], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[11], "TUBE", idtmed[274], dtra4, 3);
     r2 = atheta + 90.;
     r3 = atheta + 90.;
     AliMatrix(idrotm[5221], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5221], "ONLY");
+    gMC->Gspos(natra4[11], 1, "ITSV", xpos, ypos, zpos, idrotm[5221], "ONLY");
     
     atheta = 180.;
     aphi2 = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
@@ -4151,34 +4150,34 @@ void AliITSv3::CreateGeometry()
     xpos  = (xtra1[5] + xtra1[0]) / 2.;
     ypos  = (ytra1[5] + ytra1[0]) / 2.;
     zpos  = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[12], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[12], "TUBE", idtmed[274], dtra4, 3);
     r2    = atheta + 90.;
     r3    = atheta + 90.;
     AliMatrix(idrotm[5222], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5222], "ONLY");
+    gMC->Gspos(natra4[12], 1, "ITSV", xpos, ypos, zpos, idrotm[5222], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[13], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[13], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5223], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5223], "ONLY");
+    gMC->Gspos(natra4[13], 1, "ITSV", xpos, ypos, zpos, idrotm[5223], "ONLY");
     atheta = 180.;
     aphi1  = TMath::ACos(dtra2[2] / TMath::Sqrt(dtra2[2] * dtra2[2] + (50. / cos(34.*degrad) * (50. / cos(34.*degrad))- 50.*50.))) * raddeg;
     aphi2 = 180. - aphi1;
     xpos = (xtra1[5] + xtra1[0]) / 2.;
     ypos = (ytra1[5] + ytra1[0]) / 2.;
     zpos = dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[14], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[14], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5224], 90., atheta, aphi1 + 90., r2, aphi1, r3);
-    pMC->Gspos(natra4[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5224], "ONLY");
+    gMC->Gspos(natra4[14], 1, "ITSV", xpos, ypos, zpos, idrotm[5224], "ONLY");
     zpos = -dtra2[2] / 2.;
-    pMC->Gsvolu(natra4[15], "TUBE", idtmed[274], dtra4, 3);
+    gMC->Gsvolu(natra4[15], "TUBE", idtmed[274], dtra4, 3);
     r2   = atheta + 90.;
     r3   = atheta + 90.;
     AliMatrix(idrotm[5225], 90., atheta, aphi2 + 90., r2, aphi2, r3);
-    pMC->Gspos(natra4[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5225], "ONLY");
+    gMC->Gspos(natra4[15], 1, "ITSV", xpos, ypos, zpos, idrotm[5225], "ONLY");
   } else {
     goto L9123;
   }
@@ -4201,8 +4200,8 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = dpcb[2] * 2. + (583.+(338.-3.))/2./10. - 10.5;
   // end-ladder electro 
-  pMC->Gsvolu("RCON", "CONE", idtmed[274], dcone, 5);
-  pMC->Gspos("RCON", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("RCON", "CONE", idtmed[274], dcone, 5);
+  gMC->Gspos("RCON", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dtube[0] = .02 / TMath::Cos(45.*degrad) + (338.-3.)*455./(338.-3.-10.)/10.;
   dtube[1] = 49.9;
@@ -4212,8 +4211,8 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = dpcb[2] * 2. + (583./2.+(338-1.5))/10. - 10.5;
   // end-ladder electro 
-  pMC->Gsvolu("RTB1", "TUBE", idtmed[274], dtube, 3);
-  pMC->Gspos("RTB1", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("RTB1", "TUBE", idtmed[274], dtube, 3);
+  gMC->Gspos("RTB1", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dtube[0] = 10.5;
   dtube[1] = 12.;
@@ -4222,8 +4221,8 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = dpcb[2] * 2. + (583./2.-89.+26.8/2.)/10. - 10.5;
   // end-ladder elect 
-  pMC->Gsvolu("RTB2", "TUBE", idtmed[274], dtube, 3);
-  pMC->Gspos("RTB2", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("RTB2", "TUBE", idtmed[274], dtube, 3);
+  gMC->Gspos("RTB2", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dpgon[0] = 15.;
   dpgon[1] = 360.;
@@ -4240,8 +4239,8 @@ void AliITSv3::CreateGeometry()
   xpos     = 0.;
   ypos     = 0.;
   zpos     = 0.;
-  pMC->Gsvolu("RP03", "PGON", idtmed[274], dpgon, 10);
-  pMC->Gspos("RP03", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("RP03", "PGON", idtmed[274], dpgon, 10);
+  gMC->Gspos("RP03", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dpgon[0] = 7.5;
   dpgon[1] = 360.;
@@ -4258,8 +4257,8 @@ void AliITSv3::CreateGeometry()
   xpos     = 0.;
   ypos     = 0.;
   zpos     = 0.;
-  pMC->Gsvolu("RP04", "PGON", idtmed[274], dpgon, 10);
-  pMC->Gspos("RP04", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("RP04", "PGON", idtmed[274], dpgon, 10);
+  gMC->Gspos("RP04", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   if (fMinorVersion < 3 ) {
     offset2  = 5.2;
@@ -4278,8 +4277,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("RP05", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("RP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("RP05", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("RP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
     
     dpgon[0] = offset2 + 360./(2.*39.);
     dpgon[1] = 360.;
@@ -4296,8 +4295,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("RP06", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("RP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("RP06", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("RP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   }
   if (fMinorVersion > 2 && fMinorVersion < 6) {
     offset2  = 5.2;
@@ -4316,8 +4315,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("RP05", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("RP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("RP05", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("RP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
     
     dpgon[0] = offset2 + 5.;
     dpgon[1] = 360.;
@@ -4334,8 +4333,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("RP06", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("RP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("RP06", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("RP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // 9345 CONTINUE 
@@ -4353,9 +4352,9 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = -(583.+(338.-3.))/2./10. - dpcb[2] * 2. + 10.5;
   // end-ladder electr 
-  pMC->Gsvolu("LCON", "CONE", idtmed[274], dcone, 5);
+  gMC->Gsvolu("LCON", "CONE", idtmed[274], dcone, 5);
   
-  pMC->Gspos("LCON", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("LCON", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dtube[0] = .02 / TMath::Cos(45.*degrad) +  (338.-3.)*455./(338.-3.-10.)/10.;
   dtube[1] = 49.9;
@@ -4365,9 +4364,9 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = -(583./2.+(338-1.5))/10. - dpcb[2] * 2. + 10.5;
   // end-ladder electr 
-  pMC->Gsvolu("LTB1", "TUBE", idtmed[274], dtube, 3);
+  gMC->Gsvolu("LTB1", "TUBE", idtmed[274], dtube, 3);
   
-  pMC->Gspos("LTB1", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("LTB1", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dtube[0] = 10.5;
   dtube[1] = 12.;
@@ -4376,9 +4375,9 @@ void AliITSv3::CreateGeometry()
   ypos     = 0.;
   zpos     = -(583./2.-89.+26.8/2.)/10. - dpcb[2] * 2. + 10.5;
   // end-ladder elec 
-  pMC->Gsvolu("LTB2", "TUBE", idtmed[274], dtube, 3);
+  gMC->Gsvolu("LTB2", "TUBE", idtmed[274], dtube, 3);
   ;
-  pMC->Gspos("LTB2", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gspos("LTB2", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dpgon[0] = 15.;
   dpgon[1] = 360.;
@@ -4395,8 +4394,8 @@ void AliITSv3::CreateGeometry()
   xpos     = 0.;
   ypos     = 0.;
   zpos     = 0.;
-  pMC->Gsvolu("LP03", "PGON", idtmed[274], dpgon, 10);
-  pMC->Gspos("LP03", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("LP03", "PGON", idtmed[274], dpgon, 10);
+  gMC->Gspos("LP03", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   dpgon[0] = 7.5;
   dpgon[1] = 360.;
@@ -4413,8 +4412,8 @@ void AliITSv3::CreateGeometry()
   xpos     = 0.;
   ypos     = 0.;
   zpos     = 0.;
-  pMC->Gsvolu("LP04", "PGON", idtmed[274], dpgon, 10);
-  pMC->Gspos("LP04", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+  gMC->Gsvolu("LP04", "PGON", idtmed[274], dpgon, 10);
+  gMC->Gspos("LP04", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   
   if (fMinorVersion < 3) {
     offset2  = 5.2;
@@ -4433,8 +4432,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("LP05", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("LP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("LP05", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("LP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
     
     dpgon[0] = offset2 + 360./(2.*39.);
     dpgon[1] = 360.;
@@ -4451,8 +4450,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("LP06", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("LP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("LP06", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("LP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   }
   if (fMinorVersion > 2 && fMinorVersion < 6) {
     offset2  = 5.2;
@@ -4471,8 +4470,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("LP05", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("LP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("LP05", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("LP05", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
     
     dpgon[0] = offset2 + 5.;
     dpgon[1] = 360.;
@@ -4489,8 +4488,8 @@ void AliITSv3::CreateGeometry()
     xpos     = 0.;
     ypos     = 0.;
     zpos     = 0.;
-    pMC->Gsvolu("LP06", "PGON", idtmed[274], dpgon, 10);
-    pMC->Gspos("LP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
+    gMC->Gsvolu("LP06", "PGON", idtmed[274], dpgon, 10);
+    gMC->Gspos("LP06", 1, "ITSV", xpos, ypos, zpos, 0, "ONLY");
   }
   
   // 9456 CONTINUE 
@@ -4499,7 +4498,7 @@ void AliITSv3::CreateGeometry()
   // --- Outputs the geometry tree in the EUCLID/CAD format 
   
   if (fEuclidOut) {
-    pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+    gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
   }
 }
  
@@ -4533,53 +4532,52 @@ void AliITSv3::StepManager()
   Float_t       position[3];
   Float_t       momentum[4];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC = AliMC::GetMC();
   //
-  if(pMC->TrackCharge() && pMC->Edep()) {
+  if(gMC->TrackCharge() && gMC->Edep()) {
     //
     // Only entering charged tracks
-    if((id=pMC->CurrentVol(0,copy))==fIdSens1) {  
+    if((id=gMC->CurrentVol(0,copy))==fIdSens1) {  
       vol[0]=1;
-      id=pMC->CurrentVolOff(1,0,copy);      
+      id=gMC->CurrentVolOff(1,0,copy);      
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                       
     } else if(id==fIdSens2) {
       vol[0]=2;
-      id=pMC->CurrentVolOff(1,0,copy);       
+      id=gMC->CurrentVolOff(1,0,copy);       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                    
     } else if(id==fIdSens3) {
       vol[0]=3;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;             
     } else if(id==fIdSens4) {
       vol[0]=4;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                  
     } else if(id==fIdSens5) {
       vol[0]=5;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;               
     } else if(id==fIdSens6) {
       vol[0]=6;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                      
     } else return;
-    pMC->TrackPosition(position);
-    pMC->TrackMomentum(momentum);
+    gMC->TrackPosition(position);
+    gMC->TrackMomentum(momentum);
     hits[0]=position[0];
     hits[1]=position[1];
     hits[2]=position[2];          
     hits[3]=momentum[0]*momentum[3];
     hits[4]=momentum[1]*momentum[3];
     hits[5]=momentum[2]*momentum[3];        
-    hits[6]=pMC->Edep();
+    hits[6]=gMC->Edep();
     new(lhits[fNhits++]) AliITShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
   }      
 }
index 93662b6..e14c1cb 100644 (file)
@@ -56,7 +56,6 @@ void AliITSv4::CreateGeometry()
   //
   // Create geometry for its version 4
   //
-  AliMC* pMC = AliMC::GetMC();
 #ifndef NEW
   Int_t ivers=4*10+fMinorVersion;
   its_geo4(ivers, fIdtmed->GetArray()-200;
@@ -4479,7 +4478,7 @@ L9123:
 // --- Outputs the geometry tree in the EUCLID/CAD format 
 
     if (fEuclidOut) {
-       pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+       gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
     }
 }
  
@@ -4498,13 +4497,12 @@ void AliITSv4::Init()
   //
   // Initialise ITS after it has been created
   //
-  AliMC* pMC = AliMC::GetMC();
-  fIdSens1=pMC->VolId("ITS1");
-  fIdSens2=pMC->VolId("ITS2");
-  fIdSens3=pMC->VolId("ITS3");
-  fIdSens4=pMC->VolId("ITS4");
-  fIdSens5=pMC->VolId("ITS5");
-  fIdSens6=pMC->VolId("ITS6");
+  fIdSens1=gMC->VolId("ITS1");
+  fIdSens2=gMC->VolId("ITS2");
+  fIdSens3=gMC->VolId("ITS3");
+  fIdSens4=gMC->VolId("ITS4");
+  fIdSens5=gMC->VolId("ITS5");
+  fIdSens6=gMC->VolId("ITS6");
 } 
  
 //_____________________________________________________________________________
@@ -4519,53 +4517,52 @@ void AliITSv4::StepManager()
   Float_t       position[3];
   Float_t       momentum[4];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC = AliMC::GetMC();
   //
-  if(pMC->TrackCharge() && pMC->Edep()) {
+  if(gMC->TrackCharge() && gMC->Edep()) {
     //
     // Only entering charged tracks
-    if((id=pMC->CurrentVol(0,copy))==fIdSens1) {  
+    if((id=gMC->CurrentVol(0,copy))==fIdSens1) {  
       vol[0]=1;
-      id=pMC->CurrentVolOff(1,0,copy);      
+      id=gMC->CurrentVolOff(1,0,copy);      
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                       
     } else if(id==fIdSens2) {
       vol[0]=2;
-      id=pMC->CurrentVolOff(1,0,copy);       
+      id=gMC->CurrentVolOff(1,0,copy);       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);
+      id=gMC->CurrentVolOff(2,0,copy);
       vol[2]=copy;                    
     } else if(id==fIdSens3) {
       vol[0]=3;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;             
     } else if(id==fIdSens4) {
       vol[0]=4;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                  
     } else if(id==fIdSens5) {
       vol[0]=5;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;               
     } else if(id==fIdSens6) {
       vol[0]=6;
       vol[1]=copy;
-      id=pMC->CurrentVolOff(1,0,copy);
+      id=gMC->CurrentVolOff(1,0,copy);
       vol[2]=copy;                      
     } else return;
-    pMC->TrackPosition(position);
-    pMC->TrackMomentum(momentum);
+    gMC->TrackPosition(position);
+    gMC->TrackMomentum(momentum);
     hits[0]=position[0];
     hits[1]=position[1];
     hits[2]=position[2];          
     hits[3]=momentum[0]*momentum[3];
     hits[4]=momentum[1]*momentum[3];
     hits[5]=momentum[2]*momentum[3];        
-    hits[6]=pMC->Edep();
+    hits[6]=gMC->Edep();
     new(lhits[fNhits++]) AliITShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
   }      
 }
index c8219e3..be60a64 100644 (file)
@@ -72,8 +72,6 @@ void AliITSv5::CreateGeometry()
   // Read geometry for the ITS
   //
 
-  AliMC* pMC = AliMC::GetMC();
-  
   char topvol[5];
   char *filtmp;
 //
@@ -91,12 +89,12 @@ void AliITSv5::CreateGeometry()
   // --- Place the ITS ghost volume ITSV in its mother volume (ALIC) and make it
   //     invisible
   //
-  pMC->Gspos("ITSV",1,"ALIC",0,0,0,0,"ONLY");
+  gMC->Gspos("ITSV",1,"ALIC",0,0,0,0,"ONLY");
   //
   // --- Outputs the geometry tree in the EUCLID/CAD format
   
     if (fEuclidOut) {
-      pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+      gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
     }
 }
 
@@ -122,59 +120,58 @@ void AliITSv5::StepManager()
   Float_t       position[3];
   Float_t       momentum[4];
   TClonesArray &lhits = *fHits;
-  AliMC* pMC = AliMC::GetMC();
   //
-  if(pMC->TrackCharge() && pMC->Edep()) {
+  if(gMC->TrackCharge() && gMC->Edep()) {
     //
     // Only entering charged tracks
-    if((id=pMC->CurrentVol(0,copy))==fIdSens1) {  
+    if((id=gMC->CurrentVol(0,copy))==fIdSens1) {  
       vol[0]=1;
-      id=pMC->CurrentVolOff(0,0,copy);        //detector copy in the ladder = 1<->4  (ITS1)
+      id=gMC->CurrentVolOff(0,0,copy);        //detector copy in the ladder = 1<->4  (ITS1)
       vol[1]=copy;
-      pMC->CurrentVolOff(1,0,copy1);      //ladder copy in the module   = 1<->2  (I186)
-      pMC->CurrentVolOff(2,0,copy2);      //module copy in the layer    = 1<->10 (I132)
+      gMC->CurrentVolOff(1,0,copy1);      //ladder copy in the module   = 1<->2  (I186)
+      gMC->CurrentVolOff(2,0,copy2);      //module copy in the layer    = 1<->10 (I132)
       vol[2]=copy1+(copy2-1)*2;               //# of ladders in one module  = 2          
     } else if(id==fIdSens2) {
       vol[0]=2;
-      id=pMC->CurrentVolOff(0,0,copy);        //detector copy in the ladder = 1<->4  (ITS2)        
+      id=gMC->CurrentVolOff(0,0,copy);        //detector copy in the ladder = 1<->4  (ITS2)        
       vol[1]=copy;
-      pMC->CurrentVolOff(1,0,copy1);      //ladder copy in the module   = 1<->4  (I131)
-      pMC->CurrentVolOff(2,0,copy2);      //module copy in the layer    = 1<->10 (I132)
+      gMC->CurrentVolOff(1,0,copy1);      //ladder copy in the module   = 1<->4  (I131)
+      gMC->CurrentVolOff(2,0,copy2);      //module copy in the layer    = 1<->10 (I132)
       vol[2]=copy1+(copy2-1)*4;                  //# of ladders in one module  = 4   
     } else if(id==fIdSens3) {
       vol[0]=3;
-      id=pMC->CurrentVolOff(1,0,copy);        //detector copy in the ladder = 1<->5  (ITS3 is inside I314)
+      id=gMC->CurrentVolOff(1,0,copy);        //detector copy in the ladder = 1<->5  (ITS3 is inside I314)
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->12 (I316)
+      id=gMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->12 (I316)
       vol[2]=copy;             
     } else if(id==fIdSens4) {
       vol[0]=4;
-      id=pMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->8  (ITS4 is inside I414)
+      id=gMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->8  (ITS4 is inside I414)
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->22 (I417)
+      id=gMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->22 (I417)
       vol[2]=copy;               
     } else if(id==fIdSens5) {
       vol[0]=5;
-      id=pMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->23  (ITS5 is inside I562)       
+      id=gMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->23  (ITS5 is inside I562)       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->34 (I565)
+      id=gMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->34 (I565)
       vol[2]=copy;               
     } else if(id==fIdSens6) {
       vol[0]=6;
-      id=pMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->26  (ITS6 is inside I566)       
+      id=gMC->CurrentVolOff(1,0,copy);       //detector copy in the ladder = 1<->26  (ITS6 is inside I566)       
       vol[1]=copy;
-      id=pMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->38 (I569)
+      id=gMC->CurrentVolOff(2,0,copy);        //ladder copy in the layer    = 1<->38 (I569)
       vol[2]=copy;                      
     } else return;
-    pMC->TrackPosition(position);
-    pMC->TrackMomentum(momentum);
+    gMC->TrackPosition(position);
+    gMC->TrackMomentum(momentum);
     hits[0]=position[0];
     hits[1]=position[1];
     hits[2]=position[2];          
     hits[3]=momentum[0]*momentum[3];
     hits[4]=momentum[1]*momentum[3];
     hits[5]=momentum[2]*momentum[3];        
-    hits[6]=pMC->Edep();
+    hits[6]=gMC->Edep();
     new(lhits[fNhits++]) AliITShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
   }      
 }
index b2abd9f..9606ca8 100644 (file)
@@ -428,31 +428,30 @@ void AliMUON::StepManager()
 {
     printf("Dummy version of muon step -- it should never happen!!\n");
     const Float_t kRaddeg = 180/TMath::Pi();
-    AliMC* pMC = AliMC::GetMC();
     Int_t nsec, ipart;
     Float_t x[4], p[4];
     Float_t pt, th0, th1;
     char proc[5];
     if(fAccCut) {
-       if((nsec=pMC->NSecondaries())>0) {
-           pMC->ProdProcess(proc);
-           if((pMC->TrackPid()==113 || pMC->TrackPid()==114) && !strcmp(proc,"DCAY")) {
+       if((nsec=gMC->NSecondaries())>0) {
+           gMC->ProdProcess(proc);
+           if((gMC->TrackPid()==113 || gMC->TrackPid()==114) && !strcmp(proc,"DCAY")) {
                //
                // Check angular acceptance
                //* --- and have muons from resonance decays in the wanted window --- 
                if(nsec != 2) {
                    printf(" AliMUON::StepManager: Strange resonance Decay into %d particles\n",nsec);
-                   pMC->StopEvent();
+                   gMC->StopEvent();
                } else {
-                   pMC->GetSecondary(0,ipart,x,p);
+                   gMC->GetSecondary(0,ipart,x,p);
                    pt  = TMath::Sqrt(p[0]*p[0]+p[1]*p[1]);
                    th0 = TMath::ATan2(pt,p[2])*kRaddeg;
-                   pMC->GetSecondary(1,ipart,x,p);
+                   gMC->GetSecondary(1,ipart,x,p);
                    pt  = TMath::Sqrt(p[0]*p[0]+p[1]*p[1]);
                    th1 = TMath::ATan2(pt,p[2])*kRaddeg;
                    if(!(fAccMin < th0 && th0 < fAccMax) ||
                       !(fAccMin < th1 && th1 < fAccMax)) 
-                       pMC->StopEvent();
+                       gMC->StopEvent();
                }
            }
        }
index 6dc13d3..0af3b4a 100644 (file)
@@ -77,7 +77,6 @@ void AliMUONv0::Trigger(Float_t (*x)[4], Float_t (*y)[4], Int_t& iflag)
 void AliMUONv0::CreateGeometry()
 {
     Int_t *idtmed = fIdtmed->GetArray()-1099;
-    AliMC* pMC = AliMC::GetMC();
 //
 //   Note: all chambers have the same structure, which could be 
 //   easily parameterised. This was intentionally not done in order
@@ -126,10 +125,10 @@ void AliMUONv0::CreateGeometry()
      tpar[1] = (iChamber->frMax+dframep)/TMath::Cos(phi);
      tpar[2] = dstation/2;
 
-     pMC->Gsvolu("C01M", "TUBE", idtmed[1100], tpar, 3);
-     pMC->Gsvolu("C02M", "TUBE", idtmed[1100], tpar, 3);
-     pMC->Gspos("C01M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
-     pMC->Gspos("C02M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
+     gMC->Gsvolu("C01M", "TUBE", idtmed[1100], tpar, 3);
+     gMC->Gsvolu("C02M", "TUBE", idtmed[1100], tpar, 3);
+     gMC->Gspos("C01M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
+     gMC->Gspos("C02M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
 // Aluminium frames
 // Outer frames
      pgpar[0] = 360/12/2;
@@ -142,64 +141,64 @@ void AliMUONv0::CreateGeometry()
      pgpar[7] = +dframez/2;
      pgpar[8] = pgpar[5];
      pgpar[9] = pgpar[6];
-     pMC->Gsvolu("C01O", "PGON", idtmed[1103], pgpar, 10);
-     pMC->Gsvolu("C02O", "PGON", idtmed[1103], pgpar, 10);
-     pMC->Gspos("C01O",1,"C01M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C01O",2,"C01M", 0.,0.,+zfpos,  0,"ONLY");
-     pMC->Gspos("C02O",1,"C02M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C02O",2,"C02M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gsvolu("C01O", "PGON", idtmed[1103], pgpar, 10);
+     gMC->Gsvolu("C02O", "PGON", idtmed[1103], pgpar, 10);
+     gMC->Gspos("C01O",1,"C01M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C01O",2,"C01M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C02O",1,"C02M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C02O",2,"C02M", 0.,0.,+zfpos,  0,"ONLY");
 //
 // Inner frame
      tpar[0]= iChamber->frMin-dframep;
      tpar[1]= iChamber->frMin;
      tpar[2]= dframez/2;
-     pMC->Gsvolu("C01I", "TUBE", idtmed[1103], tpar, 3);
-     pMC->Gsvolu("C02I", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gsvolu("C01I", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gsvolu("C02I", "TUBE", idtmed[1103], tpar, 3);
 
-     pMC->Gspos("C01I",1,"C01M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C01I",2,"C01M", 0.,0.,+zfpos,  0,"ONLY");
-     pMC->Gspos("C02I",1,"C02M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C02I",2,"C02M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C01I",1,"C01M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C01I",2,"C01M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C02I",1,"C02M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C02I",2,"C02M", 0.,0.,+zfpos,  0,"ONLY");
 //
 // Frame Crosses
      bpar[0] = (iChamber->frMax - iChamber->frMin)/2;
      bpar[1] = dframep/2;
      bpar[2] = dframez/2;
-     pMC->Gsvolu("C01B", "BOX", idtmed[1103], bpar, 3);
-     pMC->Gsvolu("C02B", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C01B", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C02B", "BOX", idtmed[1103], bpar, 3);
 
-     pMC->Gspos("C01B",1,"C01M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C01B",1,"C01M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01B",2,"C01M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C01B",2,"C01M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01B",3,"C01M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
+     gMC->Gspos("C01B",3,"C01M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C01B",4,"C01M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
+     gMC->Gspos("C01B",4,"C01M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C01B",5,"C01M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C01B",5,"C01M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01B",6,"C01M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C01B",6,"C01M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01B",7,"C01M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
+     gMC->Gspos("C01B",7,"C01M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C01B",8,"C01M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
+     gMC->Gspos("C01B",8,"C01M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
 
-     pMC->Gspos("C02B",1,"C02M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C02B",1,"C02M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02B",2,"C02M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C02B",2,"C02M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02B",3,"C02M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
+     gMC->Gspos("C02B",3,"C02M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C02B",4,"C02M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
+     gMC->Gspos("C02B",4,"C02M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C02B",5,"C02M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C02B",5,"C02M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02B",6,"C02M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C02B",6,"C02M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02B",7,"C02M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
+     gMC->Gspos("C02B",7,"C02M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C02B",8,"C02M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
+     gMC->Gspos("C02B",8,"C02M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
 
 //
@@ -207,43 +206,43 @@ idrotm[1101],"ONLY");
      tpar[0]= iChamber->frMin+dframep*2;
      tpar[1]= iChamber->frMax-dframep*2;
      tpar[2] = (iChamber->fdGas+iChamber->fdAlu)/2;
-     pMC->Gsvolu("C01A", "TUBE", idtmed[1103], tpar, 3);
-     pMC->Gsvolu("C02A", "TUBE", idtmed[1103], tpar, 3);
-     pMC->Gspos("C01A", 1, "C01M", 0., 0., 0.,  0, "ONLY");
-     pMC->Gspos("C02A", 1, "C02M", 0., 0., 0.,  0, "ONLY");
+     gMC->Gsvolu("C01A", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gsvolu("C02A", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gspos("C01A", 1, "C01M", 0., 0., 0.,  0, "ONLY");
+     gMC->Gspos("C02A", 1, "C02M", 0., 0., 0.,  0, "ONLY");
 //     
 //   Sensitive volumes
      // tpar[2] = iChamber->fdGas;
      tpar[2] = iChamber->fdGas/2;
-     pMC->Gsvolu("C01G", "TUBE", idtmed[1105], tpar, 3);
-     pMC->Gsvolu("C02G", "TUBE", idtmed[1105], tpar, 3);
-     pMC->Gspos("C01G", 1, "C01A", 0., 0., 0.,  0, "ONLY");
-     pMC->Gspos("C02G", 1, "C02A", 0., 0., 0.,  0, "ONLY");
+     gMC->Gsvolu("C01G", "TUBE", idtmed[1105], tpar, 3);
+     gMC->Gsvolu("C02G", "TUBE", idtmed[1105], tpar, 3);
+     gMC->Gspos("C01G", 1, "C01A", 0., 0., 0.,  0, "ONLY");
+     gMC->Gspos("C02G", 1, "C02A", 0., 0., 0.,  0, "ONLY");
 //
 // Frame Crosses to be placed inside gas 
      dr = (iChamber->frMax - iChamber->frMin);
      bpar[0] = TMath::Sqrt(dr*dr-dframep*dframep/4)/2;
      bpar[1] = dframep/2;
      bpar[2] = iChamber->fdGas/2;
-     pMC->Gsvolu("C01F", "BOX", idtmed[1103], bpar, 3);
-     pMC->Gsvolu("C02F", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C01F", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C02F", "BOX", idtmed[1103], bpar, 3);
 
-     pMC->Gspos("C01F",1,"C01G", +iChamber->frMin+bpar[0] , 0, 0, 
+     gMC->Gspos("C01F",1,"C01G", +iChamber->frMin+bpar[0] , 0, 0, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01F",2,"C01G", -iChamber->frMin-bpar[0] , 0, 0, 
+     gMC->Gspos("C01F",2,"C01G", -iChamber->frMin-bpar[0] , 0, 0, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C01F",3,"C01G", 0, +iChamber->frMin+bpar[0] , 0, 
+     gMC->Gspos("C01F",3,"C01G", 0, +iChamber->frMin+bpar[0] , 0, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C01F",4,"C01G", 0, -iChamber->frMin-bpar[0] , 0, 
+     gMC->Gspos("C01F",4,"C01G", 0, -iChamber->frMin-bpar[0] , 0, 
 idrotm[1101],"ONLY");
 
-     pMC->Gspos("C02F",1,"C02G", +iChamber->frMin+bpar[0] , 0, 0, 
+     gMC->Gspos("C02F",1,"C02G", +iChamber->frMin+bpar[0] , 0, 0, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02F",2,"C02G", -iChamber->frMin-bpar[0] , 0, 0, 
+     gMC->Gspos("C02F",2,"C02G", -iChamber->frMin-bpar[0] , 0, 0, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C02F",3,"C02G", 0, +iChamber->frMin+bpar[0] , 0, 
+     gMC->Gspos("C02F",3,"C02G", 0, +iChamber->frMin+bpar[0] , 0, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C02F",4,"C02G", 0, -iChamber->frMin-bpar[0] , 0, 
+     gMC->Gspos("C02F",4,"C02G", 0, -iChamber->frMin-bpar[0] , 0, 
 idrotm[1101],"ONLY");
 //
 //
@@ -261,10 +260,10 @@ idrotm[1101],"ONLY");
      tpar[1] = (iChamber->frMax+dframep)/TMath::Cos(phi);
      tpar[2] = dstation/2;
 
-     pMC->Gsvolu("C03M", "TUBE", idtmed[1100], tpar, 3);
-     pMC->Gsvolu("C04M", "TUBE", idtmed[1100], tpar, 3);
-     pMC->Gspos("C03M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
-     pMC->Gspos("C04M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
+     gMC->Gsvolu("C03M", "TUBE", idtmed[1100], tpar, 3);
+     gMC->Gsvolu("C04M", "TUBE", idtmed[1100], tpar, 3);
+     gMC->Gspos("C03M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
+     gMC->Gspos("C04M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
 // Aluminium frames
 // Outer frames
      pgpar[0] = 360/12/2;
@@ -277,64 +276,64 @@ idrotm[1101],"ONLY");
      pgpar[7] = +dframez/2;
      pgpar[8] = pgpar[5];
      pgpar[9] = pgpar[6];
-     pMC->Gsvolu("C03O", "PGON", idtmed[1103], pgpar, 10);
-     pMC->Gsvolu("C04O", "PGON", idtmed[1103], pgpar, 10);
-     pMC->Gspos("C03O",1,"C03M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C03O",2,"C03M", 0.,0.,+zfpos,  0,"ONLY");
-     pMC->Gspos("C04O",1,"C04M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C04O",2,"C04M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gsvolu("C03O", "PGON", idtmed[1103], pgpar, 10);
+     gMC->Gsvolu("C04O", "PGON", idtmed[1103], pgpar, 10);
+     gMC->Gspos("C03O",1,"C03M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C03O",2,"C03M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C04O",1,"C04M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C04O",2,"C04M", 0.,0.,+zfpos,  0,"ONLY");
 //
 // Inner frame
      tpar[0]= iChamber->frMin-dframep;
      tpar[1]= iChamber->frMin;
      tpar[2]= dframez/2;
-     pMC->Gsvolu("C03I", "TUBE", idtmed[1103], tpar, 3);
-     pMC->Gsvolu("C04I", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gsvolu("C03I", "TUBE", idtmed[1103], tpar, 3);
+     gMC->Gsvolu("C04I", "TUBE", idtmed[1103], tpar, 3);
 
-     pMC->Gspos("C03I",1,"C03M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C03I",2,"C03M", 0.,0.,+zfpos,  0,"ONLY");
-     pMC->Gspos("C04I",1,"C04M", 0.,0.,-zfpos,  0,"ONLY");
-     pMC->Gspos("C04I",2,"C04M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C03I",1,"C03M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C03I",2,"C03M", 0.,0.,+zfpos,  0,"ONLY");
+     gMC->Gspos("C04I",1,"C04M", 0.,0.,-zfpos,  0,"ONLY");
+     gMC->Gspos("C04I",2,"C04M", 0.,0.,+zfpos,  0,"ONLY");
 //
 // Frame Crosses
      bpar[0] = (iChamber->frMax - iChamber->frMin)/2;
      bpar[1] = dframep/2;
      bpar[2] = dframez/2;
-     pMC->Gsvolu("C03B", "BOX", idtmed[1103], bpar, 3);
-     pMC->Gsvolu("C04B", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C03B", "BOX", idtmed[1103], bpar, 3);
+     gMC->Gsvolu("C04B", "BOX", idtmed[1103], bpar, 3);
 
-     pMC->Gspos("C03B",1,"C03M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C03B",1,"C03M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C03B",2,"C03M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C03B",2,"C03M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C03B",3,"C03M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
+     gMC->Gspos("C03B",3,"C03M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C03B",4,"C03M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
+     gMC->Gspos("C03B",4,"C03M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C03B",5,"C03M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C03B",5,"C03M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C03B",6,"C03M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C03B",6,"C03M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C03B",7,"C03M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
+     gMC->Gspos("C03B",7,"C03M", 0, +iChamber->frMin+bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C03B",8,"C03M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
+     gMC->Gspos("C03B",8,"C03M", 0, -iChamber->frMin-bpar[0] ,+zfpos, 
 idrotm[1101],"ONLY");
 
-     pMC->Gspos("C04B",1,"C04M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C04B",1,"C04M", +iChamber->frMin+bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C04B",2,"C04M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
+     gMC->Gspos("C04B",2,"C04M", -iChamber->frMin-bpar[0] , 0,-zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C04B",3,"C04M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
+     gMC->Gspos("C04B",3,"C04M", 0, +iChamber->frMin+bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C04B",4,"C04M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
+     gMC->Gspos("C04B",4,"C04M", 0, -iChamber->frMin-bpar[0] ,-zfpos, 
 idrotm[1101],"ONLY");
-     pMC->Gspos("C04B",5,"C04M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C04B",5,"C04M", +iChamber->frMin+bpar[0] , 0,+zfpos, 
 idrotm[1100],"ONLY");
-     pMC->Gspos("C04B",6,"C04M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
+     gMC->Gspos("C04B",6,"C04M", -iChamber->frMin-bpar[0] , 0,+zfpos, 
 idrot