// 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];
}
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
}
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
}
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.;
}
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;
}
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.;
}
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.;
}
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;
}
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.;
}
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.);
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];
}
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;
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,
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) {
// -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) {
// 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");
}
//_____________________________________________________________________________
//
// 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();
// **> 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.);
}
//_____________________________________________________________________________
void AliGenExtFile::Generate()
{
- AliMC* pMC = AliMC::GetMC();
-
Float_t polar[3]= {0,0,0};
//
Float_t origin[3]={0,0,0};
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<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.;
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())*
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,
// 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) {
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);
}
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);
//
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 {
//
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 {
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) {
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) {
// 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};
//
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]));
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);
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())*
void AliGenPythia::Generate()
{
- AliMC* pMC = AliMC::GetMC();
Float_t polar[3] = {0,0,0};
Float_t origin[3]= {0,0,0};
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]));
//
// Generate one trigger
//
- AliMC* pMC = AliMC::GetMC();
Float_t polar[3]= {0,0,0};
//
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];
{
if (fgInit) return;
fgInit=1;
- AliMC *pMC=AliMC::GetMC();
Float_t mass;
Float_t tlife;
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;
//
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;
//
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;
//
// Generate one trigger
//
- AliMC* pMC = AliMC::GetMC();
const Float_t raKpic=0.14;
const Float_t borne=1/(1+raKpic);
//
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++) {
while(1) {
- pMC->Rndm(random,3);
+ gMC->Rndm(random,3);
if(random[0]<borne) {
part=pions[Int_t (random[1]*3)];
ptf=fPtpi;
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]));
//
// Generate one trigger
//
- AliMC* pMC = AliMC::GetMC();
Float_t polar[3]= {0,0,0};
//
//
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);
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]));
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);
}
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
Float_t rout, z;
Float_t par[3], rin;
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
// ***********************************************************
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
// ********************************************************
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
// ***********************************************************
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
// ********************************************************
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
// ***********************************************************
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
// ***********************************************************
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");
}
//_____________________________________________________________________________
// 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");
}
//_____________________________________________________________________________
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
Float_t rout;
Float_t z;
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
// ***********************************************************
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
// ********************************************************
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
// ***********************************************************
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
// ********************************************************
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
// ***********************************************************
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
// ***********************************************************
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");
}
//_____________________________________________________________________________
// 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");
}
//_____________________________________________________________________________
// Initialise ITS after it has been built
//
Int_t i;
- AliMC* pMC = AliMC::GetMC();
//
printf("\n");
for(i=0;i<35;i++) printf("*");
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");
*/
//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)
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.;
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];
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];
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.;
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);
}
}
// 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");
}
//_____________________________________________________________________________
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);
}
}
//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
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.;
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];
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];
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.;
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);
}
}
// 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");
}
//_____________________________________________________________________________
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);
}
}
*/
//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. };
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);
//************************************************************************
//* *
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
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)
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
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)
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
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)
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
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)
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)
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
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)
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)
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
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)
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)
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
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)
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)
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)
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
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)
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)
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
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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);
}
//************************************************************************
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
// 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)
// 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)
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)
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)
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)
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)
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)
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)
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)
// 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)
// 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)
// 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)
// 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)
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)
// --- 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)
// --- 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
// --- 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
// 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)
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)
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)
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)
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)
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)
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)
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)
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)
// --- 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)
// --- 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
// --- 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)
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");
}
}
// 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)
// 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)
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)
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)
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)
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)
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)
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)
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)
// 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)
// 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)
// 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)
// 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)
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)
// --- 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)
// --- 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
// --- 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
// 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)
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)
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)
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)
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)
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)
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)
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)
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)
// --- 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)
// --- 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
// --- 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)
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");
}
}
(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
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
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
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)
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)
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)
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)
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)
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)
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)
// --- 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)
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)
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)
// --- 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)
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
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
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");
}
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
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
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)
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)
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)
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)
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)
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)
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)
// --- 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)
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)
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)
// --- 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)
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
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
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
}
(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
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
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
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)
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)
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)
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)
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)
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)
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)
// --- 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)
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)
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)
// --- 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)
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
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
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");
}
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
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
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)
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)
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)
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)
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)
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)
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)
// --- 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)
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)
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)
// --- 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)
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
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
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");
}
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;
}
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;
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;
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;
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;
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;
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;
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;
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;
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) {
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;
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;
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;
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;
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;
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;
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;
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;
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;
}
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.;
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;
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;
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;
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;
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;
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;
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;
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) {
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.;
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;
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;
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;
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;
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;
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;
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;
}
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;
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.;
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.;
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.;
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;
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.;
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;
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.;
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
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;
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.;
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.;
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.;
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;
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.;
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;
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.;
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
// --- Outputs the geometry tree in the EUCLID/CAD format
if (fEuclidOut) {
- pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+ gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
}
}
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);
}
}
//
// Create geometry for its version 4
//
- AliMC* pMC = AliMC::GetMC();
#ifndef NEW
Int_t ivers=4*10+fMinorVersion;
its_geo4(ivers, fIdtmed->GetArray()-200;
// --- Outputs the geometry tree in the EUCLID/CAD format
if (fEuclidOut) {
- pMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
+ gMC->WriteEuclid("ITSgeometry", "ITSV", 1, 5);
}
}
//
// 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");
}
//_____________________________________________________________________________
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);
}
}
// Read geometry for the ITS
//
- AliMC* pMC = AliMC::GetMC();
-
char topvol[5];
char *filtmp;
//
// --- 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);
}
}
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);
}
}
{
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();
}
}
}
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
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;
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");
//
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");
//
//
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;
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,
idrotm[1100],"ONLY");
- pMC->Gspos("C04B",7,"C04M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
+ gMC->Gspos("C04B",7,"C04M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C04B",8,"C04M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
+ gMC->Gspos("C04B",8,"C04M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
//
tpar[0]= iChamber->frMin+dframep*2;
tpar[1]= iChamber->frMax-dframep*2;
tpar[2] = (iChamber->fdGas+iChamber->fdAlu)/2;
- pMC->Gsvolu("C03A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gsvolu("C04A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gspos("C03A", 1, "C03M", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C04A", 1, "C04M", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C03A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C04A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gspos("C03A", 1, "C03M", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C04A", 1, "C04M", 0., 0., 0., 0, "ONLY");
//
// Sensitive volumes
// tpar[2] = iChamber->fdGas;
tpar[2] = iChamber->fdGas/2;
- pMC->Gsvolu("C03G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gsvolu("C04G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gspos("C03G", 1, "C03A", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C04G", 1, "C04A", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C03G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gsvolu("C04G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gspos("C03G", 1, "C03A", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C04G", 1, "C04A", 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("C03F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C04F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C03F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C04F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C03F",1,"C03G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C03F",1,"C03G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C03F",2,"C03G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C03F",2,"C03G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C03F",3,"C03G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C03F",3,"C03G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C03F",4,"C03G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C03F",4,"C03G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C04F",1,"C04G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C04F",1,"C04G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C04F",2,"C04G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C04F",2,"C04G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C04F",3,"C04G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C04F",3,"C04G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C04F",4,"C04G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C04F",4,"C04G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
//********************************************************************
tpar[1]= TMath::Sqrt(iChamber->frMax*iChamber->frMax + dframep*dframep) ;
tpar[2] = // 3.;
5.325*2;
- pMC->Gsvolu("C05M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gsvolu("C06M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gspos("C05M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
- pMC->Gspos("C06M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
+ gMC->Gsvolu("C05M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("C06M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gspos("C05M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
+ gMC->Gspos("C06M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
//
// Mother volume for one quadrant
tspar[0]= iChamber->frMin;
5.325;
tspar[3] = 0.-TMath::ATan2(dframep,iChamber->frMin)*180/kPI;
tspar[4] = 90.+TMath::ATan2(dframep,iChamber->frMin)*180/kPI;
- pMC->Gsvolu("C05Q", "TUBS", idtmed[1100], tspar, 5);
- pMC->Gsvolu("C06Q", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gsvolu("C05Q", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gsvolu("C06Q", "TUBS", idtmed[1100], tspar, 5);
// Position the four quadrants
- pMC->Gspos("C05Q",1,"C05M", 0., 0., 5.325, idrotm[1100], "ONLY");
- pMC->Gspos("C05Q",2,"C05M", 0., 0.,-5.325, idrotm[1101], "ONLY");
- pMC->Gspos("C05Q",3,"C05M", 0., 0., 5.325, idrotm[1102], "ONLY");
- pMC->Gspos("C05Q",4,"C05M", 0., 0.,-5.325, idrotm[1103], "ONLY");
-
- pMC->Gspos("C06Q",1,"C06M", 0., 0., 5.325, idrotm[1100], "ONLY");
- pMC->Gspos("C06Q",2,"C06M", 0., 0.,-5.325, idrotm[1101], "ONLY");
- pMC->Gspos("C06Q",3,"C06M", 0., 0., 5.325, idrotm[1102], "ONLY");
- pMC->Gspos("C06Q",4,"C06M", 0., 0.,-5.325, idrotm[1103], "ONLY");
+ gMC->Gspos("C05Q",1,"C05M", 0., 0., 5.325, idrotm[1100], "ONLY");
+ gMC->Gspos("C05Q",2,"C05M", 0., 0.,-5.325, idrotm[1101], "ONLY");
+ gMC->Gspos("C05Q",3,"C05M", 0., 0., 5.325, idrotm[1102], "ONLY");
+ gMC->Gspos("C05Q",4,"C05M", 0., 0.,-5.325, idrotm[1103], "ONLY");
+
+ gMC->Gspos("C06Q",1,"C06M", 0., 0., 5.325, idrotm[1100], "ONLY");
+ gMC->Gspos("C06Q",2,"C06M", 0., 0.,-5.325, idrotm[1101], "ONLY");
+ gMC->Gspos("C06Q",3,"C06M", 0., 0., 5.325, idrotm[1102], "ONLY");
+ gMC->Gspos("C06Q",4,"C06M", 0., 0.,-5.325, idrotm[1103], "ONLY");
// Aluminium frames
// Outer frame
tspar[0]= iChamber->frMax-dframep*2;
tspar[1]= iChamber->frMax;
tspar[3] = 0.;
tspar[4] = 90.;
- pMC->Gsvolu("C05O", "TUBS", idtmed[1100], tspar, 5);
- pMC->Gsvolu("C06O", "TUBS", idtmed[1100], tspar, 5);
- pMC->Gspos("C05O",1,"C05Q", 0.,0.,0., 0,"ONLY");
- pMC->Gspos("C06O",1,"C06Q", 0.,0.,0., 0,"ONLY");
+ gMC->Gsvolu("C05O", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gsvolu("C06O", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gspos("C05O",1,"C05Q", 0.,0.,0., 0,"ONLY");
+ gMC->Gspos("C06O",1,"C06Q", 0.,0.,0., 0,"ONLY");
//
// Inner frame
tspar[0]= iChamber->frMin;
tspar[1]= iChamber->frMin+dframep*2;
- pMC->Gsvolu("C05I", "TUBS", idtmed[1100], tspar, 5);
- pMC->Gsvolu("C06I", "TUBS", idtmed[1100], tspar, 5);
- pMC->Gspos("C05I",1,"C05Q", 0.,0.,0., 0,"ONLY");
- pMC->Gspos("C06I",1,"C06Q", 0.,0.,0., 0,"ONLY");
+ gMC->Gsvolu("C05I", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gsvolu("C06I", "TUBS", idtmed[1100], tspar, 5);
+ gMC->Gspos("C05I",1,"C05Q", 0.,0.,0., 0,"ONLY");
+ gMC->Gspos("C06I",1,"C06Q", 0.,0.,0., 0,"ONLY");
//
// Boundary half frame
bpar[0] = (iChamber->frMax - iChamber->frMin)/2;
bpar[1] = dframep/2;
bpar[2] = 5.325;
- pMC->Gsvolu("C05B", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C06B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C05B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C06B", "BOX", idtmed[1103], bpar, 3);
//place 2 boudaries
- pMC->Gspos("C05B",1,"C05Q", iChamber->frMin+bpar[0] ,-bpar[1],0., idrotm[1100],"ONLY");
- pMC->Gspos("C05B",2,"C05Q", -bpar[1],iChamber->frMin+bpar[0] ,0., idrotm[1101],"ONLY");
- pMC->Gspos("C06B",1,"C06Q", iChamber->frMin+bpar[0] ,-bpar[1],0., idrotm[1100],"ONLY");
- pMC->Gspos("C06B",2,"C06Q", -bpar[1],iChamber->frMin+bpar[0] ,0., idrotm[1101],"ONLY");
+ gMC->Gspos("C05B",1,"C05Q", iChamber->frMin+bpar[0] ,-bpar[1],0., idrotm[1100],"ONLY");
+ gMC->Gspos("C05B",2,"C05Q", -bpar[1],iChamber->frMin+bpar[0] ,0., idrotm[1101],"ONLY");
+ gMC->Gspos("C06B",1,"C06Q", iChamber->frMin+bpar[0] ,-bpar[1],0., idrotm[1100],"ONLY");
+ gMC->Gspos("C06B",2,"C06Q", -bpar[1],iChamber->frMin+bpar[0] ,0., idrotm[1101],"ONLY");
//
// Boundary second half frame (should not overlapp with sensitive surface, nor frames)
// Effective inner radius due to circle effect
(iChamber->frMin+2*dframep)*(iChamber->frMin+2*dframep) - dframep*dframep );
bpar[0] = (iChamber->frMax - 2*dframep - rMin ) /2;
bpar[2] = (5.325- (0.055 + 0.325)) / 2;
- pMC->Gsvolu("C05H", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C06H", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C05H", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C06H", "BOX", idtmed[1103], bpar, 3);
//place 2 boudaries
- pMC->Gspos("C05H",1,"C05Q", rMin+bpar[0],bpar[1], 0.055+0.325+bpar[2] , idrotm[1100],"ONLY");
- pMC->Gspos("C05H",2,"C05Q", rMin+bpar[0],bpar[1],-(0.055+0.325+bpar[2]), idrotm[1100],"ONLY");
- pMC->Gspos("C05H",3,"C05Q", bpar[1],rMin+bpar[0], 0.055+0.325+bpar[2] , idrotm[1101],"ONLY");
- pMC->Gspos("C05H",4,"C05Q", bpar[1],rMin+bpar[0],-(0.055+0.325+bpar[2]), idrotm[1101],"ONLY");
- pMC->Gspos("C06H",1,"C06Q", rMin+bpar[0],bpar[1], 0.055+0.325+bpar[2] , idrotm[1100],"ONLY");
- pMC->Gspos("C06H",2,"C06Q", rMin+bpar[0],bpar[1],-(0.055+0.325+bpar[2]), idrotm[1100],"ONLY");
- pMC->Gspos("C06H",3,"C06Q", bpar[1],rMin+bpar[0], 0.055+0.325+bpar[2] , idrotm[1101],"ONLY");
- pMC->Gspos("C06H",4,"C06Q", bpar[1],rMin+bpar[0],-(0.055+0.325+bpar[2]), idrotm[1101],"ONLY");
+ gMC->Gspos("C05H",1,"C05Q", rMin+bpar[0],bpar[1], 0.055+0.325+bpar[2] , idrotm[1100],"ONLY");
+ gMC->Gspos("C05H",2,"C05Q", rMin+bpar[0],bpar[1],-(0.055+0.325+bpar[2]), idrotm[1100],"ONLY");
+ gMC->Gspos("C05H",3,"C05Q", bpar[1],rMin+bpar[0], 0.055+0.325+bpar[2] , idrotm[1101],"ONLY");
+ gMC->Gspos("C05H",4,"C05Q", bpar[1],rMin+bpar[0],-(0.055+0.325+bpar[2]), idrotm[1101],"ONLY");
+ gMC->Gspos("C06H",1,"C06Q", rMin+bpar[0],bpar[1], 0.055+0.325+bpar[2] , idrotm[1100],"ONLY");
+ gMC->Gspos("C06H",2,"C06Q", rMin+bpar[0],bpar[1],-(0.055+0.325+bpar[2]), idrotm[1100],"ONLY");
+ gMC->Gspos("C06H",3,"C06Q", bpar[1],rMin+bpar[0], 0.055+0.325+bpar[2] , idrotm[1101],"ONLY");
+ gMC->Gspos("C06H",4,"C06Q", bpar[1],rMin+bpar[0],-(0.055+0.325+bpar[2]), idrotm[1101],"ONLY");
//
// Chamber Material represented by Alu sheet
// tspar[2] = (iChamber->fdAlu)+(iChamber->fdGas);
tspar[0]= iChamber->frMin+dframep*2;
tspar[1]= iChamber->frMax-dframep*2;
tspar[2] = 0.055 + 0.325;
- pMC->Gsvolu("C05A", "TUBS", idtmed[1103], tspar, 5);
- pMC->Gsvolu("C06A", "TUBS", idtmed[1103], tspar, 5);
- pMC->Gspos("C05A", 1, "C05Q", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C06A", 1, "C06Q", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C05A", "TUBS", idtmed[1103], tspar, 5);
+ gMC->Gsvolu("C06A", "TUBS", idtmed[1103], tspar, 5);
+ gMC->Gspos("C05A", 1, "C05Q", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C06A", 1, "C06Q", 0., 0., 0., 0, "ONLY");
//
// Sensitive volumes
// tpar[2] = iChamber->fdGas;
tspar[2] = 0.325;
- pMC->Gsvolu("C05G", "TUBS", idtmed[1105], tspar, 5);
- pMC->Gsvolu("C06G", "TUBS", idtmed[1105], tspar, 5);
- pMC->Gspos("C05G", 1, "C05A", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C06G", 1, "C06A", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C05G", "TUBS", idtmed[1105], tspar, 5);
+ gMC->Gsvolu("C06G", "TUBS", idtmed[1105], tspar, 5);
+ gMC->Gspos("C05G", 1, "C05A", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C06G", 1, "C06A", 0., 0., 0., 0, "ONLY");
//
// Overwrite sensitive volume with ALU
// Overwrite Gaz volume
bpar[2] = 0.325;
- pMC->Gsvolu("C05Z", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C06Z", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C05Z",1,"C05G", rMin+bpar[0] ,bpar[1],0., idrotm[1100],"ONLY");
- pMC->Gspos("C05Z",2,"C05G", bpar[1], rMin+bpar[0] ,0., idrotm[1101],"ONLY");
- pMC->Gspos("C06Z",1,"C06G", rMin+bpar[0] ,bpar[1],0., idrotm[1100],"ONLY");
- pMC->Gspos("C06Z",2,"C06G", bpar[1], rMin+bpar[0] ,0., idrotm[1101],"ONLY");
+ gMC->Gsvolu("C05Z", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C06Z", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gspos("C05Z",1,"C05G", rMin+bpar[0] ,bpar[1],0., idrotm[1100],"ONLY");
+ gMC->Gspos("C05Z",2,"C05G", bpar[1], rMin+bpar[0] ,0., idrotm[1101],"ONLY");
+ gMC->Gspos("C06Z",1,"C06G", rMin+bpar[0] ,bpar[1],0., idrotm[1100],"ONLY");
+ gMC->Gspos("C06Z",2,"C06G", bpar[1], rMin+bpar[0] ,0., idrotm[1101],"ONLY");
//********************************************************************
// Station 4 **
tpar[1] = (iChamber->frMax+dframep)/TMath::Cos(phi);
tpar[2] = dstation/2;
- pMC->Gsvolu("C07M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gsvolu("C08M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gspos("C07M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
- pMC->Gspos("C08M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
+ gMC->Gsvolu("C07M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("C08M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gspos("C07M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
+ gMC->Gspos("C08M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
// Aluminium frames
// Outer frames
pgpar[0] = 360/12/2;
pgpar[7] = +dframez/2;
pgpar[8] = pgpar[5];
pgpar[9] = pgpar[6];
- pMC->Gsvolu("C07O", "PGON", idtmed[1103], pgpar, 10);
- pMC->Gsvolu("C08O", "PGON", idtmed[1103], pgpar, 10);
- pMC->Gspos("C07O",1,"C07M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C07O",2,"C07M", 0.,0.,+zfpos, 0,"ONLY");
- pMC->Gspos("C08O",1,"C08M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C08O",2,"C08M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gsvolu("C07O", "PGON", idtmed[1103], pgpar, 10);
+ gMC->Gsvolu("C08O", "PGON", idtmed[1103], pgpar, 10);
+ gMC->Gspos("C07O",1,"C07M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C07O",2,"C07M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C08O",1,"C08M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C08O",2,"C08M", 0.,0.,+zfpos, 0,"ONLY");
//
// Inner frame
tpar[0]= iChamber->frMin-dframep;
tpar[1]= iChamber->frMin;
tpar[2]= dframez/2;
- pMC->Gsvolu("C07I", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gsvolu("C08I", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C07I", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C08I", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gspos("C07I",1,"C07M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C07I",2,"C07M", 0.,0.,+zfpos, 0,"ONLY");
- pMC->Gspos("C08I",1,"C08M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C08I",2,"C08M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C07I",1,"C07M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C07I",2,"C07M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C08I",1,"C08M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C08I",2,"C08M", 0.,0.,+zfpos, 0,"ONLY");
//
// Frame Crosses
bpar[0] = (iChamber->frMax - iChamber->frMin)/2;
bpar[1] = dframep/2;
bpar[2] = dframez/2;
- pMC->Gsvolu("C07B", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C08B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C07B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C08B", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C07B",1,"C07M", +iChamber->frMin+bpar[0] , 0,-zfpos,
+ gMC->Gspos("C07B",1,"C07M", +iChamber->frMin+bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C07B",2,"C07M", -iChamber->frMin-bpar[0] , 0,-zfpos,
+ gMC->Gspos("C07B",2,"C07M", -iChamber->frMin-bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C07B",3,"C07M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
+ gMC->Gspos("C07B",3,"C07M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C07B",4,"C07M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
+ gMC->Gspos("C07B",4,"C07M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C07B",5,"C07M", +iChamber->frMin+bpar[0] , 0,+zfpos,
+ gMC->Gspos("C07B",5,"C07M", +iChamber->frMin+bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C07B",6,"C07M", -iChamber->frMin-bpar[0] , 0,+zfpos,
+ gMC->Gspos("C07B",6,"C07M", -iChamber->frMin-bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C07B",7,"C07M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
+ gMC->Gspos("C07B",7,"C07M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C07B",8,"C07M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
+ gMC->Gspos("C07B",8,"C07M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C08B",1,"C08M", +iChamber->frMin+bpar[0] , 0,-zfpos,
+ gMC->Gspos("C08B",1,"C08M", +iChamber->frMin+bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C08B",2,"C08M", -iChamber->frMin-bpar[0] , 0,-zfpos,
+ gMC->Gspos("C08B",2,"C08M", -iChamber->frMin-bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C08B",3,"C08M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
+ gMC->Gspos("C08B",3,"C08M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C08B",4,"C08M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
+ gMC->Gspos("C08B",4,"C08M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C08B",5,"C08M", +iChamber->frMin+bpar[0] , 0,+zfpos,
+ gMC->Gspos("C08B",5,"C08M", +iChamber->frMin+bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C08B",6,"C08M", -iChamber->frMin-bpar[0] , 0,+zfpos,
+ gMC->Gspos("C08B",6,"C08M", -iChamber->frMin-bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C08B",7,"C08M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
+ gMC->Gspos("C08B",7,"C08M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C08B",8,"C08M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
+ gMC->Gspos("C08B",8,"C08M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
//
tpar[0]= iChamber->frMin+dframep*2;
tpar[1]= iChamber->frMax-dframep*2;
tpar[2] = (iChamber->fdGas+iChamber->fdAlu)/2;
- pMC->Gsvolu("C07A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gsvolu("C08A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gspos("C07A", 1, "C07M", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C08A", 1, "C08M", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C07A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C08A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gspos("C07A", 1, "C07M", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C08A", 1, "C08M", 0., 0., 0., 0, "ONLY");
//
// Sensitive volumes
// tpar[2] = iChamber->fdGas;
tpar[2] = iChamber->fdGas/2;
- pMC->Gsvolu("C07G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gsvolu("C08G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gspos("C07G", 1, "C07A", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C08G", 1, "C08A", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C07G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gsvolu("C08G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gspos("C07G", 1, "C07A", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C08G", 1, "C08A", 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("C07F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C08F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C07F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C08F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C07F",1,"C07G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C07F",1,"C07G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C07F",2,"C07G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C07F",2,"C07G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C07F",3,"C07G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C07F",3,"C07G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C07F",4,"C07G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C07F",4,"C07G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C08F",1,"C08G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C08F",1,"C08G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C08F",2,"C08G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C08F",2,"C08G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C08F",3,"C08G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C08F",3,"C08G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C08F",4,"C08G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C08F",4,"C08G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
//********************************************************************
tpar[1] = (iChamber->frMax+dframep)/TMath::Cos(phi);
tpar[2] = dstation/2;
- pMC->Gsvolu("C09M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gsvolu("C10M", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gspos("C09M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
- pMC->Gspos("C10M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
+ gMC->Gsvolu("C09M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("C10M", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gspos("C09M", 1, "ALIC", 0., 0., zpos1 , 0, "ONLY");
+ gMC->Gspos("C10M", 1, "ALIC", 0., 0., zpos2 , 0, "ONLY");
// Aluminium frames
// Outer frames
pgpar[0] = 360/12/2;
pgpar[7] = +dframez/2;
pgpar[8] = pgpar[5];
pgpar[9] = pgpar[6];
- pMC->Gsvolu("C09O", "PGON", idtmed[1103], pgpar, 10);
- pMC->Gsvolu("C10O", "PGON", idtmed[1103], pgpar, 10);
- pMC->Gspos("C09O",1,"C09M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C09O",2,"C09M", 0.,0.,+zfpos, 0,"ONLY");
- pMC->Gspos("C10O",1,"C10M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C10O",2,"C10M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gsvolu("C09O", "PGON", idtmed[1103], pgpar, 10);
+ gMC->Gsvolu("C10O", "PGON", idtmed[1103], pgpar, 10);
+ gMC->Gspos("C09O",1,"C09M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C09O",2,"C09M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C10O",1,"C10M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C10O",2,"C10M", 0.,0.,+zfpos, 0,"ONLY");
//
// Inner frame
tpar[0]= iChamber->frMin-dframep;
tpar[1]= iChamber->frMin;
tpar[2]= dframez/2;
- pMC->Gsvolu("C09I", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gsvolu("C10I", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C09I", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C10I", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gspos("C09I",1,"C09M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C09I",2,"C09M", 0.,0.,+zfpos, 0,"ONLY");
- pMC->Gspos("C10I",1,"C10M", 0.,0.,-zfpos, 0,"ONLY");
- pMC->Gspos("C10I",2,"C10M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C09I",1,"C09M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C09I",2,"C09M", 0.,0.,+zfpos, 0,"ONLY");
+ gMC->Gspos("C10I",1,"C10M", 0.,0.,-zfpos, 0,"ONLY");
+ gMC->Gspos("C10I",2,"C10M", 0.,0.,+zfpos, 0,"ONLY");
//
// Frame Crosses
bpar[0] = (iChamber->frMax - iChamber->frMin)/2;
bpar[1] = dframep/2;
bpar[2] = dframez/2;
- pMC->Gsvolu("C09B", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C10B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C09B", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C10B", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C09B",1,"C09M", +iChamber->frMin+bpar[0] , 0,-zfpos,
+ gMC->Gspos("C09B",1,"C09M", +iChamber->frMin+bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C09B",2,"C09M", -iChamber->frMin-bpar[0] , 0,-zfpos,
+ gMC->Gspos("C09B",2,"C09M", -iChamber->frMin-bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C09B",3,"C09M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
+ gMC->Gspos("C09B",3,"C09M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C09B",4,"C09M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
+ gMC->Gspos("C09B",4,"C09M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C09B",5,"C09M", +iChamber->frMin+bpar[0] , 0,+zfpos,
+ gMC->Gspos("C09B",5,"C09M", +iChamber->frMin+bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C09B",6,"C09M", -iChamber->frMin-bpar[0] , 0,+zfpos,
+ gMC->Gspos("C09B",6,"C09M", -iChamber->frMin-bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C09B",7,"C09M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
+ gMC->Gspos("C09B",7,"C09M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C09B",8,"C09M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
+ gMC->Gspos("C09B",8,"C09M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C10B",1,"C10M", +iChamber->frMin+bpar[0] , 0,-zfpos,
+ gMC->Gspos("C10B",1,"C10M", +iChamber->frMin+bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C10B",2,"C10M", -iChamber->frMin-bpar[0] , 0,-zfpos,
+ gMC->Gspos("C10B",2,"C10M", -iChamber->frMin-bpar[0] , 0,-zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C10B",3,"C10M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
+ gMC->Gspos("C10B",3,"C10M", 0, +iChamber->frMin+bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C10B",4,"C10M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
+ gMC->Gspos("C10B",4,"C10M", 0, -iChamber->frMin-bpar[0] ,-zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C10B",5,"C10M", +iChamber->frMin+bpar[0] , 0,+zfpos,
+ gMC->Gspos("C10B",5,"C10M", +iChamber->frMin+bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C10B",6,"C10M", -iChamber->frMin-bpar[0] , 0,+zfpos,
+ gMC->Gspos("C10B",6,"C10M", -iChamber->frMin-bpar[0] , 0,+zfpos,
idrotm[1100],"ONLY");
- pMC->Gspos("C10B",7,"C10M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
+ gMC->Gspos("C10B",7,"C10M", 0, +iChamber->frMin+bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
- pMC->Gspos("C10B",8,"C10M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
+ gMC->Gspos("C10B",8,"C10M", 0, -iChamber->frMin-bpar[0] ,+zfpos,
idrotm[1101],"ONLY");
//
tpar[0]= iChamber->frMin+dframep*2;
tpar[1]= iChamber->frMax-dframep*2;
tpar[2] = (iChamber->fdGas+iChamber->fdAlu)/2;
- pMC->Gsvolu("C09A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gsvolu("C10A", "TUBE", idtmed[1103], tpar, 3);
- pMC->Gspos("C09A", 1, "C09M", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C10A", 1, "C10M", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C09A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gsvolu("C10A", "TUBE", idtmed[1103], tpar, 3);
+ gMC->Gspos("C09A", 1, "C09M", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C10A", 1, "C10M", 0., 0., 0., 0, "ONLY");
//
// Sensitive volumes
// tpar[2] = iChamber->fdGas;
tpar[2] = iChamber->fdGas/2;
- pMC->Gsvolu("C09G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gsvolu("C10G", "TUBE", idtmed[1105], tpar, 3);
- pMC->Gspos("C09G", 1, "C09A", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("C10G", 1, "C10A", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("C09G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gsvolu("C10G", "TUBE", idtmed[1105], tpar, 3);
+ gMC->Gspos("C09G", 1, "C09A", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("C10G", 1, "C10A", 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("C09F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gsvolu("C10F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C09F", "BOX", idtmed[1103], bpar, 3);
+ gMC->Gsvolu("C10F", "BOX", idtmed[1103], bpar, 3);
- pMC->Gspos("C09F",1,"C09G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C09F",1,"C09G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C09F",2,"C09G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C09F",2,"C09G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C09F",3,"C09G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C09F",3,"C09G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C09F",4,"C09G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C09F",4,"C09G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C10F",1,"C10G", +iChamber->frMin+bpar[0] , 0, 0,
+ gMC->Gspos("C10F",1,"C10G", +iChamber->frMin+bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C10F",2,"C10G", -iChamber->frMin-bpar[0] , 0, 0,
+ gMC->Gspos("C10F",2,"C10G", -iChamber->frMin-bpar[0] , 0, 0,
idrotm[1100],"ONLY");
- pMC->Gspos("C10F",3,"C10G", 0, +iChamber->frMin+bpar[0] , 0,
+ gMC->Gspos("C10F",3,"C10G", 0, +iChamber->frMin+bpar[0] , 0,
idrotm[1101],"ONLY");
- pMC->Gspos("C10F",4,"C10G", 0, -iChamber->frMin-bpar[0] , 0,
+ gMC->Gspos("C10F",4,"C10G", 0, -iChamber->frMin-bpar[0] , 0,
idrotm[1101],"ONLY");
///////////////////////////////////////
tpar[0] = iChamber->frMin;
tpar[1] = iChamber->frMax;
tpar[2] = 0.4;
- pMC->Gsvolu("CM11", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gsvolu("CM12", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("CM11", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("CM12", "TUBE", idtmed[1100], tpar, 3);
// Definition of the flange between the beam shielding and the RPC
tpar[0]= R_MIN1;
tpar[1]= R_MAX1;
tpar[2]= 0.4;
- pMC->Gsvolu("CF1A", "TUBE", idtmed[1103], tpar, 3); //Al
- pMC->Gspos("CF1A", 1, "CM11", 0., 0., 0., 0, "MANY");
- pMC->Gspos("CF1A", 2, "CM12", 0., 0., 0., 0, "MANY");
+ gMC->Gsvolu("CF1A", "TUBE", idtmed[1103], tpar, 3); //Al
+ gMC->Gspos("CF1A", 1, "CM11", 0., 0., 0., 0, "MANY");
+ gMC->Gspos("CF1A", 2, "CM12", 0., 0., 0., 0, "MANY");
// Definition of prototype for chambers in the first plane
tpar[1]= 0.;
tpar[2]= 0.;
- pMC->Gsvolu("CC1A", "BOX ", idtmed[1103], tpar, 0); //Al
- pMC->Gsvolu("CB1A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
- pMC->Gsvolu("CG1A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
+ gMC->Gsvolu("CC1A", "BOX ", idtmed[1103], tpar, 0); //Al
+ gMC->Gsvolu("CB1A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
+ gMC->Gsvolu("CG1A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
// chamber type A
tpar[0] = -1.;
const Float_t Z_MC1A=0.;
tpar[2] = 0.1;
- pMC->Gsposp("CG1A", 1, "CB1A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CG1A", 1, "CB1A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.3;
- pMC->Gsposp("CB1A", 1, "CC1A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CB1A", 1, "CC1A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.4;
tpar[0] = (X_MC1_MAX-X_MC1_MED)/2.;
tpar[1] = Y_MC1_MIN;
- pMC->Gsposp("CC1A", 1, "CM11",X_MC1A,Y_MC1A,Z_MC1A, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 2, "CM11",-X_MC1A,Y_MC1A,Z_MC1A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 1, "CM11",X_MC1A,Y_MC1A,Z_MC1A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 2, "CM11",-X_MC1A,Y_MC1A,Z_MC1A, 0, "ONLY", tpar, 3);
// chamber type B
tpar[0] = (X_MC1_MAX-X_MC1_MIN)/2.;
const Float_t Y_MC1B=Y_MC1_MIN+tpar[1];
const Float_t Z_MC1B=0.;
- pMC->Gsposp("CC1A", 3, "CM11",X_MC1B,Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 4, "CM11",-X_MC1B,Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 5, "CM11",X_MC1B,-Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 6, "CM11",-X_MC1B,-Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 3, "CM11",X_MC1B,Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 4, "CM11",-X_MC1B,Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 5, "CM11",X_MC1B,-Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 6, "CM11",-X_MC1B,-Y_MC1B,Z_MC1B, 0, "ONLY", tpar, 3);
// chamber type C
tpar[0] = X_MC1_MAX/2;
const Float_t Y_MC1C=Y_MC1_MAX+tpar[1];
const Float_t Z_MC1C=0.;
- pMC->Gsposp("CC1A", 7, "CM11",X_MC1C,Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 8, "CM11",-X_MC1C,Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 9, "CM11",X_MC1C,-Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 10, "CM11",-X_MC1C,-Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 7, "CM11",X_MC1C,Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 8, "CM11",-X_MC1C,Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 9, "CM11",X_MC1C,-Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 10, "CM11",-X_MC1C,-Y_MC1C,Z_MC1C, 0, "ONLY", tpar, 3);
// chamber type D
tpar[0] = X_MC1_MAX/2.;
const Float_t Z_MC1D=0.;
Float_t Y_MC1D=4.*Y_MC1_MIN;
- pMC->Gsposp("CC1A", 11, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 12, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 13, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 14, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 11, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 12, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 13, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 14, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
Y_MC1D=6.*Y_MC1_MIN;
- pMC->Gsposp("CC1A", 15, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 16, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 17, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 18, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 15, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 16, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 17, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 18, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
Y_MC1D=8.*Y_MC1_MIN;
- pMC->Gsposp("CC1A", 19, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 20, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 21, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC1A", 22, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 19, "CM11",X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 20, "CM11",X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 21, "CM11",-X_MC1D,Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC1A", 22, "CM11",-X_MC1D,-Y_MC1D,Z_MC1D, 0, "ONLY", tpar, 3);
// Positioning first plane in ALICE
- pMC->Gspos("CM11", 1, "ALIC", 0., 0., zpos1, 0, "ONLY");
+ gMC->Gspos("CM11", 1, "ALIC", 0., 0., zpos1, 0, "ONLY");
// End of geometry definition for the first plane
tpar[1]= 0.;
tpar[2]= 0.;
- pMC->Gsvolu("CC2A", "BOX ", idtmed[1103], tpar, 0); //Al
- pMC->Gsvolu("CB2A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
- pMC->Gsvolu("CG2A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
+ gMC->Gsvolu("CC2A", "BOX ", idtmed[1103], tpar, 0); //Al
+ gMC->Gsvolu("CB2A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
+ gMC->Gsvolu("CG2A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
// chamber type A
tpar[0] = -1.;
const Float_t Z_MC2A=0.;
tpar[2] = 0.1;
- pMC->Gsposp("CG2A", 1, "CB2A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CG2A", 1, "CB2A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.3;
- pMC->Gsposp("CB2A", 1, "CC2A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CB2A", 1, "CC2A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.4;
tpar[0] = (X_MC1_MAX-X_MC1_MED)/2.;
tpar[1] = Y_MC1_MIN;
- pMC->Gsposp("CC2A", 1, "CM12",X_MC2A,Y_MC2A,Z_MC2A, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 2, "CM12",-X_MC2A,Y_MC2A,Z_MC2A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 1, "CM12",X_MC2A,Y_MC2A,Z_MC2A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 2, "CM12",-X_MC2A,Y_MC2A,Z_MC2A, 0, "ONLY", tpar, 3);
// chamber type B
tpar[0] = (X_MC1_MAX-X_MC1_MIN)/2.;
const Float_t Y_MC2B=2.*Y_MC1_MIN*Z_1S2-Y_MC1_MIN*1.5+Y_MC1_MAX*0.5;
const Float_t Z_MC2B=0.;
- pMC->Gsposp("CC2A", 3, "CM12",X_MC2B,Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 4, "CM12",-X_MC2B,Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 5, "CM12",X_MC2B,-Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 6, "CM12",-X_MC2B,-Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 3, "CM12",X_MC2B,Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 4, "CM12",-X_MC2B,Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 5, "CM12",X_MC2B,-Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 6, "CM12",-X_MC2B,-Y_MC2B,Z_MC2B, 0, "ONLY", tpar, 3);
// chamber type C
tpar[0] = X_MC1_MAX/2;
const Float_t Y_MC2C=2.*Y_MC1_MIN*Z_1S2-Y_MC1_MIN*2.+Y_MC1_MAX*1.5;
const Float_t Z_MC2C=0.;
- pMC->Gsposp("CC2A", 7, "CM12",X_MC2C,Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 8, "CM12",-X_MC2C,Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 9, "CM12",X_MC2C,-Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 10, "CM12",-X_MC2C,-Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 7, "CM12",X_MC2C,Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 8, "CM12",-X_MC2C,Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 9, "CM12",X_MC2C,-Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 10, "CM12",-X_MC2C,-Y_MC2C,Z_MC2C, 0, "ONLY", tpar, 3);
// chamber type D
tpar[0] = X_MC1_MAX/2.;
const Float_t Z_MC2D=0.;
Float_t Y_MC2D=4.*Y_MC1_MIN*Z_1S2;
- pMC->Gsposp("CC2A", 11, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 12, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 13, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 14, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 11, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 12, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 13, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 14, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
Y_MC2D=6.*Y_MC1_MIN*Z_1S2;
- pMC->Gsposp("CC2A", 15, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 16, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 17, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 18, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 15, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 16, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 17, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 18, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
Y_MC2D=8.*Y_MC1_MIN*Z_1S2;
- pMC->Gsposp("CC2A", 19, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 20, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 21, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC2A", 22, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 19, "CM12",X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 20, "CM12",X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 21, "CM12",-X_MC2D,Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC2A", 22, "CM12",-X_MC2D,-Y_MC2D,Z_MC2D, 0, "ONLY", tpar, 3);
- pMC->Gspos("CM12", 1, "ALIC", 0., 0., zpos2, 0, "ONLY");
+ gMC->Gspos("CM12", 1, "ALIC", 0., 0., zpos2, 0, "ONLY");
// Station 2
iChamber=(AliMUONchamber*) (*fChambers)[12];
tpar[0] = iChamber->frMin;
tpar[1] = iChamber->frMax;
tpar[2] = 0.4;
- pMC->Gsvolu("CM21", "TUBE", idtmed[1100], tpar, 3);
- pMC->Gsvolu("CM22", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("CM21", "TUBE", idtmed[1100], tpar, 3);
+ gMC->Gsvolu("CM22", "TUBE", idtmed[1100], tpar, 3);
// Definition of the flange between the beam shielding and the RPC
tpar[0]= R_MIN3;
tpar[1]= R_MAX3;
tpar[2]= 0.4;
- pMC->Gsvolu("CF2A", "TUBE", idtmed[1103], tpar, 3); //Al
- pMC->Gspos("CF2A", 1, "CM21", 0., 0., 0., 0, "MANY");
- pMC->Gspos("CF2A", 2, "CM22", 0., 0., 0., 0, "MANY");
+ gMC->Gsvolu("CF2A", "TUBE", idtmed[1103], tpar, 3); //Al
+ gMC->Gspos("CF2A", 1, "CM21", 0., 0., 0., 0, "MANY");
+ gMC->Gspos("CF2A", 2, "CM22", 0., 0., 0., 0, "MANY");
// Definition of prototype for chambers in the third plane
tpar[1]= 0.;
tpar[2]= 0.;
- pMC->Gsvolu("CC3A", "BOX ", idtmed[1103], tpar, 0); //Al
- pMC->Gsvolu("CB3A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
- pMC->Gsvolu("CG3A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
+ gMC->Gsvolu("CC3A", "BOX ", idtmed[1103], tpar, 0); //Al
+ gMC->Gsvolu("CB3A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
+ gMC->Gsvolu("CG3A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
// chamber type A
tpar[0] = -1.;
const Float_t Z_MC3A=0.;
tpar[2] = 0.1;
- pMC->Gsposp("CG3A", 1, "CB3A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CG3A", 1, "CB3A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.3;
- pMC->Gsposp("CB3A", 1, "CC3A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CB3A", 1, "CC3A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[0] = (X_MC3_MAX-X_MC3_MED)/2.;
tpar[1] = Y_MC3_MIN;
tpar[2] = 0.4;
- pMC->Gsposp("CC3A", 1, "CM21",X_MC3A,Y_MC3A,Z_MC3A, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 2, "CM21",-X_MC3A,Y_MC3A,Z_MC3A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 1, "CM21",X_MC3A,Y_MC3A,Z_MC3A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 2, "CM21",-X_MC3A,Y_MC3A,Z_MC3A, 0, "ONLY", tpar, 3);
// chamber type B
tpar[0] = (X_MC3_MAX-X_MC3_MIN)/2.;
const Float_t Y_MC3B=Y_MC3_MIN+tpar[1];
const Float_t Z_MC3B=0.;
- pMC->Gsposp("CC3A", 3, "CM21",X_MC3B,Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 4, "CM21",-X_MC3B,Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 5, "CM21",X_MC3B,-Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 6, "CM21",-X_MC3B,-Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 3, "CM21",X_MC3B,Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 4, "CM21",-X_MC3B,Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 5, "CM21",X_MC3B,-Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 6, "CM21",-X_MC3B,-Y_MC3B,Z_MC3B, 0, "ONLY", tpar, 3);
// chamber type C
tpar[0] = X_MC3_MAX/2.;
const Float_t Y_MC3C=Y_MC3_MAX+tpar[1];
const Float_t Z_MC3C=0.;
- pMC->Gsposp("CC3A", 7, "CM21",X_MC3C,Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 8, "CM21",-X_MC3C,Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 9, "CM21",X_MC3C,-Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 10, "CM21",-X_MC3C,-Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 7, "CM21",X_MC3C,Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 8, "CM21",-X_MC3C,Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 9, "CM21",X_MC3C,-Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 10, "CM21",-X_MC3C,-Y_MC3C,Z_MC3C, 0, "ONLY", tpar, 3);
// chamber type D
tpar[0] = X_MC3_MAX/2.;
const Float_t Z_MC3D=0.;
Float_t Y_MC3D=4.*Y_MC3_MIN;
- pMC->Gsposp("CC3A", 11, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 12, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 13, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 14, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 11, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 12, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 13, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 14, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
Y_MC3D=6.*Y_MC3_MIN;
- pMC->Gsposp("CC3A", 15, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 16, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 17, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 18, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 15, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 16, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 17, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 18, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
Y_MC3D=8.*Y_MC3_MIN;
- pMC->Gsposp("CC3A", 19, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 20, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 21, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC3A", 22, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 19, "CM21",X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 20, "CM21",X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 21, "CM21",-X_MC3D,Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC3A", 22, "CM21",-X_MC3D,-Y_MC3D,Z_MC3D, 0, "ONLY", tpar, 3);
// Positioning third plane in ALICE
- pMC->Gspos("CM21", 1, "ALIC", 0., 0., zpos3, 0, "ONLY");
+ gMC->Gspos("CM21", 1, "ALIC", 0., 0., zpos3, 0, "ONLY");
// End of geometry definition for the third plane
tpar[1]= 0.;
tpar[2]= 0.;
- pMC->Gsvolu("CC4A", "BOX ", idtmed[1103], tpar, 0); //Al
- pMC->Gsvolu("CB4A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
- pMC->Gsvolu("CG4A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
+ gMC->Gsvolu("CC4A", "BOX ", idtmed[1103], tpar, 0); //Al
+ gMC->Gsvolu("CB4A", "BOX ", idtmed[1107], tpar, 0); //Bakelite
+ gMC->Gsvolu("CG4A", "BOX ", idtmed[1106], tpar, 0); //Gas streamer
// chamber type A
tpar[0] = -1.;
const Float_t Z_MC4A=0.;
tpar[2] = 0.1;
- pMC->Gsposp("CG4A", 1, "CB4A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CG4A", 1, "CB4A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.3;
- pMC->Gsposp("CB4A", 1, "CC4A", 0., 0., 0., 0, "ONLY",tpar,3);
+ gMC->Gsposp("CB4A", 1, "CC4A", 0., 0., 0., 0, "ONLY",tpar,3);
tpar[2] = 0.4;
tpar[0] = (X_MC3_MAX-X_MC3_MED)/2.;
tpar[1] = Y_MC3_MIN;
- pMC->Gsposp("CC4A", 1, "CM22",X_MC4A,Y_MC4A,Z_MC4A, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 2, "CM22",-X_MC4A,Y_MC4A,Z_MC4A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 1, "CM22",X_MC4A,Y_MC4A,Z_MC4A, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 2, "CM22",-X_MC4A,Y_MC4A,Z_MC4A, 0, "ONLY", tpar, 3);
// chamber type B
tpar[0] = (X_MC3_MAX-X_MC3_MIN)/2.;
const Float_t Y_MC4B=2.*Y_MC3_MIN*Z_3S4-Y_MC3_MIN*1.5+Y_MC3_MAX*0.5;
const Float_t Z_MC4B=0.;
- pMC->Gsposp("CC4A", 3, "CM22",X_MC4B,Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 4, "CM22",-X_MC4B,Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 5, "CM22",X_MC4B,-Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 6, "CM22",-X_MC4B,-Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 3, "CM22",X_MC4B,Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 4, "CM22",-X_MC4B,Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 5, "CM22",X_MC4B,-Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 6, "CM22",-X_MC4B,-Y_MC4B,Z_MC4B, 0, "ONLY", tpar, 3);
// chamber type C
tpar[0] = X_MC3_MAX/2;
const Float_t Y_MC4C=2.*Y_MC3_MIN*Z_3S4-Y_MC3_MIN*2.+Y_MC3_MAX*1.5;
const Float_t Z_MC4C=0.;
- pMC->Gsposp("CC4A", 7, "CM22",X_MC4C,Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 8, "CM22",-X_MC4C,Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 9, "CM22",X_MC4C,-Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 10, "CM22",-X_MC4C,-Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 7, "CM22",X_MC4C,Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 8, "CM22",-X_MC4C,Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 9, "CM22",X_MC4C,-Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 10, "CM22",-X_MC4C,-Y_MC4C,Z_MC4C, 0, "ONLY", tpar, 3);
// chamber type D
tpar[0] = X_MC3_MAX/2.;
const Float_t Z_MC4D=0.;
Float_t Y_MC4D=4.*Y_MC3_MIN*Z_3S4;
- pMC->Gsposp("CC4A", 11, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 12, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 13, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 14, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 11, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 12, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 13, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 14, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
Y_MC4D=6.*Y_MC3_MIN*Z_3S4;
- pMC->Gsposp("CC4A", 15, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 16, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 17, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 18, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 15, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 16, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 17, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 18, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
Y_MC4D=8.*Y_MC3_MIN*Z_3S4;
- pMC->Gsposp("CC4A", 19, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 20, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 21, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gsposp("CC4A", 22, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 19, "CM22",X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 20, "CM22",X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 21, "CM22",-X_MC4D,Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
+ gMC->Gsposp("CC4A", 22, "CM22",-X_MC4D,-Y_MC4D,Z_MC4D, 0, "ONLY", tpar, 3);
- pMC->Gspos("CM22", 1, "ALIC", 0., 0., zpos4, 0, "ONLY");
+ gMC->Gspos("CM22", 1, "ALIC", 0., 0., zpos4, 0, "ONLY");
}
}
//
// Set the chamber (sensitive region) GEANT identifier
- AliMC* pMC = AliMC::GetMC();
- ((AliMUONchamber*)(*fChambers)[0])->SetGid(pMC->VolId("C01G"));
- ((AliMUONchamber*)(*fChambers)[1])->SetGid(pMC->VolId("C02G"));
- ((AliMUONchamber*)(*fChambers)[2])->SetGid(pMC->VolId("C03G"));
- ((AliMUONchamber*)(*fChambers)[3])->SetGid(pMC->VolId("C04G"));
- ((AliMUONchamber*)(*fChambers)[4])->SetGid(pMC->VolId("C05G"));
- ((AliMUONchamber*)(*fChambers)[5])->SetGid(pMC->VolId("C06G"));
- ((AliMUONchamber*)(*fChambers)[6])->SetGid(pMC->VolId("C07G"));
- ((AliMUONchamber*)(*fChambers)[7])->SetGid(pMC->VolId("C08G"));
- ((AliMUONchamber*)(*fChambers)[8])->SetGid(pMC->VolId("C09G"));
- ((AliMUONchamber*)(*fChambers)[9])->SetGid(pMC->VolId("C10G"));
- ((AliMUONchamber*)(*fChambers)[10])->SetGid(pMC->VolId("CG1A"));
- ((AliMUONchamber*)(*fChambers)[11])->SetGid(pMC->VolId("CG2A"));
- ((AliMUONchamber*)(*fChambers)[12])->SetGid(pMC->VolId("CG3A"));
- ((AliMUONchamber*)(*fChambers)[13])->SetGid(pMC->VolId("CG4A"));
+ ((AliMUONchamber*)(*fChambers)[0])->SetGid(gMC->VolId("C01G"));
+ ((AliMUONchamber*)(*fChambers)[1])->SetGid(gMC->VolId("C02G"));
+ ((AliMUONchamber*)(*fChambers)[2])->SetGid(gMC->VolId("C03G"));
+ ((AliMUONchamber*)(*fChambers)[3])->SetGid(gMC->VolId("C04G"));
+ ((AliMUONchamber*)(*fChambers)[4])->SetGid(gMC->VolId("C05G"));
+ ((AliMUONchamber*)(*fChambers)[5])->SetGid(gMC->VolId("C06G"));
+ ((AliMUONchamber*)(*fChambers)[6])->SetGid(gMC->VolId("C07G"));
+ ((AliMUONchamber*)(*fChambers)[7])->SetGid(gMC->VolId("C08G"));
+ ((AliMUONchamber*)(*fChambers)[8])->SetGid(gMC->VolId("C09G"));
+ ((AliMUONchamber*)(*fChambers)[9])->SetGid(gMC->VolId("C10G"));
+ ((AliMUONchamber*)(*fChambers)[10])->SetGid(gMC->VolId("CG1A"));
+ ((AliMUONchamber*)(*fChambers)[11])->SetGid(gMC->VolId("CG2A"));
+ ((AliMUONchamber*)(*fChambers)[12])->SetGid(gMC->VolId("CG3A"));
+ ((AliMUONchamber*)(*fChambers)[13])->SetGid(gMC->VolId("CG4A"));
printf("\n\n\n Finished Init for version 0 - CPC chamber type\n\n\n");
}
const Float_t big=1.e10;
TClonesArray &lhits = *fHits;
- AliMC* pMC = AliMC::GetMC();
//
// Set maximum step size for gas
- // numed=pMC->GetMedium();
+ // numed=gMC->GetMedium();
//
// Only charged tracks
- if( !(pMC->TrackCharge()) ) return;
+ if( !(gMC->TrackCharge()) ) return;
//
// Only gas gap inside chamber
// Tag chambers and record hits when track enters
idvol=-1;
- id=pMC->CurrentVol(0,copy);
+ id=gMC->CurrentVol(0,copy);
for (Int_t i=1; i<=NCH; i++) {
if(id==((AliMUONchamber*)(*fChambers)[i-1])->GetGid()){
if (idvol == -1) return;
//
// Get current particle id (ipart), track position (pos) and momentum (mom)
- pMC->TrackPosition(pos);
- pMC->TrackMomentum(mom);
+ gMC->TrackPosition(pos);
+ gMC->TrackMomentum(mom);
- ipart = pMC->TrackPid();
+ ipart = gMC->TrackPid();
//
// momentum loss and steplength in last step
- destep = pMC->Edep();
- step = pMC->TrackStep();
+ destep = gMC->Edep();
+ step = gMC->TrackStep();
//
// record hits when track enters ...
- if( pMC->TrackEntering()) {
- pMC->SetMaxStep(fMaxStepGas);
+ if( gMC->TrackEntering()) {
+ gMC->SetMaxStep(fMaxStepGas);
Double_t tc = mom[0]*mom[0]+mom[1]*mom[1];
Double_t rt = TMath::Sqrt(tc);
theta = Float_t(TMath::ATan2(rt,Double_t(mom[2])))*kRaddeg;
// Calculate the charge induced on a pad (disintegration) in case
//
// Mip left chamber ...
- if( pMC->TrackExiting() || pMC->TrackStop() || pMC->TrackDisappear()){
- pMC->SetMaxStep(big);
+ if( gMC->TrackExiting() || gMC->TrackStop() || gMC->TrackDisappear()){
+ gMC->SetMaxStep(big);
eloss += destep;
tlength += step;
// ORIGIN : NICK VAN EIJNDHOVEN
- AliMC* pMC = AliMC::GetMC();
Int_t ISXFLD = gAlice->Field()->Integ();
Float_t SXMGMX = gAlice->Field()->Max();
AliMedium(99, "Air $",99, 0, ISXFLD, SXMGMX, 10., 1., .1, .1, 10);
// --- Generate explicitly delta rays in the steel cover ---
- pMC->Gstpar(idtmed[704], "LOSS", 3.);
- pMC->Gstpar(idtmed[704], "DRAY", 1.);
+ gMC->Gstpar(idtmed[704], "LOSS", 3.);
+ gMC->Gstpar(idtmed[704], "DRAY", 1.);
// --- and in aluminium parts ---
- pMC->Gstpar(idtmed[701], "LOSS", 3.);
- pMC->Gstpar(idtmed[701], "DRAY", 1.);
+ gMC->Gstpar(idtmed[701], "LOSS", 3.);
+ gMC->Gstpar(idtmed[701], "DRAY", 1.);
}
//______________________________________________________________________________
//___________________________________________
void AliPHOSv0::Init()
{
- AliMC* pMC = AliMC::GetMC();
-
- fIdSens=pMC->VolId("PXTL");
+ fIdSens=gMC->VolId("PXTL");
}
//___________________________________________
// *** DEFINITION OF THE -0.25<y<0.25 TILTED GEOMETRY OF THE PHOS ***
// ORIGIN : NICK VAN EIJNDHOVEN
- AliMC* pMC = AliMC::GetMC();
-
Float_t pphi;
Float_t r, dptcb[3], dpair[3], dphos[3], dpucp[3], dpasp[3], dpcpv[3];
Float_t dpxtl[3];
dphos[0] = FOC_X/2.;
dphos[1] = FOC_Y/2.;
dphos[2] = FOC_Z/2.;
- pMC->Gsvolu("PHOS", "BOX ", idtmed[703], dphos, 3);
+ gMC->Gsvolu("PHOS", "BOX ", idtmed[703], dphos, 3);
// --- Define air-filled box, place inside PHOS ---
dpair[0] = AIR_X/2.;
dpair[1] = AIR_Y/2.;
dpair[2] = AIR_Z/2.;
- pMC->Gsvolu("PAIR", "BOX ", idtmed[798], dpair, 3);
- pMC->Gspos("PAIR", 1, "PHOS", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("PAIR", "BOX ", idtmed[798], dpair, 3);
+ gMC->Gspos("PAIR", 1, "PHOS", 0., 0., 0., 0, "ONLY");
// --- Define Upper Cooling Panel ---
// --- place it right behind upper foam plate ---
dpucp[0] = TCB_X/2.;
dpucp[1] = UCP_Y/2.;
dpucp[2] = TCB_Z/2.;
- pMC->Gsvolu("PUCP", "BOX ", idtmed[701], dpucp, 3);
+ gMC->Gsvolu("PUCP", "BOX ", idtmed[701], dpucp, 3);
yo = (AIR_Y-UCP_Y)/2.;
- pMC->Gspos("PUCP", 1, "PAIR", 0., yo, 0., 0, "ONLY");
+ gMC->Gspos("PUCP", 1, "PAIR", 0., yo, 0., 0, "ONLY");
// --- Define Crystal Block, fill with Tyvek, position inside PAIR ---
dptcb[0] = TCB_X/2.;
dptcb[1] = TCB_Y/2.;
dptcb[2] = TCB_Z/2.;
- pMC->Gsvolu("PTCB", "BOX ", idtmed[702], dptcb, 3);
+ gMC->Gsvolu("PTCB", "BOX ", idtmed[702], dptcb, 3);
// --- Divide PTCB in X and Z directions --
- pMC->Gsdvn("PSEC", "PTCB", 11, 1);
- pMC->Gsdvn("PMOD", "PSEC", 13, 3);
- pMC->Gsdvn("PSTR", "PMOD", 8, 1);
- pMC->Gsdvn("PCEL", "PSTR", 8, 3);
+ gMC->Gsdvn("PSEC", "PTCB", 11, 1);
+ gMC->Gsdvn("PMOD", "PSEC", 13, 3);
+ gMC->Gsdvn("PSTR", "PMOD", 8, 1);
+ gMC->Gsdvn("PCEL", "PSTR", 8, 3);
yo = (FOC_Y-TCB_Y)/2. -(CBS_R-FOC_R);
- pMC->Gspos("PTCB", 1, "PAIR", 0., yo, 0., 0, "ONLY");
+ gMC->Gspos("PTCB", 1, "PAIR", 0., yo, 0., 0, "ONLY");
// --- Define PbWO4 crystal volume, place inside PCEL ---
dpxtl[0] = XTL_X/2.;
dpxtl[1] = XTL_Y/2.;
dpxtl[2] = XTL_Z/2.;
- pMC->Gsvolu("PXTL", "BOX ", idtmed[699], dpxtl, 3);
+ gMC->Gsvolu("PXTL", "BOX ", idtmed[699], dpxtl, 3);
yo = (TCB_Y-XTL_Y)/2. - PAP_THICK;
- pMC->Gspos("PXTL", 1, "PCEL", 0., yo, 0., 0, "ONLY");
+ gMC->Gspos("PXTL", 1, "PCEL", 0., yo, 0., 0, "ONLY");
// --- Define Al Support Plate, position it inside PAIR ---
// --- right beneath PTCB ---
dpasp[0] = AIR_X/2.;
dpasp[1] = ASP_Y/2.;
dpasp[2] = AIR_Z/2.;
- pMC->Gsvolu("PASP", "BOX ", idtmed[701], dpasp, 3);
+ gMC->Gsvolu("PASP", "BOX ", idtmed[701], dpasp, 3);
yo = (FOC_Y-ASP_Y)/2. - (CBS_R-FOC_R+TCB_Y);
- pMC->Gspos("PASP", 1, "PAIR", 0., yo, 0., 0, "ONLY");
+ gMC->Gspos("PASP", 1, "PAIR", 0., yo, 0., 0, "ONLY");
// --- Define CPV volume, DON'T PLACE IT YET ---
dpcpv[0] = TCB_X/2.;
dpcpv[1] = CPV_Y/2.;
dpcpv[2] = TCB_Z/2.;
- pMC->Gsvolu("PCPV", "BOX ", idtmed[700], dpcpv, 3);
+ gMC->Gsvolu("PCPV", "BOX ", idtmed[700], dpcpv, 3);
// --- Divide in X and Z direction (same way as PTCB) ---
- pMC->Gsdvn("PCSE", "PCPV", 11, 1);
- pMC->Gsdvn("PCMO", "PCSE", 13, 3);
- pMC->Gsdvn("PCST", "PCMO", 8, 1);
- pMC->Gsdvn("PCCE", "PCST", 8, 3);
+ gMC->Gsdvn("PCSE", "PCPV", 11, 1);
+ gMC->Gsdvn("PCMO", "PCSE", 13, 3);
+ gMC->Gsdvn("PCST", "PCMO", 8, 1);
+ gMC->Gsdvn("PCCE", "PCST", 8, 3);
// --- Position various PHOS units in ALICE setup ---
// --- PHOS itself first ---
AliMatrix(idrotm[1], 90., -pphi, 90., 90-pphi, 0., 0.);
AliMatrix(idrotm[2], 90., pphi, 90., 90+pphi, 0., 0.);
AliMatrix(idrotm[3], 90., 3*pphi, 90., 90+3*pphi, 0., 0.);
- pMC->Gspos("PHOS", 1, "ALIC", xp1, yp1, 0., idrotm[0], "ONLY");
- pMC->Gspos("PHOS", 2, "ALIC", xp2, yp2, 0., idrotm[1], "ONLY");
- pMC->Gspos("PHOS", 3, "ALIC",-xp2, yp2, 0., idrotm[2], "ONLY");
- pMC->Gspos("PHOS", 4, "ALIC",-xp1, yp1, 0., idrotm[3], "ONLY");
+ gMC->Gspos("PHOS", 1, "ALIC", xp1, yp1, 0., idrotm[0], "ONLY");
+ gMC->Gspos("PHOS", 2, "ALIC", xp2, yp2, 0., idrotm[1], "ONLY");
+ gMC->Gspos("PHOS", 3, "ALIC",-xp2, yp2, 0., idrotm[2], "ONLY");
+ gMC->Gspos("PHOS", 4, "ALIC",-xp1, yp1, 0., idrotm[3], "ONLY");
// --- Now position PCPV so that its plates are right on top of ---
// --- corresponding PHOS supermodules (previously called cradles) ---
yp1 = -r * TMath::Cos(pphi * 3.);
xp2 = -r * TMath::Sin(pphi);
yp2 = -r * TMath::Cos(pphi);
- pMC->Gspos("PCPV", 1, "ALIC", xp1, yp1, 0., idrotm[0], "ONLY");
- pMC->Gspos("PCPV", 2, "ALIC", xp2, yp2, 0., idrotm[1], "ONLY");
- pMC->Gspos("PCPV", 3, "ALIC",-xp2, yp2, 0., idrotm[2], "ONLY");
- pMC->Gspos("PCPV", 4, "ALIC",-xp1, yp1, 0., idrotm[3], "ONLY");
+ gMC->Gspos("PCPV", 1, "ALIC", xp1, yp1, 0., idrotm[0], "ONLY");
+ gMC->Gspos("PCPV", 2, "ALIC", xp2, yp2, 0., idrotm[1], "ONLY");
+ gMC->Gspos("PCPV", 3, "ALIC",-xp2, yp2, 0., idrotm[2], "ONLY");
+ gMC->Gspos("PCPV", 4, "ALIC",-xp1, yp1, 0., idrotm[3], "ONLY");
// --- Set modules seen without tree for drawings ---
- pMC->Gsatt("PMOD", "SEEN", -2);
- pMC->Gsatt("PCMO", "SEEN", -2);
+ gMC->Gsatt("PMOD", "SEEN", -2);
+ gMC->Gsatt("PCMO", "SEEN", -2);
}
//___________________________________________
// *** DEFINITION OF AVAILABLE PHOS MATERIALS ***
// ORIGIN : NICK VAN EIJNDHOVEN
- AliMC* pMC = AliMC::GetMC();
-
Int_t ISXFLD = gAlice->Field()->Integ();
Float_t SXMGMX = gAlice->Field()->Max();
AliMedium(99, "Air $", 9, 0, ISXFLD, SXMGMX, 10., 1., .1, .1, 10.);
// --- Generate explicitly delta rays in aluminium parts ---
- pMC->Gstpar(idtmed[701], "LOSS", 3.);
- pMC->Gstpar(idtmed[701], "DRAY", 1.);
+ gMC->Gstpar(idtmed[701], "LOSS", 3.);
+ gMC->Gstpar(idtmed[701], "DRAY", 1.);
}
void AliPHOSv0::StepManager()
{
- AliMC* pMC = AliMC::GetMC();
-
TClonesArray &lhits = *fHits;
Int_t copy, i;
Int_t vol[5];
Float_t hits[4];
- if(pMC->CurrentVol(0,copy) == fIdSens) {
+ if(gMC->CurrentVol(0,copy) == fIdSens) {
//
//We are in the sensitive volume
for(i=0;i<4;i++) {
- pMC->CurrentVolOff(i+1,0,copy);
+ gMC->CurrentVolOff(i+1,0,copy);
vol[4-i]=copy;
}
- pMC->CurrentVolOff(7,0,copy);
+ gMC->CurrentVolOff(7,0,copy);
vol[0]=copy;
- pMC->TrackPosition(hits);
- hits[3]=pMC->Edep();
+ gMC->TrackPosition(hits);
+ hits[3]=gMC->Edep();
new(lhits[fNhits++]) AliPHOShit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
void AliPHOSv1::CreateGeometry()
{
- AliMC* pMC = AliMC::GetMC();
-
AliPHOS *PHOS_tmp = (AliPHOS*)gAlice->GetModule("PHOS");
if( NULL==PHOS_tmp )
{
par[0] = GetCrystalSideSize()/2 + GetWrapThickness();
par[1] = GetCrystalSideSize()/2 + GetWrapThickness();
par[2] = GetCrystalLength() /2 + GetWrapThickness()/2;
- pMC->Gsvolu("WRAP","BOX ",GetPHOS_IDTMED_Tyvek(),par,3);
+ gMC->Gsvolu("WRAP","BOX ",GetPHOS_IDTMED_Tyvek(),par,3);
par[0] = GetCrystalSideSize()/2;
par[1] = GetCrystalSideSize()/2;
par[2] = GetCrystalLength()/2;
- pMC->Gsvolu("CRST","BOX ",GetPHOS_IDTMED_PbWO4(),par,3);
+ gMC->Gsvolu("CRST","BOX ",GetPHOS_IDTMED_PbWO4(),par,3);
// PIN
par[0] = GetPIN_SideSize()/2;
par[1] = GetPIN_SideSize()/2;
par[2] = GetPIN_Length()/2;
- pMC->Gsvolu("PIN ","BOX ",GetPHOS_IDTMED_PIN(),par,3);
+ gMC->Gsvolu("PIN ","BOX ",GetPHOS_IDTMED_PIN(),par,3);
//////////////////////////////////////////////////////////////////////////////
// CRADLE,CPV creation.
par[0] = cell_side_size/2 * GetNz();
par[1] = cell_side_size/2 * GetNphi();
par[2] = cradle_thikness/2;
- pMC->Gsvolu("PHOS","BOX ",GetPHOS_IDTMED_AIR(),par,3);
+ gMC->Gsvolu("PHOS","BOX ",GetPHOS_IDTMED_AIR(),par,3);
//par[0] : the same as above
//par[1] : the same as above
par[2] = GetCPV_Thickness()/2;
- pMC->Gsvolu("CPV ","BOX ",GetPHOS_IDTMED_CPV(),par,3);
+ gMC->Gsvolu("CPV ","BOX ",GetPHOS_IDTMED_CPV(),par,3);
x = 0;
y = 0;
z = (cell_length+GetCPV_PHOS_Distance())/2;
- pMC->Gspos("CPV ",1,"PHOS",x,y,z,0,"ONLY");
+ gMC->Gspos("CPV ",1,"PHOS",x,y,z,0,"ONLY");
par[0] = cell_side_size/2 * GetNz();
par[1] = cell_side_size/2 * GetNphi();
par[2] = cell_length/2;
- pMC->Gsvolu("CRS0","BOX ",GetPHOS_IDTMED_AIR(),par,3);
+ gMC->Gsvolu("CRS0","BOX ",GetPHOS_IDTMED_AIR(),par,3);
x = 0;
y = 0;
z = -(cradle_thikness-cell_length)/2;
- pMC->Gspos("CRS0",1,"PHOS",x,y,z,0,"ONLY");
+ gMC->Gspos("CRS0",1,"PHOS",x,y,z,0,"ONLY");
- pMC->Gsdvn("CRS1","CRS0",GetNphi(),2);
- pMC->Gsdvn("CELL","CRS1",GetNz() ,1);
+ gMC->Gsdvn("CRS1","CRS0",GetNphi(),2);
+ gMC->Gsdvn("CELL","CRS1",GetNz() ,1);
//////////////////////////////////////////////////////////////////////////////
// CELL creation
x = 0;
y = 0;
z = -GetWrapThickness()/2;
- pMC->Gspos("CRST",1,"WRAP",x,y,z,0,"ONLY");
+ gMC->Gspos("CRST",1,"WRAP",x,y,z,0,"ONLY");
x = 0;
y = 0;
z = GetPIN_Length()/2;
- pMC->Gspos("WRAP",1,"CELL",x,y,z,0,"ONLY");
+ gMC->Gspos("WRAP",1,"CELL",x,y,z,0,"ONLY");
x = 0;
y = 0;
z = -GetCrystalLength()/2-GetWrapThickness()/2;
- pMC->Gspos("PIN ",1,"CELL",x,y,z,0,"ONLY");
+ gMC->Gspos("PIN ",1,"CELL",x,y,z,0,"ONLY");
//////////////////////////////////////////////////////////////////////////////
// CELL has been created.
// for( int ix=0; ix<GetNz(); ix++ )
// {
// x = (ix-(GetNz()-1)/2.)*cell_side_size;
-// pMC->Gspos("CELL",++n,"PHOS",x,y,z,0,"ONLY");
+// gMC->Gspos("CELL",++n,"PHOS",x,y,z,0,"ONLY");
// }
// }
y = r*sin(cradle_angle_pos*kPI/180);
z = 0;
AliMatrix(rotation_matrix_number, 0,0 , 90,90+cradle_angle_pos , 90,180+cradle_angle_pos);
- pMC->Gspos("PHOS",i+1,"ALIC",x,y,z,rotation_matrix_number,"ONLY");
+ gMC->Gspos("PHOS",i+1,"ALIC",x,y,z,rotation_matrix_number,"ONLY");
GetCradleAngle(i) = cradle_angle_pos;
//
void AliPHOSv1::StepManager()
{
static Bool_t inwold=0; // Status of previous ctrak->inwvol
- AliMC *MC = AliMC::GetMC();
Int_t copy;
int cradle_number, cell_Z, cell_Phi; // Variables that describe cell position.
- if( MC->GetMedium() == GetPHOS_IDTMED_PIN() && (MC->TrackInside() || MC->TrackExiting()==2) && inwold && MC->TrackCharge()!=0 )
+ if( gMC->GetMedium() == GetPHOS_IDTMED_PIN() && (gMC->TrackInside() || gMC->TrackExiting()==2) && inwold && gMC->TrackCharge()!=0 )
{
// GEANT particle just have entered into PIN diode.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(4,0,copy);
+ gMC->CurrentVolOff(4,0,copy);
cradle_number = copy-1;
- MC->CurrentVolOff(1,0,copy);
+ gMC->CurrentVolOff(1,0,copy);
cell_Z = copy-1;
- MC->CurrentVolOff(2,0,copy);
+ gMC->CurrentVolOff(2,0,copy);
cell_Phi = copy-1;
/*
cradle_number = cvolu->number[cvolu->nlevel-5]-1;
//////////////////////////////////////////////////////////////////////////////
- if( MC->GetMedium() == GetPHOS_IDTMED_PbWO4() )
+ if( gMC->GetMedium() == GetPHOS_IDTMED_PbWO4() )
{
// GEANT particle into crystal.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(5,0,copy);
+ gMC->CurrentVolOff(5,0,copy);
cradle_number = copy-1;
- MC->CurrentVolOff(2,0,copy);
+ gMC->CurrentVolOff(2,0,copy);
cell_Z = copy-1;
- MC->CurrentVolOff(3,0,copy);
+ gMC->CurrentVolOff(3,0,copy);
cell_Phi = copy-1;
/*
cradle_number = cvolu->number[cvolu->nlevel-6]-1;
cell_Phi = cvolu->number[cvolu->nlevel-4]-1;
*/
TH2F &h = PHOS.GetCradle(cradle_number).fCellEnergy;
- h.AddBinContent(h.GetBin(cell_Z,cell_Phi),MC->Edep());
+ h.AddBinContent(h.GetBin(cell_Z,cell_Phi),gMC->Edep());
}
//////////////////////////////////////////////////////////////////////////////
- if( MC->GetMedium()==GetPHOS_IDTMED_CPV() && (MC->TrackInside() || MC->TrackExiting()) && inwold )
+ if( gMC->GetMedium()==GetPHOS_IDTMED_CPV() && (gMC->TrackInside() || gMC->TrackExiting()) && inwold )
{
// GEANT particle just have entered into CPV detector.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(1,0,cradle_number);
+ gMC->CurrentVolOff(1,0,cradle_number);
cradle_number--;
// cradle_number = cvolu->number[cvolu->nlevel-2]-1;
AliPHOSCradle &cradle = PHOS.GetCradle(cradle_number);
Float_t xyz[3];
- MC->TrackPosition(xyz);
+ gMC->TrackPosition(xyz);
TVector3 p(xyz[0],xyz[1],xyz[2]),v;
float x,y,l;
// Store current particle in the list of Cradle particles.
Float_t pmom[4];
- MC->TrackMomentum(pmom);
+ gMC->TrackMomentum(pmom);
float Px = pmom[0] * pmom[3],
Py = pmom[1] * pmom[3],
Pz = pmom[2] * pmom[3];
- Int_t Ipart = MC->TrackPid();
+ Int_t Ipart = gMC->TrackPid();
// TClonesArray &P=cradle.GetParticles();
// new( P[P.GetEntries()] ) AliPHOSgamma(x,0,y,0,ctrak->getot,0,Px,Py,Pz);
- cradle.GetParticles().Add(new AliPHOSgamma(x,y,MC->Etot(),Px,Py,Pz,Ipart));
+ cradle.GetParticles().Add(new AliPHOSgamma(x,y,gMC->Etot(),Px,Py,Pz,Ipart));
- if( MC->TrackCharge()!=0 )
+ if( gMC->TrackCharge()!=0 )
cradle.AddCPVHit(x,y);
}
- inwold=MC->TrackEntering(); // Save current status of GEANT variable.
+ inwold=gMC->TrackEntering(); // Save current status of GEANT variable.
}
// DEFINITION OF AVAILABLE PHOS MATERIALS
- AliMC* pMC=AliMC::GetMC();
-
Int_t ISXFLD=gAlice->Field()->Integ();
Float_t SXMGMX=gAlice->Field()->Max();
ISXFLD, SXMGMX, 10.0, 1.0, 0.1, 0.1, 10.0, 0, 0);
// --- Set decent energy thresholds for gamma and electron tracking
- pMC->Gstpar(idtmed[699],"CUTGAM",0.5E-4);
- pMC->Gstpar(idtmed[699],"CUTELE",1.0E-4);
+ gMC->Gstpar(idtmed[699],"CUTGAM",0.5E-4);
+ gMC->Gstpar(idtmed[699],"CUTELE",1.0E-4);
// --- Generate explicitly delta rays in the titan cover ---
- pMC->Gstpar(idtmed[704],"LOSS",3.);
- pMC->Gstpar(idtmed[704],"DRAY",1.);
+ gMC->Gstpar(idtmed[704],"LOSS",3.);
+ gMC->Gstpar(idtmed[704],"DRAY",1.);
// --- and in aluminium parts ---
- pMC->Gstpar(idtmed[701],"LOSS",3.);
- pMC->Gstpar(idtmed[701],"DRAY",1.);
+ gMC->Gstpar(idtmed[701],"LOSS",3.);
+ gMC->Gstpar(idtmed[701],"DRAY",1.);
}
void AliPHOSv2::CreateGeometry()
{
- AliMC* pMC = AliMC::GetMC();
-
AliPHOSv2 *PHOS_tmp = (AliPHOSv2*)gAlice->GetModule("PHOS");
if(PHOS_tmp==NULL){
DPHOS[0]=FTI_X/2.0;
DPHOS[1]=FTI_Y/2.0;
DPHOS[2]=FTI_Z/2.0;
- pMC->Gsvolu("PHOS", "BOX ", IDTMED[706], DPHOS, 3);
+ gMC->Gsvolu("PHOS", "BOX ", IDTMED[706], DPHOS, 3);
// --- Define Textolit Wall box, position inside PHOS ---
DPTXW[0]=TXW_X/2.0;
DPTXW[1]=TXW_Y/2.0;
DPTXW[2]=TXW_Z/2.0;
- pMC->Gsvolu("PTXW", "BOX ", IDTMED[707], DPTXW, 3);
+ gMC->Gsvolu("PTXW", "BOX ", IDTMED[707], DPTXW, 3);
YO=(FTI_Y-TXW_Y)/2.0-FTIU_THICK;
- pMC->Gspos("PTXW", 1, "PHOS", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PTXW", 1, "PHOS", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Upper Polystyrene Foam Plate, place inside PTXW ---
// --- immediately below Foam Thermo Insulation Upper plate ---
DPUFP[0]=TXW_X/2.0;
DPUFP[1]=UFP_Y/2.0;
DPUFP[2]=TXW_Z/2.0;
- pMC->Gsvolu("PUFP", "BOX ", IDTMED[703], DPUFP, 3);
+ gMC->Gsvolu("PUFP", "BOX ", IDTMED[703], DPUFP, 3);
YO=(TXW_Y-UFP_Y)/2.0;
- pMC->Gspos("PUFP", 1, "PTXW", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PUFP", 1, "PTXW", 0.0, YO, 0.0, 0, "ONLY");
// --- Define air-filled box, place inside PTXW ---
DPAIR[0]=AIR_X/2.0;
DPAIR[1]=AIR_Y/2.0;
DPAIR[2]=AIR_Z/2.0;
- pMC->Gsvolu("PAIR", "BOX ", IDTMED[798], DPAIR, 3);
+ gMC->Gsvolu("PAIR", "BOX ", IDTMED[798], DPAIR, 3);
YO=(TXW_Y-AIR_Y)/2.0-UFP_Y;
- pMC->Gspos("PAIR", 1, "PTXW", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PAIR", 1, "PTXW", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Thermo insulating Crystal Box, position inside PAIR ---
DPTCB[0]=GetNphi()*(XTL_X+2*TOTAL_GAP)/2.0+TCB_THICK;
DPTCB[1]=(XTL_Y+SUP_Y+PAP_THICK+STE_THICK)/2.0+TCB_THICK/2.0;
DPTCB[2]=GetNz()*(XTL_Z+2*TOTAL_GAP)/2.0+TCB_THICK;
- pMC->Gsvolu("PTCB", "BOX ", IDTMED[706], DPTCB, 3);
+ gMC->Gsvolu("PTCB", "BOX ", IDTMED[706], DPTCB, 3);
YO=AIR_Y/2.0-DPTCB[1]-
(CBS_R-FTI_R-TCB_THICK-FTIU_THICK-UFP_Y);
- pMC->Gspos("PTCB", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PTCB", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Crystal BLock filled with air, position it inside PTCB ---
DPCBL[0]=GetNphi()*(XTL_X+2*TOTAL_GAP)/2.0;
DPCBL[1]=(XTL_Y+SUP_Y+PAP_THICK+STE_THICK)/2.0;
DPCBL[2]=GetNz()*(XTL_Z+2*TOTAL_GAP)/2.0;
- pMC->Gsvolu("PCBL", "BOX ", IDTMED[798], DPCBL, 3);
+ gMC->Gsvolu("PCBL", "BOX ", IDTMED[798], DPCBL, 3);
// --- Divide PCBL in X (phi) and Z directions --
- pMC->Gsdvn("PROW", "PCBL", Int_t (GetNphi()), 1);
- pMC->Gsdvn("PCEL", "PROW", Int_t (GetNz()), 3);
+ gMC->Gsdvn("PROW", "PCBL", Int_t (GetNphi()), 1);
+ gMC->Gsdvn("PCEL", "PROW", Int_t (GetNz()), 3);
YO=-TCB_THICK/2.0;
- pMC->Gspos("PCBL", 1, "PTCB", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PCBL", 1, "PTCB", 0.0, YO, 0.0, 0, "ONLY");
// --- Define STeel (actually, it's titanium) Cover volume, place inside PCEL
DPSTC[0]=(XTL_X+2*PAP_THICK)/2.0;
DPSTC[1]=(XTL_Y+SUP_Y+PAP_THICK+STE_THICK)/2.0;
DPSTC[2]=(XTL_Z+2*PAP_THICK+2*STE_THICK)/2.0;
- pMC->Gsvolu("PSTC", "BOX ", IDTMED[704], DPSTC, 3);
- pMC->Gspos("PSTC", 1, "PCEL", 0.0, 0.0, 0.0, 0, "ONLY");
+ gMC->Gsvolu("PSTC", "BOX ", IDTMED[704], DPSTC, 3);
+ gMC->Gspos("PSTC", 1, "PCEL", 0.0, 0.0, 0.0, 0, "ONLY");
// --- Define Tyvek volume, place inside PSTC ---
DPPAP[0]=XTL_X/2.0+PAP_THICK;
DPPAP[1]=(XTL_Y+SUP_Y+PAP_THICK)/2.0;
DPPAP[2]=XTL_Z/2.0+PAP_THICK;
- pMC->Gsvolu("PPAP", "BOX ", IDTMED[702], DPPAP, 3);
+ gMC->Gsvolu("PPAP", "BOX ", IDTMED[702], DPPAP, 3);
YO=(XTL_Y+SUP_Y+PAP_THICK)/2.0-(XTL_Y+SUP_Y+PAP_THICK+STE_THICK)/2.0;
- pMC->Gspos("PPAP", 1, "PSTC", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PPAP", 1, "PSTC", 0.0, YO, 0.0, 0, "ONLY");
// --- Define PbWO4 crystal volume, place inside PPAP ---
DPXTL[0]=XTL_X/2.0;
DPXTL[1]=XTL_Y/2.0;
DPXTL[2]=XTL_Z/2.0;
- pMC->Gsvolu("PXTL", "BOX ", IDTMED[699], DPXTL, 3);
+ gMC->Gsvolu("PXTL", "BOX ", IDTMED[699], DPXTL, 3);
YO=(XTL_Y+SUP_Y+PAP_THICK)/2.0-XTL_Y/2.0-PAP_THICK;
- pMC->Gspos("PXTL", 1, "PPAP", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PXTL", 1, "PPAP", 0.0, YO, 0.0, 0, "ONLY");
// --- Define crystal support volume, place inside PPAP ---
DPSUP[0]=XTL_X/2.0+PAP_THICK;
DPSUP[1]=SUP_Y/2.0;
DPSUP[2]=XTL_Z/2.0+PAP_THICK;
- pMC->Gsvolu("PSUP", "BOX ", IDTMED[798], DPSUP, 3);
+ gMC->Gsvolu("PSUP", "BOX ", IDTMED[798], DPSUP, 3);
YO=SUP_Y/2.0-(XTL_Y+SUP_Y+PAP_THICK)/2.0;
- pMC->Gspos("PSUP", 1, "PPAP", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PSUP", 1, "PPAP", 0.0, YO, 0.0, 0, "ONLY");
// --- Define PIN-diode volume and position it inside crystal support ---
// --- right behind PbWO4 crystal
DPPIN[0]=PIN_X/2.0;
DPPIN[1]=PIN_Y/2.0;
DPPIN[2]=PIN_Z/2.0;
- pMC->Gsvolu("PPIN", "BOX ", IDTMED[705], DPPIN, 3);
+ gMC->Gsvolu("PPIN", "BOX ", IDTMED[705], DPPIN, 3);
YO=SUP_Y/2.0-PIN_Y/2.0;
- pMC->Gspos("PPIN", 1, "PSUP", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PPIN", 1, "PSUP", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Upper Cooling Panel, place it on top of PTCB ---
DPUCP[0]=DPTCB[0];
DPUCP[1]=UCP_Y/2.0;
DPUCP[2]=DPTCB[2];
- pMC->Gsvolu("PUCP", "BOX ", IDTMED[701], DPUCP,3);
+ gMC->Gsvolu("PUCP", "BOX ", IDTMED[701], DPUCP,3);
YO=(AIR_Y-UCP_Y)/2.0-(CBS_R-FTI_R-TCB_THICK-FTIU_THICK-UFP_Y-UCP_Y);
- pMC->Gspos("PUCP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PUCP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Al Support Plate, position it inside PAIR ---
// --- right beneath PTCB ---
DPASP[0]=AIR_X/2.0;
DPASP[1]=ASP_Y/2.0;
DPASP[2]=AIR_Z/2.0;
- pMC->Gsvolu("PASP", "BOX ", IDTMED[701], DPASP, 3);
+ gMC->Gsvolu("PASP", "BOX ", IDTMED[701], DPASP, 3);
YO=(AIR_Y-ASP_Y)/2.0-(CBS_R-FTI_R-FTIU_THICK-UFP_Y+DPCBL[1]*2);
- pMC->Gspos("PASP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PASP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Thermo Insulating Plate, position it inside PAIR ---
// --- right beneath PASP ---
DPTIP[0]=AIR_X/2.0;
DPTIP[1]=TIP_Y/2.0;
DPTIP[2]=AIR_Z/2.0;
- pMC->Gsvolu("PTIP", "BOX ", IDTMED[706], DPTIP, 3);
+ gMC->Gsvolu("PTIP", "BOX ", IDTMED[706], DPTIP, 3);
YO=(AIR_Y-TIP_Y)/2.0-(CBS_R-FTI_R-FTIU_THICK-UFP_Y+DPCBL[1]*2+ASP_Y);
- pMC->Gspos("PTIP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PTIP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
// --- Define Textolit Plate, position it inside PAIR ---
// --- right beneath PTIP ---
DPTXP[0]=AIR_X/2.0;
DPTXP[1]=TXP_Y/2.0;
DPTXP[2]=AIR_Z/2.0;
- pMC->Gsvolu("PTXP", "BOX ", IDTMED[707], DPTXP, 3);
+ gMC->Gsvolu("PTXP", "BOX ", IDTMED[707], DPTXP, 3);
YO=(AIR_Y-TXP_Y)/2.0-
(CBS_R-FTI_R-FTIU_THICK-UFP_Y+DPCBL[1]*2+ASP_Y+TIP_Y);
- pMC->Gspos("PTXP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
+ gMC->Gspos("PTXP", 1, "PAIR", 0.0, YO, 0.0, 0, "ONLY");
// --- Define CPV volume, DON'T PLACE IT YET ---
// --- Divide in X and Z direction (same way as PCBL) ---
DPCPV[0]=DPCBL[0];
DPCPV[1]=CPV_Y/2.0;
DPCPV[2]=DPCBL[2];
- // pMC->Gsvolu("PCPV", "BOX ", IDTMED[700], DPCPV, 3);
- pMC->Gsvolu("PCPV", "BOX ", IDTMED[798], DPCPV, 3);
- pMC->Gsdvn("PCRO", "PCPV", Int_t (GetNphi()), 1);
- pMC->Gsdvn("PCCE", "PCRO", Int_t (GetNz()), 3);
+ // gMC->Gsvolu("PCPV", "BOX ", IDTMED[700], DPCPV, 3);
+ gMC->Gsvolu("PCPV", "BOX ", IDTMED[798], DPCPV, 3);
+ gMC->Gsdvn("PCRO", "PCPV", Int_t (GetNphi()), 1);
+ gMC->Gsdvn("PCCE", "PCRO", Int_t (GetNz()), 3);
// Define CPV sensitive pad. It has the same size as PCCE.
DPCPA[0]=DPCBL[0]/GetNphi();
DPCPA[1]=CPV_Y/2.0;
DPCPA[2]=DPCBL[2]/GetNz();
- pMC->Gsvolu("PCPA", "BOX ", IDTMED[700], DPCPA, 3);
- pMC->Gspos("PCPA", 1, "PCCE", 0.0, 0.0, 0.0, 0, "ONLY");
+ gMC->Gsvolu("PCPA", "BOX ", IDTMED[700], DPCPA, 3);
+ gMC->Gspos("PCPA", 1, "PCCE", 0.0, 0.0, 0.0, 0, "ONLY");
// --- Position various PHOS units in ALICE setup ---
// --- PHOS itself first ---
R=FTI_R+FTI_Y/2.0;
XP1=R*TMath::Sin(angle/RADDEG);
YP1=-R*TMath::Cos(angle/RADDEG);
- pMC->Gspos("PHOS", i, "ALIC", XP1, YP1, 0.0, IDROTM[i-1], "ONLY");
+ gMC->Gspos("PHOS", i, "ALIC", XP1, YP1, 0.0, IDROTM[i-1], "ONLY");
// --- Now position PCPV so that its plates are right on top of ---
// --- corresponding PHOS modules (previously called cradles) ---
R=FTI_R-CPV_Y/2.0;
XP1=R*TMath::Sin(angle/RADDEG);
YP1=-R*TMath::Cos(angle/RADDEG);
- pMC->Gspos("PCPV", i, "ALIC", XP1, YP1, 0.0, IDROTM[i-1], "ONLY");
+ gMC->Gspos("PCPV", i, "ALIC", XP1, YP1, 0.0, IDROTM[i-1], "ONLY");
GetModuleAngle(i-1)=angle-90.0;
}
// --- Set volumes seen without their descendants for drawing ---
- pMC->Gsatt("PCEL", "SEEN", -2);
- pMC->Gsatt("PCCE", "SEEN", -2);
+ gMC->Gsatt("PCEL", "SEEN", -2);
+ gMC->Gsatt("PCCE", "SEEN", -2);
}
void AliPHOSv2::StepManager(void)
{
- AliMC *pMC=AliMC::GetMC();
Int_t blrc[4]; // (box, layer, row, column) indices
Float_t xyze[4]; // position wrt MRS and energy deposited
Int_t *IDTMED=fIdtmed->GetArray()-699;
- if(pMC->GetMedium()==IDTMED[700]){ // We are inside a CPV sensitive pad
+ if(gMC->GetMedium()==IDTMED[700]){ // We are inside a CPV sensitive pad
- pMC->TrackPosition(xyze);
- xyze[3]=pMC->Edep();
+ gMC->TrackPosition(xyze);
+ xyze[3]=gMC->Edep();
- pMC->CurrentVolOff(3, (Text_t*)NULL, blrc[0]);
+ gMC->CurrentVolOff(3, (Text_t*)NULL, blrc[0]);
blrc[1]=1; // CPV corresponds to layer 1
- pMC->CurrentVolOff(2, (Text_t*)NULL, blrc[2]);
- pMC->CurrentVolOff(1, (Text_t*)NULL, blrc[3]);
+ gMC->CurrentVolOff(2, (Text_t*)NULL, blrc[2]);
+ gMC->CurrentVolOff(1, (Text_t*)NULL, blrc[3]);
AddHit(gAlice->CurrentTrack(), blrc, xyze);
}
- if(pMC->GetMedium()==IDTMED[699]){ // We are inside a PWO crystal
+ if(gMC->GetMedium()==IDTMED[699]){ // We are inside a PWO crystal
- pMC->TrackPosition(xyze);
- xyze[3]=pMC->Edep();
+ gMC->TrackPosition(xyze);
+ xyze[3]=gMC->Edep();
- pMC->CurrentVolOff(9, (Text_t*)NULL, blrc[0]);
+ gMC->CurrentVolOff(9, (Text_t*)NULL, blrc[0]);
blrc[1]=2; // PWO crystals correspond to layer 2
- pMC->CurrentVolOff(4, (Text_t*)NULL, blrc[2]);
- pMC->CurrentVolOff(3, (Text_t*)NULL, blrc[3]);
+ gMC->CurrentVolOff(4, (Text_t*)NULL, blrc[2]);
+ gMC->CurrentVolOff(3, (Text_t*)NULL, blrc[3]);
AddHit(gAlice->CurrentTrack(), blrc, xyze);
// --- galice header files ---
#include "AliPHOSv3.h"
#include "AliRun.h"
-#include "TGeant3.h"
+#include "AliMC.h"
ClassImp(AliPHOSv3)
cout << "AliPHOSv3::CreateGeometry() PHOS creation\n";
- AliMC* pMC = AliMC::GetMC();
-
AliPHOS *PHOS_tmp = (AliPHOS*)gAlice->GetModule("PHOS");
if( NULL==PHOS_tmp )
{
par[0] = GetCrystalSideSize()/2 + GetWrapThickness();
par[1] = GetCrystalSideSize()/2 + GetWrapThickness();
par[2] = GetCrystalLength() /2 + GetWrapThickness()/2;
- pMC->Gsvolu("WRAP","BOX ",GetPHOS_IDTMED_Tyvek(),par,3);
+ gMC->Gsvolu("WRAP","BOX ",GetPHOS_IDTMED_Tyvek(),par,3);
par[0] = GetCrystalSideSize()/2;
par[1] = GetCrystalSideSize()/2;
par[2] = GetCrystalLength()/2;
- pMC->Gsvolu("CRST","BOX ",GetPHOS_IDTMED_PbWO4(),par,3);
+ gMC->Gsvolu("CRST","BOX ",GetPHOS_IDTMED_PbWO4(),par,3);
// PIN
par[0] = GetPIN_SideSize()/2;
par[1] = GetPIN_SideSize()/2;
par[2] = GetPIN_Length()/2;
- pMC->Gsvolu("PIN ","BOX ",GetPHOS_IDTMED_PIN(),par,3);
+ gMC->Gsvolu("PIN ","BOX ",GetPHOS_IDTMED_PIN(),par,3);
//////////////////////////////////////////////////////////////////////////////
// CRADLE,CPV creation.
par[0] = cell_side_size/2 * GetNz();
par[1] = cell_side_size/2 * GetNphi();
par[2] = cradle_thikness/2;
- pMC->Gsvolu("PHOS","BOX ",GetPHOS_IDTMED_AIR(),par,3);
+ gMC->Gsvolu("PHOS","BOX ",GetPHOS_IDTMED_AIR(),par,3);
//par[0] : the same as above
//par[1] : the same as above
par[2] = GetCPV_Thickness()/2;
- pMC->Gsvolu("CPV ","BOX ",GetPHOS_IDTMED_CPV(),par,3);
+ gMC->Gsvolu("CPV ","BOX ",GetPHOS_IDTMED_CPV(),par,3);
x = 0;
y = 0;
z = (cell_length+GetCPV_PHOS_Distance())/2;
- pMC->Gspos("CPV ",1,"PHOS",x,y,z,0,"ONLY");
+ gMC->Gspos("CPV ",1,"PHOS",x,y,z,0,"ONLY");
par[0] = cell_side_size/2 * GetNz();
par[1] = cell_side_size/2 * GetNphi();
par[2] = cell_length/2;
- pMC->Gsvolu("CRS0","BOX ",GetPHOS_IDTMED_AIR(),par,3);
+ gMC->Gsvolu("CRS0","BOX ",GetPHOS_IDTMED_AIR(),par,3);
x = 0;
y = 0;
z = -(cradle_thikness-cell_length)/2;
- pMC->Gspos("CRS0",1,"PHOS",x,y,z,0,"ONLY");
+ gMC->Gspos("CRS0",1,"PHOS",x,y,z,0,"ONLY");
- pMC->Gsdvn("CRS1","CRS0",GetNphi(),2);
- pMC->Gsdvn("CELL","CRS1",GetNz() ,1);
+ gMC->Gsdvn("CRS1","CRS0",GetNphi(),2);
+ gMC->Gsdvn("CELL","CRS1",GetNz() ,1);
//////////////////////////////////////////////////////////////////////////////
// CELL creation
x = 0;
y = 0;
z = -GetWrapThickness()/2;
- pMC->Gspos("CRST",1,"WRAP",x,y,z,0,"ONLY");
+ gMC->Gspos("CRST",1,"WRAP",x,y,z,0,"ONLY");
x = 0;
y = 0;
z = GetPIN_Length()/2;
- pMC->Gspos("WRAP",1,"CELL",x,y,z,0,"ONLY");
+ gMC->Gspos("WRAP",1,"CELL",x,y,z,0,"ONLY");
x = 0;
y = 0;
z = -GetCrystalLength()/2-GetWrapThickness()/2;
- pMC->Gspos("PIN ",1,"CELL",x,y,z,0,"ONLY");
+ gMC->Gspos("PIN ",1,"CELL",x,y,z,0,"ONLY");
//////////////////////////////////////////////////////////////////////////////
// CELL has been created.
// for( int ix=0; ix<GetNz(); ix++ )
// {
// x = (ix-(GetNz()-1)/2.)*cell_side_size;
-// pMC->Gspos("CELL",++n,"PHOS",x,y,z,0,"ONLY");
+// gMC->Gspos("CELL",++n,"PHOS",x,y,z,0,"ONLY");
// }
// }
y = r*sin(cradle_angle_pos*kPI/180);
z = 0;
AliMatrix(rotation_matrix_number, 0,0 , 90,90+cradle_angle_pos , 90,180+cradle_angle_pos);
- pMC->Gspos("PHOS",i+1,"ALIC",x,y,z,rotation_matrix_number,"ONLY");
+ gMC->Gspos("PHOS",i+1,"ALIC",x,y,z,rotation_matrix_number,"ONLY");
GetCradleAngle(i) = cradle_angle_pos;
//
void AliPHOSv3::StepManager()
{
static Bool_t inwold=0; // Status of previous ctrak->inwvol
- AliMC *MC = AliMC::GetMC();
Int_t copy;
-// if( MC->TrackEntering() ) {
-// Int_t Volume_ID = MC->CurrentVol(Volume_name, copy);
+// if( gMC->TrackEntering() ) {
+// Int_t Volume_ID = gMC->CurrentVol(Volume_name, copy);
// cout << "AliPHOSv3::StepManager() entered to PHOS to the volume " << Volume_name << "!\n";
// }
int cradle_number, cell_Z, cell_Phi; // Variables that describe cell position.
- if( MC->GetMedium()==GetPHOS_IDTMED_PIN() && MC->TrackEntering() && MC->TrackCharge()!=0 )
+ if( gMC->GetMedium()==GetPHOS_IDTMED_PIN() && gMC->TrackEntering() && gMC->TrackCharge()!=0 )
{
// GEANT particle just have entered into PIN diode.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(4,0,copy);
+ gMC->CurrentVolOff(4,0,copy);
cradle_number = copy-1;
- MC->CurrentVolOff(1,0,copy);
+ gMC->CurrentVolOff(1,0,copy);
cell_Z = copy-1;
- MC->CurrentVolOff(2,0,copy);
+ gMC->CurrentVolOff(2,0,copy);
cell_Phi = copy-1;
TH2S &h = PHOS.GetCradle(cradle_number).fChargedTracksInPIN;
//////////////////////////////////////////////////////////////////////////////
- if( MC->GetMedium() == GetPHOS_IDTMED_PbWO4() )
+ if( gMC->GetMedium() == GetPHOS_IDTMED_PbWO4() )
{
// GEANT particle into crystal.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(5,0,copy);
+ gMC->CurrentVolOff(5,0,copy);
cradle_number = copy-1;
- MC->CurrentVolOff(2,0,copy);
+ gMC->CurrentVolOff(2,0,copy);
cell_Z = copy-1;
- MC->CurrentVolOff(3,0,copy);
+ gMC->CurrentVolOff(3,0,copy);
cell_Phi = copy-1;
TH2F &h = PHOS.GetCradle(cradle_number).fCellEnergy;
- h.AddBinContent(h.GetBin(cell_Z,cell_Phi),MC->Edep());
+ h.AddBinContent(h.GetBin(cell_Z,cell_Phi),gMC->Edep());
}
//////////////////////////////////////////////////////////////////////////////
- if( MC->GetMedium()==GetPHOS_IDTMED_CPV() && MC->TrackEntering() )
+ if( gMC->GetMedium()==GetPHOS_IDTMED_CPV() && gMC->TrackEntering() )
{
// GEANT particle just have entered into CPV detector.
AliPHOS &PHOS = *(AliPHOS*)gAlice->GetModule("PHOS");
- MC->CurrentVolOff(1,0,cradle_number);
+ gMC->CurrentVolOff(1,0,cradle_number);
cradle_number--;
// Save CPV x,y hits position of charged particles.
AliPHOSCradle &cradle = PHOS.GetCradle(cradle_number);
Float_t xyz[3];
- MC->TrackPosition(xyz);
+ gMC->TrackPosition(xyz);
TVector3 p(xyz[0],xyz[1],xyz[2]),v;
float x,y,l;
// Store current particle in the list of Cradle particles.
Float_t pmom[4];
- MC->TrackMomentum(pmom);
+ gMC->TrackMomentum(pmom);
Float_t Px = pmom[0] * pmom[3],
Py = pmom[1] * pmom[3],
Pz = pmom[2] * pmom[3];
- Float_t Getot = MC->Etot();
- Int_t Ipart = MC->TrackPid();
+ Float_t Getot = gMC->Etot();
+ Int_t Ipart = gMC->TrackPid();
cradle.GetParticles().Add(new AliPHOSgamma(x,y,Getot,Px,Py,Pz,Ipart));
}
- inwold=MC->TrackEntering(); // Save current status of GEANT variable.
+ inwold=gMC->TrackEntering(); // Save current status of GEANT variable.
}
// *** Define the DPMD Volume and fill with air ***
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsvolu("DPMD", "BOX ", idtmed[698], sipmd, 3);
+ gMC->Gsvolu("DPMD", "BOX ", idtmed[698], sipmd, 3);
// *** Define DIQU Volume and fill with air
siqad[0] = sipmd[0] / 2. - 1.;
siqad[1] = sipmd[1] / 2. - 1.;
siqad[2] = sipmd[2];
- pMC->Gsvolu("DIQU","BOX ", idtmed[698], siqad, 3);
- pMC->Gsatt("DIQU", "SEEN", 1);
+ gMC->Gsvolu("DIQU","BOX ", idtmed[698], siqad, 3);
+ gMC->Gsatt("DIQU", "SEEN", 1);
// --- Place the modules in INSIDE PMD (DPMD)
yd = ybox[j][i] - siqad[1];
if (pindex[j][i] == 1) {
++inum2;
- pMC->Gsposp("DM11", inum2, "DIQU", xd, yd, zd, 0, "ONLY", smod2, 3);
+ gMC->Gsposp("DM11", inum2, "DIQU", xd, yd, zd, 0, "ONLY", smod2, 3);
}
if (pindex[j][i] == 2) {
++inum3;
- pMC->Gsposp("DM12", inum3, "DIQU", xd, yd, zd, 0, "ONLY", smod3, 3);
+ gMC->Gsposp("DM12", inum3, "DIQU", xd, yd, zd, 0, "ONLY", smod3, 3);
}
if (pindex[j][i] == 3) {
++inum4;
- pMC->Gsposp("DM13", inum4, "DIQU", xd, yd, zd, 0, "ONLY", smod4, 3);
+ gMC->Gsposp("DM13", inum4, "DIQU", xd, yd, zd, 0, "ONLY", smod4, 3);
}
}
}
yiqa[3] = yiqa[2];
i2 = numqu;
for (k = 1; k <= i2; ++k) {
- pMC->Gsposp("DIQU", k, "DPMD", xiqa[k-1], yiqa[k-1], zd, idrotm[k], "ONLY", siqad, 3);
+ gMC->Gsposp("DIQU", k, "DPMD", xiqa[k-1], yiqa[k-1], zd, idrotm[k], "ONLY", siqad, 3);
}
// --- Place the DPMD in ALICE with front edge 6.0m from vertex ---
xp = 0.;
yp = 0.;
zp = zdist1;
- pMC->Gspos("DPMD", 1, "ALIC", xp, yp, zp, 0, "ONLY");
+ gMC->Gspos("DPMD", 1, "ALIC", xp, yp, zp, 0, "ONLY");
}
// -- Author : Y.P. VIYOGI, 04/06/1997.
// -- Modified: P.V.K.S.Baba(JU), 13-12-97.
- AliMC* pMC = AliMC::GetMC();
-
Int_t npad2;
Float_t /* scpv1[3], */ scpv2[3] /*, scpv3[3], scpv4[3] */;
Float_t spsw1[3], spsw2[3];//, spsw3[3], spsw4[3];
scpv2[1] = spsw2[1];
scpv2[2] = spsw2[2];
// The modules (DW11 and DV11 are filed with gas, G10 plate is ignored)
- pMC->Gsvolu("DW11","BOX ", idtmed[604], spsw2, 3);
- pMC->Gsatt("DW11", "SEEN", 1);
- pMC->Gsvolu("DV11","BOX ", idtmed[604], spsw2, 3);
- pMC->Gsatt("DV11", "SEEN", 1);
+ gMC->Gsvolu("DW11","BOX ", idtmed[604], spsw2, 3);
+ gMC->Gsatt("DW11", "SEEN", 1);
+ gMC->Gsvolu("DV11","BOX ", idtmed[604], spsw2, 3);
+ gMC->Gsatt("DV11", "SEEN", 1);
// --- DEFINE MODULES, IRON, TUNGSTEN AND LEAD VOLUMES
spb[0] = spsw1[0];
spb[1] = spsw1[1];
spb[2] = .75;
- pMC->Gsvolu("DPPB","BOX ", idtmed[600], spb, 3);
- pMC->Gsatt("DPPB", "SEEN", 1);
+ gMC->Gsvolu("DPPB","BOX ", idtmed[600], spb, 3);
+ gMC->Gsatt("DPPB", "SEEN", 1);
sw[0] = spsw1[0];
sw[1] = spsw1[1];
sw[2] = 0.9/2.;
- pMC->Gsvolu("DPW ","BOX ", idtmed[600], sw, 3);
- pMC->Gsatt("DPW ", "SEEN", 1);
+ gMC->Gsvolu("DPW ","BOX ", idtmed[600], sw, 3);
+ gMC->Gsatt("DPW ", "SEEN", 1);
sfe[0] = spsw1[0];
sfe[1] = spsw1[1];
sfe[2] = 0.6/2.;
- pMC->Gsvolu("DPFE","BOX ", idtmed[605], sfe, 3);
- pMC->Gsatt("DPFE", "SEEN", 1);
+ gMC->Gsvolu("DPFE","BOX ", idtmed[605], sfe, 3);
+ gMC->Gsatt("DPFE", "SEEN", 1);
smod2[0] = spsw2[0];
smod2[1] = smod2[0];
smod2[2] = spsw2[2] + sfe[2] + spb[2] + scpv2[2];
- pMC->Gsvolu("DM11", "BOX ", idtmed[698], smod2, 3);
+ gMC->Gsvolu("DM11", "BOX ", idtmed[698], smod2, 3);
// --- place gas box (as CPV), iron support, lead converter and gas box
// --- (preshower) in the module
yc = 0.;
// --- First the CPV box
zc = -(spsw2[2] + sfe[2] + spb[2] + spsw2[2]) + spsw2[2];
- pMC->Gspos("DV11", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DV11", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Then iron support plate
zc = zc + sfe[2] + spsw2[2];
- pMC->Gspos("DPFE", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPFE", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Then lead converter plate
zc = zc + sfe[2] + spb[2];
- pMC->Gspos("DPPB", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPPB", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Lastly the preshower box
zc = zc + spb[2] + spsw2[2];
- pMC->Gspos("DW11", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DW11", 1, "DM11", xc, yc, zc, 0, "ONLY");
}
// Draw a shaded view of the Photon Multiplicity Detector
//
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsatt("*", "seen", -1);
- pMC->Gsatt("alic", "seen", 0);
+ gMC->Gsatt("*", "seen", -1);
+ gMC->Gsatt("alic", "seen", 0);
//
// Set the visibility of the components
//
- pMC->Gsatt("DW11","seen",0);
- pMC->Gsatt("DV11","seen",0);
- pMC->Gsatt("DPPB","seen",1);
- pMC->Gsatt("DPW ","seen",1);
- pMC->Gsatt("DPFE","seen",1);
- pMC->Gsatt("DM11","seen",1);
- pMC->Gsatt("DPMD","seen",0);
- pMC->Gsatt("DIQU","seen",0);
+ gMC->Gsatt("DW11","seen",0);
+ gMC->Gsatt("DV11","seen",0);
+ gMC->Gsatt("DPPB","seen",1);
+ gMC->Gsatt("DPW ","seen",1);
+ gMC->Gsatt("DPFE","seen",1);
+ gMC->Gsatt("DM11","seen",1);
+ gMC->Gsatt("DPMD","seen",0);
+ gMC->Gsatt("DIQU","seen",0);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 22, 15.5, .04, .04);
- pMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
- pMC->Gdman(17, 5, "MAN");
- pMC->Gdopt("hide", "off");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 22, 15.5, .04, .04);
+ gMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
+ gMC->Gdman(17, 5, "MAN");
+ gMC->Gdopt("hide", "off");
}
//_____________________________________________________________________________
// ORIGIN : Y. P. VIYOGI
//
- AliMC* pMC = AliMC::GetMC();
-
// --- The Argon- CO2 mixture ---
Float_t ag[2] = { 39.95 };
Float_t zg[2] = { 18. };
// define gas-mixtures
char namate[21];
- pMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
ag[1] = a;
zg[1] = z;
dg = (dar * 4 + dco) / 5;
AliMedium(16, "C $", 16, 0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
// --- Generate explicitly delta rays in the iron, aluminium and lead ---
- pMC->Gstpar(idtmed[600], "LOSS", 3.);
- pMC->Gstpar(idtmed[600], "DRAY", 1.);
+ gMC->Gstpar(idtmed[600], "LOSS", 3.);
+ gMC->Gstpar(idtmed[600], "DRAY", 1.);
- pMC->Gstpar(idtmed[603], "LOSS", 3.);
- pMC->Gstpar(idtmed[603], "DRAY", 1.);
+ gMC->Gstpar(idtmed[603], "LOSS", 3.);
+ gMC->Gstpar(idtmed[603], "DRAY", 1.);
- pMC->Gstpar(idtmed[604], "LOSS", 3.);
- pMC->Gstpar(idtmed[604], "DRAY", 1.);
+ gMC->Gstpar(idtmed[604], "LOSS", 3.);
+ gMC->Gstpar(idtmed[604], "DRAY", 1.);
- pMC->Gstpar(idtmed[605], "LOSS", 3.);
- pMC->Gstpar(idtmed[605], "DRAY", 1.);
+ gMC->Gstpar(idtmed[605], "LOSS", 3.);
+ gMC->Gstpar(idtmed[605], "DRAY", 1.);
- pMC->Gstpar(idtmed[606], "LOSS", 3.);
- pMC->Gstpar(idtmed[606], "DRAY", 1.);
+ gMC->Gstpar(idtmed[606], "LOSS", 3.);
+ gMC->Gstpar(idtmed[606], "DRAY", 1.);
- pMC->Gstpar(idtmed[607], "LOSS", 3.);
- pMC->Gstpar(idtmed[607], "DRAY", 1.);
+ gMC->Gstpar(idtmed[607], "LOSS", 3.);
+ gMC->Gstpar(idtmed[607], "DRAY", 1.);
// --- Energy cut-offs in the Pb and Al to gain time in tracking ---
// --- without affecting the hit patterns ---
- pMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
// --- Prevent particles stopping in the gas due to energy cut-off ---
- pMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
}
//_____________________________________________________________________________
Int_t vol[5];
Text_t namep[5];
- AliMC* pMC=AliMC::GetMC();
- if(pMC->GetMedium() == fMedSens && (destep = pMC->Edep())) {
+ if(gMC->GetMedium() == fMedSens && (destep = gMC->Edep())) {
- pMC->CurrentVol(namep, copy);
+ gMC->CurrentVol(namep, copy);
vol[0]=copy;
- pMC->CurrentVolOff(1,namep,copy);
+ gMC->CurrentVolOff(1,namep,copy);
vol[1]=copy;
- pMC->CurrentVolOff(2,namep,copy);
+ gMC->CurrentVolOff(2,namep,copy);
vol[2]=copy;
if(strncmp(namep,"DW11",4))vol[2]=1;
if(strncmp(namep,"DV11",4))vol[2]=2;
- pMC->CurrentVolOff(3,namep,copy);
+ gMC->CurrentVolOff(3,namep,copy);
vol[3]=copy;
- pMC->CurrentVolOff(4,namep,copy);
+ gMC->CurrentVolOff(4,namep,copy);
vol[4]=copy;
- pMC->Gdtom(center,hits,1);
+ gMC->Gdtom(center,hits,1);
hits[3] = destep*1e9; //Number in eV
AddHit(gAlice->CurrentTrack(), vol, hits);
}
// *** Define the DPMD Volume and fill with air ***
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsvolu("DPMD", "TUBE", idtmed[698], sipmd, 3);
- pMC->Gsvolu("PM01", "TUBE", idtmed[698], sip01, 3);
- pMC->Gsvolu("PM02", "TUBE", idtmed[698], sip02, 3);
- pMC->Gsvolu("PM03", "TUBE", idtmed[698], sip03, 3);
- pMC->Gsvolu("PM04", "TUBE", idtmed[698], sip04, 3);
- pMC->Gsvolu("PM05", "TUBE", idtmed[698], sip05, 3);
- pMC->Gsvolu("PM06", "TUBE", idtmed[698], sip06, 3);
- pMC->Gsvolu("PM07", "TUBE", idtmed[698], sip07, 3);
- pMC->Gsvolu("PM08", "TUBE", idtmed[698], sip08, 3);
- pMC->Gsvolu("PM09", "TUBE", idtmed[698], sip09, 3);
- pMC->Gsvolu("PM10", "TUBE", idtmed[698], sip10, 3);
- pMC->Gsvolu("PM11", "TUBE", idtmed[698], sip11, 3);
- pMC->Gsvolu("PM12", "TUBE", idtmed[698], sip12, 3);
- pMC->Gsvolu("PM13", "TUBE", idtmed[698], sip13, 3);
- pMC->Gsvolu("PM14", "TUBE", idtmed[698], sip14, 3);
- pMC->Gsvolu("PMDL", "TUBS", idtmed[698], sipmdl, 5);
- pMC->Gsvolu("PMDR", "TUBS", idtmed[698], sipmdr, 5);
+ gMC->Gsvolu("DPMD", "TUBE", idtmed[698], sipmd, 3);
+ gMC->Gsvolu("PM01", "TUBE", idtmed[698], sip01, 3);
+ gMC->Gsvolu("PM02", "TUBE", idtmed[698], sip02, 3);
+ gMC->Gsvolu("PM03", "TUBE", idtmed[698], sip03, 3);
+ gMC->Gsvolu("PM04", "TUBE", idtmed[698], sip04, 3);
+ gMC->Gsvolu("PM05", "TUBE", idtmed[698], sip05, 3);
+ gMC->Gsvolu("PM06", "TUBE", idtmed[698], sip06, 3);
+ gMC->Gsvolu("PM07", "TUBE", idtmed[698], sip07, 3);
+ gMC->Gsvolu("PM08", "TUBE", idtmed[698], sip08, 3);
+ gMC->Gsvolu("PM09", "TUBE", idtmed[698], sip09, 3);
+ gMC->Gsvolu("PM10", "TUBE", idtmed[698], sip10, 3);
+ gMC->Gsvolu("PM11", "TUBE", idtmed[698], sip11, 3);
+ gMC->Gsvolu("PM12", "TUBE", idtmed[698], sip12, 3);
+ gMC->Gsvolu("PM13", "TUBE", idtmed[698], sip13, 3);
+ gMC->Gsvolu("PM14", "TUBE", idtmed[698], sip14, 3);
+ gMC->Gsvolu("PMDL", "TUBS", idtmed[698], sipmdl, 5);
+ gMC->Gsvolu("PMDR", "TUBS", idtmed[698], sipmdr, 5);
//
const Int_t npad2=72;
Float_t hexd1[10] = {0.,360.,6,2,-0.4,0.,0.53,0.4,0.,0.53};
//
for (i = 0; i < 2; ++i) {
num_mod=i+1;
- pMC->Gsposp("DM11", num_mod, "DPMD", xpos[i],ypos[i],0., jhrotac, "ONLY", dpara_dm11, 6);
- pMC->Gsposp("DM11", num_mod+13, "DPMD", TMath::Abs(xpos[i]),ypos[i],0., jhrotc, "ONLY", dpara_dm11, 6);
+ gMC->Gsposp("DM11", num_mod, "DPMD", xpos[i],ypos[i],0., jhrotac, "ONLY", dpara_dm11, 6);
+ gMC->Gsposp("DM11", num_mod+13, "DPMD", TMath::Abs(xpos[i]),ypos[i],0., jhrotc, "ONLY", dpara_dm11, 6);
printf("Num_mod %d\n",num_mod);
}
maxbox=13;
for (i = 2; i < maxbox; ++i) {
num_mod=i+1;
- pMC->Gsposp("DM11", num_mod, "DPMD", xpos[i],ypos[i],0., jhrotc, "ONLY", dpara_dm11, 6);
- pMC->Gsposp("DM11", num_mod+13, "DPMD", TMath::Abs(xpos[i]),ypos[i],0., jhrotac, "ONLY", dpara_dm11, 6);
+ gMC->Gsposp("DM11", num_mod, "DPMD", xpos[i],ypos[i],0., jhrotc, "ONLY", dpara_dm11, 6);
+ gMC->Gsposp("DM11", num_mod+13, "DPMD", TMath::Abs(xpos[i]),ypos[i],0., jhrotac, "ONLY", dpara_dm11, 6);
printf("Num_mod %d\n",num_mod);
}
-// pMC->Gspos("PM01", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM02", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM03", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM04", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM05", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM06", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM07", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM08", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM09", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM10", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM11", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM12", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM13", 1, "DPMD", 0.,0.,0., 0, "ONLY");
-// pMC->Gspos("PM14", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM01", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM02", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM03", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM04", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM05", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM06", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM07", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM08", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM09", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM10", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM11", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM12", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM13", 1, "DPMD", 0.,0.,0., 0, "ONLY");
+// gMC->Gspos("PM14", 1, "DPMD", 0.,0.,0., 0, "ONLY");
// --- Place the DPMD in ALICE with front edge 5.8m from vertex ---
xp = 0.;
yp = 0.;
zp = zdist1;
-// pMC->Gspos("PMDL", 1, "DPMD", xp,yp,0., 0, "ONLY");
-// pMC->Gspos("PMDR", 1, "DPMD", xp,yp,0., 0, "ONLY");
- pMC->Gspos("DPMD", 1, "ALIC", xp,yp,zp, 0, "ONLY");
+// gMC->Gspos("PMDL", 1, "DPMD", xp,yp,0., 0, "ONLY");
+// gMC->Gspos("PMDR", 1, "DPMD", xp,yp,0., 0, "ONLY");
+ gMC->Gspos("DPMD", 1, "ALIC", xp,yp,zp, 0, "ONLY");
}
// SUPR --> supermodule without rotation (this acts as CPV).
//
- AliMC* pMC = AliMC::GetMC();
-
const Int_t npad2 = 72;
Float_t hexd1[10] = {0.,360.,6,2,-0.4,0.,0.53,0.4,0.,0.53};
//total wall thickness=0.2*2
// **** PAD SIZE 10 MM SQUARE EQUIVALENT
//
// Inner hex filled with gas
- pMC->Gsvolu("DP11", "PGON", idtmed[604], hexd2,10);
- pMC->Gsatt("DP11", "SEEN", 1);
+ gMC->Gsvolu("DP11", "PGON", idtmed[604], hexd2,10);
+ gMC->Gsatt("DP11", "SEEN", 1);
// Outer hex filled with Plastic
-//plastic pMC->Gsvolu("DS11", "PGON", idtmed[616], hexd1,10);
+//plastic gMC->Gsvolu("DS11", "PGON", idtmed[616], hexd1,10);
// Iron
- pMC->Gsvolu("DS11", "PGON", idtmed[601], hexd1,10);
- pMC->Gsatt("DS11", "SEEN", 1);
+ gMC->Gsvolu("DS11", "PGON", idtmed[601], hexd1,10);
+ gMC->Gsatt("DS11", "SEEN", 1);
// --- place inner hex inside outer hex
- pMC->Gsposp("DP11", 1, "DS11", 0., 0., 0., 0, "ONLY", hexd2, 10);
+ gMC->Gsposp("DP11", 1, "DS11", 0., 0., 0., 0, "ONLY", hexd2, 10);
// Rhombus shaped supermodules (defined by PARA)
// volume for SUPERMODULE
Float_t dpara_sm[6] = {12.5,12.5,0.8,30.,0.,0.};
dpara_sm[0]=(npad2+0.25)*hexd1[6] + 1.2;
dpara_sm[1] = dpara_sm[0] *root3_cons;
//
- pMC->Gsvolu("SUPR","PARA", idtmed[607], dpara_sm, 6);
- pMC->Gsatt("SUPR", "SEEN", 1);
+ gMC->Gsvolu("SUPR","PARA", idtmed[607], dpara_sm, 6);
+ gMC->Gsatt("SUPR", "SEEN", 1);
// SS
Float_t dpara_ss[6] = {12.5,12.5,8.,30.,0.,0.};
dpara_ss[0]= dpara[0];
dpara_ss[1]= dpara[1];
dpara_ss[2]= 0.3/2.;
//
- pMC->Gsvolu("SMSS","PARA", idtmed[601], dpara_ss, 6);
- pMC->Gsatt("SMSS", "SEEN", 1);
+ gMC->Gsvolu("SMSS","PARA", idtmed[601], dpara_ss, 6);
+ gMC->Gsatt("SMSS", "SEEN", 1);
// Air
Float_t dpara_air[6] = {12.5,12.5,8.,30.,0.,0.};
dpara_air[0]= dpara[0] - 0.5;
dpara_air[1]= dpara_air[0] * root3_cons;
dpara_air[2]= 0.1/2.;
-// pMC->Gsvolu("SMAR","PARA", idtmed[604], dpara_air, 6);
- pMC->Gsvolu("SMAR","PARA", idtmed[698], dpara_air, 6);
- pMC->Gsatt("SMAR", "SEEN", 1);
+// gMC->Gsvolu("SMAR","PARA", idtmed[604], dpara_air, 6);
+ gMC->Gsvolu("SMAR","PARA", idtmed[698], dpara_air, 6);
+ gMC->Gsatt("SMAR", "SEEN", 1);
//
// volume for gas chamber (DW11)
//
-// pMC->Gsvolu("DW11","PARA", idtmed[604], dpara, 6);
- pMC->Gsvolu("DW11","PARA", idtmed[698], dpara, 6);
- pMC->Gsatt("DW11", "SEEN", 1);
+// gMC->Gsvolu("DW11","PARA", idtmed[604], dpara, 6);
+ gMC->Gsvolu("DW11","PARA", idtmed[698], dpara, 6);
+ gMC->Gsatt("DW11", "SEEN", 1);
// Place outer hex inside DW11
yb = -dpara[1] + (1./root3_cons)*hexd1[6];
zb = 0.;
}
for (i = 1; i <= npad2; ++i) {
number = i+(j-1)*npad2;
- pMC->Gsposp("DS11", number, "DW11", xb, yb, zb, ihrotm, "ONLY", hexd1, 10);
+ gMC->Gsposp("DS11", number, "DW11", xb, yb, zb, ihrotm, "ONLY", hexd1, 10);
xb += (hexd1[6]*2.);
}
xrow = xrow+1;
Float_t z_ss,z_air1,z_air2,z_gas;
// Place other components inside super module
z_ss=-dpara_sm[2]+dpara_ss[2];
- pMC->Gspos("SMSS", 1, "SUPR", 0., 0., z_ss, 0, "ONLY");
+ gMC->Gspos("SMSS", 1, "SUPR", 0., 0., z_ss, 0, "ONLY");
z_air1=z_ss+dpara_ss[2] +dpara_air[2];
- pMC->Gspos("SMAR", 1, "SUPR", 0., 0., z_air1, 0, "ONLY");
+ gMC->Gspos("SMAR", 1, "SUPR", 0., 0., z_air1, 0, "ONLY");
z_gas=z_air1+dpara_air[2]+dpara[2]+0.1;
- pMC->Gspos("DW11", 1, "SUPR", 0., 0., z_gas, 0, "ONLY");
+ gMC->Gspos("DW11", 1, "SUPR", 0., 0., z_gas, 0, "ONLY");
z_air2=z_gas+dpara[2]+0.1+dpara_air[2];
- pMC->Gspos("SMAR", 2, "SUPR", 0., 0., z_air2, 0, "ONLY");
+ gMC->Gspos("SMAR", 2, "SUPR", 0., 0., z_air2, 0, "ONLY");
// --- DEFINE MODules, iron, and lead voLUMES
dpara_pb[1]=dpara_sm[1];
// dpara_pb[2]=1.1/2.;
dpara_pb[2]=1.5/2.;
- pMC->Gsvolu("SUPB","PARA", idtmed[600], dpara_pb, 6);
- pMC->Gsatt("SUPB", "SEEN", 1);
+ gMC->Gsvolu("SUPB","PARA", idtmed[600], dpara_pb, 6);
+ gMC->Gsatt("SUPB", "SEEN", 1);
// Fe
Float_t dpara_fe[6] = {12.5,12.5,8.,30.,0.,0.};
dpara_fe[0]=dpara_sm[0];
dpara_fe[1]=dpara_sm[1];
dpara_fe[2]=0.5/2.;
- pMC->Gsvolu("SUFE","PARA", idtmed[601], dpara_fe, 6);
- pMC->Gsatt("SUFE", "SEEN", 1);
+ gMC->Gsvolu("SUFE","PARA", idtmed[601], dpara_fe, 6);
+ gMC->Gsatt("SUFE", "SEEN", 1);
// volume for DM11
Float_t dpara_dm11[6] = {12.5,12.5,0.8,30.,0.,0.};
dpara_dm11[0]=dpara_sm[0]+.01;
dpara_dm11[2]= 6.2/2.;
//
- pMC->Gsvolu("DM11","PARA", idtmed[698], dpara_dm11, 6);
- pMC->Gsatt("DM11", "SEEN", 1);
+ gMC->Gsvolu("DM11","PARA", idtmed[698], dpara_dm11, 6);
+ gMC->Gsatt("DM11", "SEEN", 1);
// position super module inside DM11
Float_t z_ps,z_pb,z_fe,z_cv;
z_ps=-dpara_dm11[2]+dpara_sm[2];
- pMC->Gspos("SUPR", 1, "DM11", 0., 0., z_ps, irotdm, "ONLY");
+ gMC->Gspos("SUPR", 1, "DM11", 0., 0., z_ps, irotdm, "ONLY");
z_pb=z_ps+dpara_sm[2]+dpara_pb[2];
- pMC->Gspos("SUPB", 1, "DM11", 0., 0., z_pb, 0, "ONLY");
+ gMC->Gspos("SUPB", 1, "DM11", 0., 0., z_pb, 0, "ONLY");
z_fe=z_pb+dpara_pb[2]+dpara_fe[2];
- pMC->Gspos("SUFE", 1, "DM11", 0., 0., z_fe, 0, "ONLY");
+ gMC->Gspos("SUFE", 1, "DM11", 0., 0., z_fe, 0, "ONLY");
z_cv=z_fe+dpara_fe[2]+dpara_sm[2];
- pMC->Gspos("SUPR", 2, "DM11", 0., 0., z_cv, 0, "ONLY");
+ gMC->Gspos("SUPR", 2, "DM11", 0., 0., z_cv, 0, "ONLY");
//
}
// Draw a shaded view of the Photon Multiplicity Detector
//
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsatt("*", "seen", -1);
- pMC->Gsatt("alic", "seen", 0);
+ gMC->Gsatt("*", "seen", -1);
+ gMC->Gsatt("alic", "seen", 0);
//
// Set the visibility of the components
//
- pMC->Gsatt("DP11","seen",0);
- pMC->Gsatt("DS11","seen",1);
- pMC->Gsatt("DW11","seen",0);
- pMC->Gsatt("DM11","seen",1);
- pMC->Gsatt("DPMD","seen",0);
+ gMC->Gsatt("DP11","seen",0);
+ gMC->Gsatt("DS11","seen",1);
+ gMC->Gsatt("DW11","seen",0);
+ gMC->Gsatt("DM11","seen",1);
+ gMC->Gsatt("DPMD","seen",0);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 22, 20.5, .02, .02);
- pMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
- //pMC->Gdman(17, 5, "MAN");
- pMC->Gdopt("hide", "off");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 22, 20.5, .02, .02);
+ gMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
+ //gMC->Gdman(17, 5, "MAN");
+ gMC->Gdopt("hide", "off");
}
//_____________________________________________________________________________
// ORIGIN : Y. P. VIYOGI
//
- AliMC* pMC = AliMC::GetMC();
-
// --- The Argon- CO2 mixture ---
Float_t ag[2] = { 39.95 };
Float_t zg[2] = { 18. };
// define gas-mixtures
char namate[21];
- pMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
ag[1] = a;
zg[1] = z;
dg = (dar * 4 + dco) / 5;
AliMedium(17, "PLOYCARB$", 17, 0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
// --- Generate explicitly delta rays in the iron, aluminium and lead ---
- pMC->Gstpar(idtmed[600], "LOSS", 3.);
- pMC->Gstpar(idtmed[600], "DRAY", 1.);
+ gMC->Gstpar(idtmed[600], "LOSS", 3.);
+ gMC->Gstpar(idtmed[600], "DRAY", 1.);
- pMC->Gstpar(idtmed[603], "LOSS", 3.);
- pMC->Gstpar(idtmed[603], "DRAY", 1.);
+ gMC->Gstpar(idtmed[603], "LOSS", 3.);
+ gMC->Gstpar(idtmed[603], "DRAY", 1.);
- pMC->Gstpar(idtmed[604], "LOSS", 3.);
- pMC->Gstpar(idtmed[604], "DRAY", 1.);
+ gMC->Gstpar(idtmed[604], "LOSS", 3.);
+ gMC->Gstpar(idtmed[604], "DRAY", 1.);
- pMC->Gstpar(idtmed[605], "LOSS", 3.);
- pMC->Gstpar(idtmed[605], "DRAY", 1.);
+ gMC->Gstpar(idtmed[605], "LOSS", 3.);
+ gMC->Gstpar(idtmed[605], "DRAY", 1.);
- pMC->Gstpar(idtmed[606], "LOSS", 3.);
- pMC->Gstpar(idtmed[606], "DRAY", 1.);
+ gMC->Gstpar(idtmed[606], "LOSS", 3.);
+ gMC->Gstpar(idtmed[606], "DRAY", 1.);
- pMC->Gstpar(idtmed[607], "LOSS", 3.);
- pMC->Gstpar(idtmed[607], "DRAY", 1.);
+ gMC->Gstpar(idtmed[607], "LOSS", 3.);
+ gMC->Gstpar(idtmed[607], "DRAY", 1.);
// --- Energy cut-offs in the Pb and Al to gain time in tracking ---
// --- without affecting the hit patterns ---
- pMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
// --- Prevent particles stopping in the gas due to energy cut-off ---
- pMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
}
//_____________________________________________________________________________
Int_t vol[5];
Text_t namep[5];
- AliMC* pMC=AliMC::GetMC();
- if(pMC->GetMedium() == fMedSens && (destep = pMC->Edep())) {
+ if(gMC->GetMedium() == fMedSens && (destep = gMC->Edep())) {
-// pMC->CurrentVol(0, copy);
- pMC->CurrentVol(namep, copy);
+// gMC->CurrentVol(0, copy);
+ gMC->CurrentVol(namep, copy);
// printf("Current vol is %s \n",namep);
vol[0]=copy;
-// pMC->CurrentVolOff(1,0,copy);
- pMC->CurrentVolOff(1,namep,copy);
+// gMC->CurrentVolOff(1,0,copy);
+ gMC->CurrentVolOff(1,namep,copy);
// printf("Current vol 11 is %s \n",namep);
vol[1]=copy;
-// pMC->CurrentVolOff(2,0,copy);
- pMC->CurrentVolOff(2,namep,copy);
+// gMC->CurrentVolOff(2,0,copy);
+ gMC->CurrentVolOff(2,namep,copy);
// printf("Current vol 22 is %s \n",namep);
vol[2]=copy;
// if(strncmp(namep,"DW11",4))vol[2]=1;
-// pMC->CurrentVolOff(3,0,copy);
- pMC->CurrentVolOff(3,namep,copy);
+// gMC->CurrentVolOff(3,0,copy);
+ gMC->CurrentVolOff(3,namep,copy);
// printf("Current vol 33 is %s \n",namep);
vol[3]=copy;
- pMC->CurrentVolOff(4,namep,copy);
+ gMC->CurrentVolOff(4,namep,copy);
// printf("Current vol 44 is %s \n",namep);
vol[4]=copy;
// printf("volume number %d,%d,%d,%d,%d \n",vol[0],vol[1],vol[2],vol[3],vol[4]);
- pMC->Gdtom(center,hits,1);
+ gMC->Gdtom(center,hits,1);
hits[3] = destep*1e9; //Number in eV
AddHit(gAlice->CurrentTrack(), vol, hits);
}
// *** Define the DPMD Volume and fill with air ***
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsvolu("DPMD", "BOX ", idtmed[698], sipmd, 3);
+ gMC->Gsvolu("DPMD", "BOX ", idtmed[698], sipmd, 3);
// *** Define DIQU Volume and fill with air
siqad[0] = sipmd[0] / 2. - 1.;
siqad[1] = sipmd[1] / 2. - 1.;
siqad[2] = sipmd[2];
- pMC->Gsvolu("DIQU","BOX ", idtmed[698], siqad, 3);
- pMC->Gsatt("DIQU", "SEEN", 1);
+ gMC->Gsvolu("DIQU","BOX ", idtmed[698], siqad, 3);
+ gMC->Gsatt("DIQU", "SEEN", 1);
// --- Place the modules in INSIDE PMD (DPMD)
yd = ybox[j][i] - siqad[1];
if (pindex[j][i] == 1) {
++inum2;
- pMC->Gsposp("DM11", inum2, "DIQU", xd, yd, zd, 0, "ONLY", smod2, 3);
+ gMC->Gsposp("DM11", inum2, "DIQU", xd, yd, zd, 0, "ONLY", smod2, 3);
}
if (pindex[j][i] == 2) {
++inum3;
- pMC->Gsposp("DM12", inum3, "DIQU", xd, yd, zd, 0, "ONLY", smod3, 3);
+ gMC->Gsposp("DM12", inum3, "DIQU", xd, yd, zd, 0, "ONLY", smod3, 3);
}
if (pindex[j][i] == 3) {
++inum4;
- pMC->Gsposp("DM13", inum4, "DIQU", xd, yd, zd, 0, "ONLY", smod4, 3);
+ gMC->Gsposp("DM13", inum4, "DIQU", xd, yd, zd, 0, "ONLY", smod4, 3);
}
}
}
yiqa[3] = yiqa[2];
i2 = numqu;
for (k = 1; k <= i2; ++k) {
- pMC->Gsposp("DIQU", k, "DPMD", xiqa[k-1], yiqa[k-1], zd, idrotm[k], "ONLY", siqad, 3);
+ gMC->Gsposp("DIQU", k, "DPMD", xiqa[k-1], yiqa[k-1], zd, idrotm[k], "ONLY", siqad, 3);
}
// --- Place the DPMD in ALICE with front edge 6.0m from vertex ---
xp = 0.;
yp = 0.;
zp = zdist1;
- pMC->Gspos("DPMD", 1, "ALIC", xp, yp, zp, 0, "ONLY");
+ gMC->Gspos("DPMD", 1, "ALIC", xp, yp, zp, 0, "ONLY");
}
// -- Author : Y.P. VIYOGI, 04/06/1997.
// -- Modified: P.V.K.S.Baba(JU), 13-12-97.
- AliMC* pMC = AliMC::GetMC();
-
Int_t npad1, npad2, npad3, npad4;
Float_t spad1[3], spad2[3], spad3[3], spad4[3];
Float_t scpv1[3], scpv2[3], scpv3[3], scpv4[3];
spad1[0] = (pad1 - thcell) / 2.;
spad1[1] = spad1[0];
spad1[2] = thgas / 2;
- pMC->Gsvolu("DP21", "BOX ", idtmed[604], spad1, 3);
- pMC->Gsatt("DP21", "SEEN", 1);
- pMC->Gsvolu("DP22", "BOX ", idtmed[604], spad1, 3);
- pMC->Gsatt("DP22", "SEEN", 1);
+ gMC->Gsvolu("DP21", "BOX ", idtmed[604], spad1, 3);
+ gMC->Gsatt("DP21", "SEEN", 1);
+ gMC->Gsvolu("DP22", "BOX ", idtmed[604], spad1, 3);
+ gMC->Gsatt("DP22", "SEEN", 1);
sstr1[0] = npad1*pad1/2;
sstr1[1] = pad1/2;
sstr1[2] = thgas/2;
- pMC->Gsvolu("DS21", "BOX ", idtmed[605], sstr1, 3);
- pMC->Gsatt("DS21", "SEEN", 1);
- pMC->Gsvolu("DS22", "BOX ", idtmed[605], sstr1, 3);
- pMC->Gsatt("DS22", "SEEN", 1);
+ gMC->Gsvolu("DS21", "BOX ", idtmed[605], sstr1, 3);
+ gMC->Gsatt("DS21", "SEEN", 1);
+ gMC->Gsvolu("DS22", "BOX ", idtmed[605], sstr1, 3);
+ gMC->Gsatt("DS22", "SEEN", 1);
spsw1[0] = sstr1[0] + edge;
spsw1[1] = spsw1[0];
scpv1[0] = spsw1[0];
scpv1[1] = spsw1[1];
scpv1[2] = spsw1[2];
- pMC->Gsvolu("DW21", "BOX ", idtmed[607], spsw1, 3);
- pMC->Gsatt("DW21", "SEEN", 1);
- pMC->Gsvolu("DV21", "BOX ", idtmed[607], spsw1, 3);
- pMC->Gsatt("DV21", "SEEN", 1);
+ gMC->Gsvolu("DW21", "BOX ", idtmed[607], spsw1, 3);
+ gMC->Gsatt("DW21", "SEEN", 1);
+ gMC->Gsvolu("DV21", "BOX ", idtmed[607], spsw1, 3);
+ gMC->Gsatt("DV21", "SEEN", 1);
// --- place pads in a strip
xa = (-npad1 + 1.) * pad1 / 2.;
ya = 0.;
za = 0.;
for (i = 1; i <= npad1; ++i) {
- pMC->Gsposp("DP21", i, "DS21", xa, ya, za, 0, "ONLY", spad1, 3);
- pMC->Gsposp("DP22", i, "DS22", xa, ya, za, 0, "ONLY", spad1, 3);
+ gMC->Gsposp("DP21", i, "DS21", xa, ya, za, 0, "ONLY", spad1, 3);
+ gMC->Gsposp("DP22", i, "DS22", xa, ya, za, 0, "ONLY", spad1, 3);
xa += pad1;
}
// --- place strips in the PRESHOWER AND CPV boxes
yb = (-npad1 + 1.) * pad1 / 2.;
zb = 0.;
for (j = 1; j <= npad1; ++j) {
- pMC->Gsposp("DS21", j, "DW21", xb, yb, zb, 0, "ONLY", sstr1, 3);
- pMC->Gsposp("DS22", j, "DV21", xb, yb, zb, 0, "ONLY", sstr1, 3);
+ gMC->Gsposp("DS21", j, "DW21", xb, yb, zb, 0, "ONLY", sstr1, 3);
+ gMC->Gsposp("DS22", j, "DV21", xb, yb, zb, 0, "ONLY", sstr1, 3);
yb += pad1;
}
spad2[0] = (pad2 - thcell) / 2.;
spad2[1] = spad2[0];
spad2[2] = thgas / 2;
- pMC->Gsvolu("DP11", "BOX ", idtmed[604], spad2, 3);
- pMC->Gsatt("DP11", "SEEN", 1);
- pMC->Gsvolu("DP12", "BOX ", idtmed[604], spad2, 3);
- pMC->Gsatt("DP12", "SEEN", 1);
+ gMC->Gsvolu("DP11", "BOX ", idtmed[604], spad2, 3);
+ gMC->Gsatt("DP11", "SEEN", 1);
+ gMC->Gsvolu("DP12", "BOX ", idtmed[604], spad2, 3);
+ gMC->Gsatt("DP12", "SEEN", 1);
sstr2[0] = npad2 * pad2 / 2;
sstr2[1] = pad2 / 2;
sstr2[2] = thgas / 2;
- pMC->Gsvolu("DS11", "BOX ", idtmed[605], sstr2, 3);
- pMC->Gsatt("DS11", "SEEN", 1);
- pMC->Gsvolu("DS12", "BOX ", idtmed[605], sstr2, 3);
- pMC->Gsatt("DS12", "SEEN", 1);
+ gMC->Gsvolu("DS11", "BOX ", idtmed[605], sstr2, 3);
+ gMC->Gsatt("DS11", "SEEN", 1);
+ gMC->Gsvolu("DS12", "BOX ", idtmed[605], sstr2, 3);
+ gMC->Gsatt("DS12", "SEEN", 1);
spsw2[0] = sstr2[0] + edge;
spsw2[1] = spsw2[0];
scpv2[0] = spsw2[0];
scpv2[1] = spsw2[1];
scpv2[2] = spsw2[2];
- pMC->Gsvolu("DW11","BOX ", idtmed[607], spsw2, 3);
- pMC->Gsatt("DW11", "SEEN", 1);
- pMC->Gsvolu("DV11","BOX ", idtmed[607], spsw2, 3);
- pMC->Gsatt("DV11", "SEEN", 1);
+ gMC->Gsvolu("DW11","BOX ", idtmed[607], spsw2, 3);
+ gMC->Gsatt("DW11", "SEEN", 1);
+ gMC->Gsvolu("DV11","BOX ", idtmed[607], spsw2, 3);
+ gMC->Gsatt("DV11", "SEEN", 1);
// --- place pads in a strip
xa = (-npad2 + 1.) * pad2 / 2.;
ya = 0.;
za = 0.;
for (i = 1; i <= npad2; ++i) {
- pMC->Gsposp("DP11", i, "DS11", xa, ya, za, 0, "ONLY", spad2, 3);
- pMC->Gsposp("DP12", i, "DS12", xa, ya, za, 0, "ONLY", spad2, 3);
+ gMC->Gsposp("DP11", i, "DS11", xa, ya, za, 0, "ONLY", spad2, 3);
+ gMC->Gsposp("DP12", i, "DS12", xa, ya, za, 0, "ONLY", spad2, 3);
xa += pad2;
}
// --- place strips in the PRESHOWER AND CPV boxes
yb = (-npad2 + 1.) * pad2 / 2.;
zb = 0.;
for (j = 1; j <= npad2; ++j) {
- pMC->Gsposp("DS11", j, "DW11", xb, yb, zb, 0, "ONLY", sstr2, 3);
- pMC->Gsposp("DS12", j, "DV11", xb, yb, zb, 0, "ONLY", sstr2, 3);
+ gMC->Gsposp("DS11", j, "DW11", xb, yb, zb, 0, "ONLY", sstr2, 3);
+ gMC->Gsposp("DS12", j, "DV11", xb, yb, zb, 0, "ONLY", sstr2, 3);
yb += pad2;
}
spad3[0] = (pad3 - thcell) / 2.;
spad3[1] = spad3[0];
spad3[2] = thgas / 2;
- pMC->Gsvolu("DP13", "BOX ", idtmed[604], spad3, 3);
- pMC->Gsatt("DP13", "SEEN", 1);
- pMC->Gsvolu("DP14", "BOX ", idtmed[604], spad3, 3);
- pMC->Gsatt("DP14", "SEEN", 1);
+ gMC->Gsvolu("DP13", "BOX ", idtmed[604], spad3, 3);
+ gMC->Gsatt("DP13", "SEEN", 1);
+ gMC->Gsvolu("DP14", "BOX ", idtmed[604], spad3, 3);
+ gMC->Gsatt("DP14", "SEEN", 1);
sstr3[0] = npad3 * pad3 / 2;
sstr3[1] = pad3 / 2;
sstr3[2] = thgas / 2;
- pMC->Gsvolu("DS13", "BOX ", idtmed[605], sstr3, 3);
- pMC->Gsatt("DS13", "SEEN", 1);
- pMC->Gsvolu("DS14", "BOX ", idtmed[605], sstr3, 3);
- pMC->Gsatt("DS14", "SEEN", 1);
+ gMC->Gsvolu("DS13", "BOX ", idtmed[605], sstr3, 3);
+ gMC->Gsatt("DS13", "SEEN", 1);
+ gMC->Gsvolu("DS14", "BOX ", idtmed[605], sstr3, 3);
+ gMC->Gsatt("DS14", "SEEN", 1);
spsw3[0] = sstr3[0] + edge;
spsw3[1] = spsw3[0];
scpv3[0] = spsw3[0];
scpv3[1] = spsw3[1];
scpv3[2] = spsw3[2];
- pMC->Gsvolu("DW12","BOX ", idtmed[607], spsw3, 3);
- pMC->Gsatt("DW12", "SEEN", 1);
- pMC->Gsvolu("DV12","BOX ", idtmed[607], spsw3, 3);
- pMC->Gsatt("DV12", "SEEN", 1);
+ gMC->Gsvolu("DW12","BOX ", idtmed[607], spsw3, 3);
+ gMC->Gsatt("DW12", "SEEN", 1);
+ gMC->Gsvolu("DV12","BOX ", idtmed[607], spsw3, 3);
+ gMC->Gsatt("DV12", "SEEN", 1);
// --- place pads in a strip
xa = (-npad3 + 1.) * pad3 / 2.;
ya = 0.;
za = 0.;
for (i = 1; i <= npad3; ++i) {
- pMC->Gsposp("DP13", i, "DS13", xa, ya, za, 0, "ONLY", spad3, 3);
- pMC->Gsposp("DP14", i, "DS14", xa, ya, za, 0, "ONLY", spad3, 3);
+ gMC->Gsposp("DP13", i, "DS13", xa, ya, za, 0, "ONLY", spad3, 3);
+ gMC->Gsposp("DP14", i, "DS14", xa, ya, za, 0, "ONLY", spad3, 3);
xa += pad3;
}
// --- place strips in the PRESHOWER AND CPV boxes
yb = (-npad3 + 1.) * pad3 / 2.;
zb = 0.;
for (j = 1; j <= npad3; ++j) {
- pMC->Gsposp("DS13", j, "DW12", xb, yb, zb, 0, "ONLY", sstr3, 3);
- pMC->Gsposp("DS14", j, "DV12", xb, yb, zb, 0, "ONLY", sstr3, 3);
+ gMC->Gsposp("DS13", j, "DW12", xb, yb, zb, 0, "ONLY", sstr3, 3);
+ gMC->Gsposp("DS14", j, "DV12", xb, yb, zb, 0, "ONLY", sstr3, 3);
yb += pad3;
}
spad4[0] = (pad4 - thcell) / 2.;
spad4[1] = spad4[0];
spad4[2] = thgas / 2;
- pMC->Gsvolu("DP15","BOX ", idtmed[604], spad4, 3);
- pMC->Gsatt("DP15", "SEEN", 1);
- pMC->Gsvolu("DP16","BOX ", idtmed[604], spad4, 3);
- pMC->Gsatt("DP16", "SEEN", 1);
+ gMC->Gsvolu("DP15","BOX ", idtmed[604], spad4, 3);
+ gMC->Gsatt("DP15", "SEEN", 1);
+ gMC->Gsvolu("DP16","BOX ", idtmed[604], spad4, 3);
+ gMC->Gsatt("DP16", "SEEN", 1);
sstr4[0] = npad4 * pad4 / 2;
sstr4[1] = pad4 / 2;
sstr4[2] = thgas / 2;
- pMC->Gsvolu("DS15","BOX ", idtmed[605], sstr4, 3);
- pMC->Gsatt("DS15", "SEEN", 1);
- pMC->Gsvolu("DS16","BOX ", idtmed[605], sstr4, 3);
- pMC->Gsatt("DS16", "SEEN", 1);
+ gMC->Gsvolu("DS15","BOX ", idtmed[605], sstr4, 3);
+ gMC->Gsatt("DS15", "SEEN", 1);
+ gMC->Gsvolu("DS16","BOX ", idtmed[605], sstr4, 3);
+ gMC->Gsatt("DS16", "SEEN", 1);
spsw4[0] = sstr4[0] + edge;
spsw4[1] = spsw4[0];
scpv4[0] = spsw4[0];
scpv4[1] = spsw4[1];
scpv4[2] = spsw4[2];
- pMC->Gsvolu("DW13","BOX ", idtmed[607], spsw4, 3);
- pMC->Gsatt("DW13", "SEEN", 1);
- pMC->Gsvolu("DV13","BOX ", idtmed[607], spsw4, 3);
- pMC->Gsatt("DV13", "SEEN", 1);
+ gMC->Gsvolu("DW13","BOX ", idtmed[607], spsw4, 3);
+ gMC->Gsatt("DW13", "SEEN", 1);
+ gMC->Gsvolu("DV13","BOX ", idtmed[607], spsw4, 3);
+ gMC->Gsatt("DV13", "SEEN", 1);
// --- place pads in a strip
xa = (-npad4 + 1.) * pad4 / 2.;
ya = 0.;
za = 0.;
for (i = 1; i <= npad4; ++i) {
- pMC->Gsposp("DP15", i, "DS15", xa, ya, za, 0, "ONLY", spad4, 3);
- pMC->Gsposp("DP16", i, "DS16", xa, ya, za, 0, "ONLY", spad4, 3);
+ gMC->Gsposp("DP15", i, "DS15", xa, ya, za, 0, "ONLY", spad4, 3);
+ gMC->Gsposp("DP16", i, "DS16", xa, ya, za, 0, "ONLY", spad4, 3);
xa += pad4;
}
// --- place strips in the PRESHOWER AND CPV boxes
yb = (-npad4 + 1.) * pad4 / 2.;
zb = 0.;
for (j = 1; j <= npad4; ++j) {
- pMC->Gsposp("DS15", j, "DW13", xb, yb, zb, 0, "ONLY", sstr4, 3);
- pMC->Gsposp("DS16", j, "DV13", xb, yb, zb, 0, "ONLY", sstr4, 3);
+ gMC->Gsposp("DS15", j, "DW13", xb, yb, zb, 0, "ONLY", sstr4, 3);
+ gMC->Gsposp("DS16", j, "DV13", xb, yb, zb, 0, "ONLY", sstr4, 3);
yb += pad4;
}
spb[0] = spsw1[0];
spb[1] = spsw1[1];
spb[2] = .75;
- pMC->Gsvolu("DPPB","BOX ", idtmed[600], spb, 3);
- pMC->Gsatt("DPPB", "SEEN", 1);
+ gMC->Gsvolu("DPPB","BOX ", idtmed[600], spb, 3);
+ gMC->Gsatt("DPPB", "SEEN", 1);
sw[0] = spsw1[0];
sw[1] = spsw1[1];
sw[2] = 0.9/2.;
- pMC->Gsvolu("DPW ","BOX ", idtmed[600], sw, 3);
- pMC->Gsatt("DPW ", "SEEN", 1);
+ gMC->Gsvolu("DPW ","BOX ", idtmed[600], sw, 3);
+ gMC->Gsatt("DPW ", "SEEN", 1);
sfe[0] = spsw1[0];
sfe[1] = spsw1[1];
sfe[2] = 0.6/2.;
- pMC->Gsvolu("DPFE","BOX ", idtmed[605], sfe, 3);
- pMC->Gsatt("DPFE", "SEEN", 1);
+ gMC->Gsvolu("DPFE","BOX ", idtmed[605], sfe, 3);
+ gMC->Gsatt("DPFE", "SEEN", 1);
smod1[0] = spsw1[0];
smod1[1] = smod1[0];
// SMOD1(3)=SPSW1(3)+SFE(3)+SW (3)+SCPV1(3)
smod1[2] = spsw1[2] + sfe[2] + spb[2] + scpv1[2];
- pMC->Gsvolu("DM21", "BOX ", idtmed[698], smod1, 3);
+ gMC->Gsvolu("DM21", "BOX ", idtmed[698], smod1, 3);
smod2[0] = spsw2[0];
smod2[1] = smod2[0];
smod2[2] = spsw2[2] + sfe[2] + spb[2] + scpv2[2];
- pMC->Gsvolu("DM11", "BOX ", idtmed[698], smod2, 3);
+ gMC->Gsvolu("DM11", "BOX ", idtmed[698], smod2, 3);
smod3[0] = spsw3[0];
smod3[1] = smod3[0];
smod3[2] = spsw3[2] + sfe[2] + spb[2] + scpv3[2];
- pMC->Gsvolu("DM12", "BOX ", idtmed[698], smod3, 3);
+ gMC->Gsvolu("DM12", "BOX ", idtmed[698], smod3, 3);
smod4[0] = spsw4[0];
smod4[1] = smod4[0];
smod4[2] = spsw4[2] + sfe[2] + spb[2] + scpv4[2];
- pMC->Gsvolu("DM13", "BOX ", idtmed[698], smod4, 3);
+ gMC->Gsvolu("DM13", "BOX ", idtmed[698], smod4, 3);
// **** MODULE TYPE 1 : ALWAYS WITH TUNSGTEN CONVERTER
yc = 0.;
// --- First the CPV box
zc = -(spsw1[2] + sfe[2] + spb[2] + spsw1[2]) + spsw1[2];
- pMC->Gspos("DV21", 1, "DM21", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DV21", 1, "DM21", xc, yc, zc, 0, "ONLY");
// --- Then iron support plate
zc = zc + sfe[2] + spsw1[2];
- pMC->Gspos("DPFE", 1, "DM21", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPFE", 1, "DM21", xc, yc, zc, 0, "ONLY");
// --- Then converter plate
zc = zc + sfe[2] + spb[2];
- pMC->Gspos("DPPB", 1, "DM21", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPPB", 1, "DM21", xc, yc, zc, 0, "ONLY");
// --- Lastly the preshower box
zc = zc + spb[2] + spsw1[2];
- pMC->Gspos("DW21", 1, "DM21", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DW21", 1, "DM21", xc, yc, zc, 0, "ONLY");
// **** MODULE TYPE 2
yc = 0.;
// --- First the CPV box
zc = -(spsw2[2] + sfe[2] + spb[2] + spsw2[2]) + spsw2[2];
- pMC->Gspos("DV11", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DV11", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Then iron support plate
zc = zc + sfe[2] + spsw2[2];
- pMC->Gspos("DPFE", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPFE", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Then lead converter plate
zc = zc + sfe[2] + spb[2];
- pMC->Gspos("DPPB", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPPB", 1, "DM11", xc, yc, zc, 0, "ONLY");
// --- Lastly the preshower box
zc = zc + spb[2] + spsw2[2];
- pMC->Gspos("DW11", 1, "DM11", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DW11", 1, "DM11", xc, yc, zc, 0, "ONLY");
// **** MODULE TYPE 3
yc = 0.;
// --- First the CPV box
zc = -(spsw3[2] + sfe[2] + spb[2] + spsw3[2]) + spsw3[2];
- pMC->Gspos("DV12", 1, "DM12", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DV12", 1, "DM12", xc, yc, zc, 0, "ONLY");
// --- Then iron support plate
zc = zc + sfe[2] + spsw3[2];
- pMC->Gspos("DPFE", 1, "DM12", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPFE", 1, "DM12", xc, yc, zc, 0, "ONLY");
// --- Then lead converter plate
zc = zc + sfe[2] + spb[2];
- pMC->Gspos("DPPB", 1, "DM12", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPPB", 1, "DM12", xc, yc, zc, 0, "ONLY");
// --- Lastly the preshower box
zc = zc + spb[2] + spsw3[2];
- pMC->Gspos("DW12", 1, "DM12", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DW12", 1, "DM12", xc, yc, zc, 0, "ONLY");
// **** MODULE TYPE 4
yc = 0.;
// --- First the CPV box
zc = -(spsw4[2] + sfe[2] + spb[2] + spsw4[2]) + spsw4[2];
- pMC->Gspos("DV13", 1, "DM13", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DV13", 1, "DM13", xc, yc, zc, 0, "ONLY");
// --- Then iron support plate
zc = zc + sfe[2] + spsw4[2];
- pMC->Gspos("DPFE", 1, "DM13", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPFE", 1, "DM13", xc, yc, zc, 0, "ONLY");
// --- Then lead converter plate
zc = zc + sfe[2] + spb[2];
- pMC->Gspos("DPPB", 1, "DM13", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DPPB", 1, "DM13", xc, yc, zc, 0, "ONLY");
// --- Lastly the preshower box
zc = zc + spb[2] + spsw4[2];
- pMC->Gspos("DW13", 1, "DM13", xc, yc, zc, 0, "ONLY");
+ gMC->Gspos("DW13", 1, "DM13", xc, yc, zc, 0, "ONLY");
}
// Draw a shaded view of the Photon Multiplicity Detector
//
- AliMC* pMC = AliMC::GetMC();
-
- pMC->Gsatt("*", "seen", -1);
- pMC->Gsatt("alic", "seen", 0);
+ gMC->Gsatt("*", "seen", -1);
+ gMC->Gsatt("alic", "seen", 0);
//
// Set the visibility of the components
//
- pMC->Gsatt("DP21","seen",0);
- pMC->Gsatt("DP22","seen",0);
- pMC->Gsatt("DS21","seen",1);
- pMC->Gsatt("DS22","seen",1);
- pMC->Gsatt("DW21","seen",0);
- pMC->Gsatt("DV21","seen",0);
- pMC->Gsatt("DP11","seen",0);
- pMC->Gsatt("DP12","seen",0);
- pMC->Gsatt("DS11","seen",1);
- pMC->Gsatt("DS12","seen",1);
- pMC->Gsatt("DW11","seen",0);
- pMC->Gsatt("DV11","seen",0);
- pMC->Gsatt("DP13","seen",0);
- pMC->Gsatt("DP14","seen",0);
- pMC->Gsatt("DS13","seen",1);
- pMC->Gsatt("DS14","seen",1);
- pMC->Gsatt("DW12","seen",0);
- pMC->Gsatt("DV12","seen",0);
- pMC->Gsatt("DP15","seen",0);
- pMC->Gsatt("DP16","seen",0);
- pMC->Gsatt("DS15","seen",1);
- pMC->Gsatt("DS16","seen",1);
- pMC->Gsatt("DW13","seen",0);
- pMC->Gsatt("DV13","seen",0);
- pMC->Gsatt("DPPB","seen",1);
- pMC->Gsatt("DPW ","seen",1);
- pMC->Gsatt("DPFE","seen",1);
- pMC->Gsatt("DM21","seen",1);
- pMC->Gsatt("DM11","seen",1);
- pMC->Gsatt("DM12","seen",1);
- pMC->Gsatt("DM13","seen",1);
- pMC->Gsatt("DPMD","seen",0);
- pMC->Gsatt("DIQU","seen",0);
+ gMC->Gsatt("DP21","seen",0);
+ gMC->Gsatt("DP22","seen",0);
+ gMC->Gsatt("DS21","seen",1);
+ gMC->Gsatt("DS22","seen",1);
+ gMC->Gsatt("DW21","seen",0);
+ gMC->Gsatt("DV21","seen",0);
+ gMC->Gsatt("DP11","seen",0);
+ gMC->Gsatt("DP12","seen",0);
+ gMC->Gsatt("DS11","seen",1);
+ gMC->Gsatt("DS12","seen",1);
+ gMC->Gsatt("DW11","seen",0);
+ gMC->Gsatt("DV11","seen",0);
+ gMC->Gsatt("DP13","seen",0);
+ gMC->Gsatt("DP14","seen",0);
+ gMC->Gsatt("DS13","seen",1);
+ gMC->Gsatt("DS14","seen",1);
+ gMC->Gsatt("DW12","seen",0);
+ gMC->Gsatt("DV12","seen",0);
+ gMC->Gsatt("DP15","seen",0);
+ gMC->Gsatt("DP16","seen",0);
+ gMC->Gsatt("DS15","seen",1);
+ gMC->Gsatt("DS16","seen",1);
+ gMC->Gsatt("DW13","seen",0);
+ gMC->Gsatt("DV13","seen",0);
+ gMC->Gsatt("DPPB","seen",1);
+ gMC->Gsatt("DPW ","seen",1);
+ gMC->Gsatt("DPFE","seen",1);
+ gMC->Gsatt("DM21","seen",1);
+ gMC->Gsatt("DM11","seen",1);
+ gMC->Gsatt("DM12","seen",1);
+ gMC->Gsatt("DM13","seen",1);
+ gMC->Gsatt("DPMD","seen",0);
+ gMC->Gsatt("DIQU","seen",0);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 22, 15.5, .04, .04);
- pMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
- pMC->Gdman(17, 5, "MAN");
- pMC->Gdopt("hide", "off");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 22, 15.5, .04, .04);
+ gMC->Gdhead(1111, "Photon Multiplicity Detector Version 1");
+ gMC->Gdman(17, 5, "MAN");
+ gMC->Gdopt("hide", "off");
}
//_____________________________________________________________________________
// ORIGIN : Y. P. VIYOGI
//
- AliMC* pMC = AliMC::GetMC();
-
// --- The Argon- CO2 mixture ---
Float_t ag[2] = { 39.95 };
Float_t zg[2] = { 18. };
// define gas-mixtures
char namate[21];
- pMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[3], namate, a, z, d, radl, absl, buf, nbuf);
ag[1] = a;
zg[1] = z;
dg = (dar * 4 + dco) / 5;
AliMedium(16, "C $", 16, 0, 0, isxfld, sxmgmx, .1, .1, .01, .1);
// --- Generate explicitly delta rays in the iron, aluminium and lead ---
- pMC->Gstpar(idtmed[600], "LOSS", 3.);
- pMC->Gstpar(idtmed[600], "DRAY", 1.);
+ gMC->Gstpar(idtmed[600], "LOSS", 3.);
+ gMC->Gstpar(idtmed[600], "DRAY", 1.);
- pMC->Gstpar(idtmed[603], "LOSS", 3.);
- pMC->Gstpar(idtmed[603], "DRAY", 1.);
+ gMC->Gstpar(idtmed[603], "LOSS", 3.);
+ gMC->Gstpar(idtmed[603], "DRAY", 1.);
- pMC->Gstpar(idtmed[604], "LOSS", 3.);
- pMC->Gstpar(idtmed[604], "DRAY", 1.);
+ gMC->Gstpar(idtmed[604], "LOSS", 3.);
+ gMC->Gstpar(idtmed[604], "DRAY", 1.);
- pMC->Gstpar(idtmed[605], "LOSS", 3.);
- pMC->Gstpar(idtmed[605], "DRAY", 1.);
+ gMC->Gstpar(idtmed[605], "LOSS", 3.);
+ gMC->Gstpar(idtmed[605], "DRAY", 1.);
- pMC->Gstpar(idtmed[606], "LOSS", 3.);
- pMC->Gstpar(idtmed[606], "DRAY", 1.);
+ gMC->Gstpar(idtmed[606], "LOSS", 3.);
+ gMC->Gstpar(idtmed[606], "DRAY", 1.);
- pMC->Gstpar(idtmed[607], "LOSS", 3.);
- pMC->Gstpar(idtmed[607], "DRAY", 1.);
+ gMC->Gstpar(idtmed[607], "LOSS", 3.);
+ gMC->Gstpar(idtmed[607], "DRAY", 1.);
// --- Energy cut-offs in the Pb and Al to gain time in tracking ---
// --- without affecting the hit patterns ---
- pMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
- pMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[600], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[605], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[606], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[603], "CUTHAD", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTGAM", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTELE", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTNEU", 1e-4);
+ gMC->Gstpar(idtmed[609], "CUTHAD", 1e-4);
// --- Prevent particles stopping in the gas due to energy cut-off ---
- pMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
- pMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTGAM", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTELE", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTNEU", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTHAD", 1e-5);
+ gMC->Gstpar(idtmed[604], "CUTMUO", 1e-5);
}
//_____________________________________________________________________________
Int_t vol[5];
Text_t namep[5];
- AliMC* pMC=AliMC::GetMC();
- if(pMC->GetMedium() == fMedSens && (destep = pMC->Edep())) {
+ if(gMC->GetMedium() == fMedSens && (destep = gMC->Edep())) {
- pMC->CurrentVol(namep, copy);
+ gMC->CurrentVol(namep, copy);
vol[0]=copy;
- pMC->CurrentVolOff(1,namep,copy);
+ gMC->CurrentVolOff(1,namep,copy);
vol[1]=copy;
- pMC->CurrentVolOff(2,namep,copy);
+ gMC->CurrentVolOff(2,namep,copy);
vol[2]=copy;
if(strncmp(namep,"DW11",4))vol[2]=1;
if(strncmp(namep,"DV11",4))vol[2]=2;
- pMC->CurrentVolOff(3,namep,copy);
+ gMC->CurrentVolOff(3,namep,copy);
vol[3]=copy;
- pMC->CurrentVolOff(4,namep,copy);
+ gMC->CurrentVolOff(4,namep,copy);
vol[4]=copy;
- pMC->Gdtom(center,hits,1);
+ gMC->Gdtom(center,hits,1);
hits[3] = destep*1e9; //Number in eV
AddHit(gAlice->CurrentTrack(), vol, hits);
}
// Called at every step in the RICH
//
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3 = (TGeant3*) pMC;
+ TGeant3 *geant3 = (TGeant3*) gMC;
const Float_t xshift[3] = { 41.3, 0, -41.3 };
- static Float_t polar[3] = {0, 0, 0};
+ static Float_t momentum[3];
const Int_t nrooth = 25;
static Int_t ixold=-1, iyold=-1;
if (geant3->Gcking()->kcase == lcase) {
i1 = geant3->Gcking()->ngkine;
for (i = 1; i <= i1; ++i) {
- pMC->Gmtod(geant3->Gckin3()->gpos[i-1], vxloc, 1);
- pMC->Gmtod(geant3->Gcking()->gkin[i-1], dir, 2);
+ gMC->Gmtod(geant3->Gckin3()->gpos[i-1], vxloc, 1);
+ gMC->Gmtod(geant3->Gcking()->gkin[i-1], dir, 2);
if (geant3->Gcking()->gkin[i-1][4] == 8. ||
geant3->Gcking()->gkin[i-1][4] == 9.) {
++nmult;
// update the impact point only
if (geant3->Gctrak()->istory == 1) {
// Direction of incidence and where did it hit ?
- pMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
- pMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
+ gMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
+ gMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
phiangle = TMath::ATan2(dir[2], dir[0]);
if (phiangle < 0.) phiangle += 2*TMath::Pi();
i1 = nrooth;
}
// Direction of incidence and where did it hit ?
- pMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
- pMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
+ gMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
+ gMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
// Computing 2nd power
r1 = dir[0];
// Computing 2nd power
}
// Signal generation in methane gap
- pMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
- pMC->Gmtod(geant3->Gckine()->vert, vxloc, 1);
+ gMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
+ gMC->Gmtod(geant3->Gckine()->vert, vxloc, 1);
ix = (Int_t) ((sVloc[0] + sDlx) / sDxp);
iy = (Int_t) ((sVloc[2] + sDly) / sDyp);
stwght = geant3->Gctrak()->upwght;
geant3->Gctrak()->upwght = (Float_t) sNphoton;
geant3->Gskpho(i);
- gAlice->SetTrack(0, gAlice->CurrentTrack(), 20000050,
- &geant3->Gckin2()->xphot[i-1][3],geant3->Gckin2()->xphot[i-1],
- polar,geant3->Gctrak()->tofg,"Cherenkov", ncher);
+ momentum[0]=geant3->Gckin2()->xphot[i-1][3]*
+ geant3->Gckin2()->xphot[i-1][6];
+ momentum[1]=geant3->Gckin2()->xphot[i-1][4]*
+ geant3->Gckin2()->xphot[i-1][6];
+ momentum[2]=geant3->Gckin2()->xphot[i-1][5]*
+ geant3->Gckin2()->xphot[i-1][6];
+ gAlice->SetTrack(0, gAlice->CurrentTrack(),
+ gMC->PDGFromId(50),
+ momentum, //momentum
+ geant3->Gckin2()->xphot[i-1], //position
+ &geant3->Gckin2()->xphot[i-1][7], //polarisation
+ geant3->Gckin2()->xphot[i-1][10], //time of flight
+ "Cherenkov", ncher);
sMckov[sNphoton - 1] = ncher;
geant3->Gctrak()->upwght = stwght;
}
sZsox = geant3->Gckine()->vert[2];
// Where did it hit ?
- pMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
- pMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
+ gMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
+ gMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
ysx = sVloc[2] + sDly;
if (geant3->Gctmed()->numed == idtmed[1004-1]) {
nmodsx = geant3->Gcvolu()->number[geant3->Gcvolu()->nlevel - 4];
// Current particle is cherenkov photon
if (geant3->Gckine()->ipart == 50) {
- pMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
+ gMC->Gmtod(geant3->Gctrak()->vect, sVloc, 1);
// WRITE(6,* ) UPWGHT, VLOC(2), NUMED, DESTEP
// Photon crosses ch4-csi boundary
// take into account fresnel losses with complex refraction index
// CALL FRESNELCSI
// IF (ISTOP .EQ. 2) RETURN
// Put transmission of electrodes in by hand
- pMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
+ gMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
cophi = TMath::Cos(TMath::ATan2(dir[0], dir[1]));
t = (1. - .025 / cophi) * (1. - .05 / cophi);
- pMC->Rndm(ranf, 1);
+ gMC->Rndm(ranf, 1);
if (ranf[0] > t) {
if (geant3->Gctrak()->upwght && Int_t(geant3->Gctrak()->upwght+0.5)<MAXPH)
sIloss[Int_t(geant3->Gctrak()->upwght+0.5) - 1] = 15;
// new
// copied from miphit in Freon or Quartz
// Where did it hit ?
- pMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
+ gMC->Gmtod(&geant3->Gctrak()->vect[3], dir, 2);
// Momentum and direction of incidence
for (ll = 0; ll < nrooth; ++ll) rrhh[ll]=0;
// Integrates over RICH pads
//
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3 = (TGeant3*) pMC;
+ TGeant3 *geant3 = (TGeant3*) gMC;
Int_t i1, i2;
Float_t r1;
//sQint[0] = qtot;
}
//
- pMC->Gmtod(sVectIn, sVloc, 1);
+ gMC->Gmtod(sVectIn, sVloc, 1);
if (TMath::Abs(sVloc[0]) >= sDlx) return;
if (TMath::Abs(sVloc[2]) >= sDly) return;
source[0] = x0 - sDlx;
source[1] = sVloc[1] - .2;
source[2] = y0a - sDly;
- pMC->Gdtom(source, source, 1);
+ gMC->Gdtom(source, source, 1);
FeedBack(source, qtot);
return;
}
// Calculates the charge deposited by a MIP
//
- AliMC* pMC = AliMC::GetMC();
Int_t i1;
if (!nel) nel = 1;
i1 = nel;
for (i = 1; i <= i1; ++i) {
- pMC->Rndm(ranf, 1);
+ gMC->Rndm(ranf, 1);
qtot -= fChslope * TMath::Log(ranf[0]);
}
}
// Charge deposited
//
- AliMC* pMC = AliMC::GetMC();
Float_t ranf[1];
- pMC->Rndm(ranf, 1);
+ gMC->Rndm(ranf, 1);
qtot = -fChslope * TMath::Log(ranf[0]);
}
// Generate FeedBack photons
//
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3 = (TGeant3*) pMC;
+ TGeant3 *geant3 = (TGeant3*) gMC;
Int_t i1, j;
Float_t r1, r2;
for (i = 1; i <= i1; ++i) {
// DIRECTION
- pMC->Rndm(ranf, 2);
+ gMC->Rndm(ranf, 2);
cthf = ranf[0] * 2. - 1.;
if (cthf < 0.) continue;
sthf = TMath::Sqrt((1. - cthf) * (cthf + 1.));
geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][j]=source[j];
// ENERGY
- pMC->Rndm(&random, 1);
+ gMC->Rndm(&random, 1);
if (random <= .57) {
enfp = 7.5e-9;
} else if (random > .57 && random <= .7) {
dir[0] = sthf * TMath::Sin(phif);
dir[1] = cthf;
dir[2] = sthf * TMath::Cos(phif);
- pMC->Gdtom(dir, &geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][3], 2);
+ gMC->Gdtom(dir, &geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][3], 2);
// POLARISATION
e1[0] = 0.;
vmod=TMath::Sqrt(1/vmod);
for(j=0;j<3;j++) e2[j]*=vmod;
- pMC->Rndm(ranf, 1);
+ gMC->Rndm(ranf, 1);
phi = ranf[0] * 2 * TMath::Pi();
r1 = TMath::Sin(phi);
r2 = TMath::Cos(phi);
for(j=0;j<3;j++) pol[j]=e1[j]*r1+e2[j]*r2;
- pMC->Gdtom(pol, &geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][7], 2);
+ gMC->Gdtom(pol, &geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][7], 2);
// TIME OF FLIGHT
geant3->Gckin2()->xphot[geant3->Gckin2()->ngphot-1][10] = 0.;
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-999;
par[0] = 71.1;
par[1] = 11.5;
par[2] = 73.15;
- pMC->Gsvolu("RICH", "BOX ", idtmed[1009], par, 3);
+ gMC->Gsvolu("RICH", "BOX ", idtmed[1009], par, 3);
// Sensitive part of the whole RICH
par[0] = 64.8;
par[1] = 11.5;
par[2] = 66.55;
- pMC->Gsvolu("SRIC", "BOX ", idtmed[1000], par, 3);
+ gMC->Gsvolu("SRIC", "BOX ", idtmed[1000], par, 3);
// Honeycomb
par[0] = 63.1;
par[1] = .188;
par[2] = 66.55;
- pMC->Gsvolu("HONE", "BOX ", idtmed[1001], par, 3);
+ gMC->Gsvolu("HONE", "BOX ", idtmed[1001], par, 3);
// Aluminium sheet
par[0] = 63.1;
par[1] = .025;
par[2] = 66.55;
- pMC->Gsvolu("ALUM", "BOX ", idtmed[1009], par, 3);
+ gMC->Gsvolu("ALUM", "BOX ", idtmed[1009], par, 3);
// Quartz
par[0] = 63.1;
par[1] = .25;
par[2] = 65.5;
- pMC->Gsvolu("QUAR", "BOX ", idtmed[1002], par, 3);
+ gMC->Gsvolu("QUAR", "BOX ", idtmed[1002], par, 3);
// Spacers (cylinders)
par[0] = 0.;
par[1] = .5;
par[2] = .5;
- pMC->Gsvolu("SPAC", "TUBE", idtmed[1002], par, 3);
+ gMC->Gsvolu("SPAC", "TUBE", idtmed[1002], par, 3);
// Opaque quartz
par[0] = 61.95;
par[1] = .2;
par[2] = 66.5;
- pMC->Gsvolu("OQUA", "BOX ", idtmed[1007], par, 3);
+ gMC->Gsvolu("OQUA", "BOX ", idtmed[1007], par, 3);
// Frame of opaque quartz
par[0] = 20.65;
par[1] = .5;
par[2] = 66.5;
- pMC->Gsvolu("OQUF", "BOX ", idtmed[1007], par, 3);
+ gMC->Gsvolu("OQUF", "BOX ", idtmed[1007], par, 3);
// Little bar of opaque quartz
par[0] = 63.1;
par[1] = .25;
par[2] = .275;
- pMC->Gsvolu("BARR", "BOX ", idtmed[1007], par, 3);
+ gMC->Gsvolu("BARR", "BOX ", idtmed[1007], par, 3);
// Freon
par[0] = 20.15;
par[1] = .5;
par[2] = 65.5;
- pMC->Gsvolu("FREO", "BOX ", idtmed[1003], par, 3);
+ gMC->Gsvolu("FREO", "BOX ", idtmed[1003], par, 3);
// Methane
par[0] = 64.8;
par[1] = 5.;
par[2] = 64.8;
- pMC->Gsvolu("META", "BOX ", idtmed[1004], par, 3);
+ gMC->Gsvolu("META", "BOX ", idtmed[1004], par, 3);
// Methane gap
par[0] = 64.8;
par[1] = .2;
par[2] = 64.8;
- pMC->Gsvolu("GAP ", "BOX ", idtmed[1008], par, 3);
+ gMC->Gsvolu("GAP ", "BOX ", idtmed[1008], par, 3);
// CsI photocathode
par[0] = 64.8;
par[1] = .25;
par[2] = 64.8;
- pMC->Gsvolu("CSI ", "BOX ", idtmed[1005], par, 3);
+ gMC->Gsvolu("CSI ", "BOX ", idtmed[1005], par, 3);
// Anode grid
par[0] = 0.;
par[1] = .0025;
par[2] = 20.;
- pMC->Gsvolu("GRID", "TUBE", idtmed[1006], par, 3);
+ gMC->Gsvolu("GRID", "TUBE", idtmed[1006], par, 3);
// --- Places the detectors defined with GSVOLU
// Place material inside RICH
- pMC->Gspos("SRIC", 1, "RICH", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("SRIC", 1, "RICH", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("ALUM", 1, "SRIC", 0., -6.075, 0., 0, "ONLY");
- pMC->Gspos("HONE", 1, "SRIC", 0., -5.862, 0., 0, "ONLY");
- pMC->Gspos("ALUM", 2, "SRIC", 0., -5.649, 0., 0, "ONLY");
- pMC->Gspos("OQUA", 1, "SRIC", 0., -5.424, 0., 0, "ONLY");
+ gMC->Gspos("ALUM", 1, "SRIC", 0., -6.075, 0., 0, "ONLY");
+ gMC->Gspos("HONE", 1, "SRIC", 0., -5.862, 0., 0, "ONLY");
+ gMC->Gspos("ALUM", 2, "SRIC", 0., -5.649, 0., 0, "ONLY");
+ gMC->Gspos("OQUA", 1, "SRIC", 0., -5.424, 0., 0, "ONLY");
AliMatrix(idrotm[1019], 0., 0., 90., 0., 90., 90.);
for (i = 1; i <= 9; ++i) {
zs = (5 - i) * 14.4;
- pMC->Gspos("SPAC", i, "FREO", 6.7, 0., zs, idrotm[1019], "ONLY");
+ gMC->Gspos("SPAC", i, "FREO", 6.7, 0., zs, idrotm[1019], "ONLY");
}
for (i = 10; i <= 18; ++i) {
zs = (14 - i) * 14.4;
- pMC->Gspos("SPAC", i, "FREO", -6.7, 0., zs, idrotm[1019], "ONLY");
+ gMC->Gspos("SPAC", i, "FREO", -6.7, 0., zs, idrotm[1019], "ONLY");
}
- pMC->Gspos("FREO", 1, "OQUF", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("OQUF", 1, "SRIC", 41.3, -4.724, 0., 0, "ONLY");
- pMC->Gspos("OQUF", 2, "SRIC", 0., -4.724, 0., 0, "ONLY");
- pMC->Gspos("OQUF", 3, "SRIC", -41.3, -4.724, 0., 0, "ONLY");
- pMC->Gspos("BARR", 1, "QUAR", 0., 0., -21.65, 0, "ONLY");
- pMC->Gspos("BARR", 2, "QUAR", 0., 0., 21.65, 0, "ONLY");
- pMC->Gspos("QUAR", 1, "SRIC", 0., -3.974, 0., 0, "ONLY");
- pMC->Gspos("GAP ", 1, "META", 0., 4.8, 0., 0, "ONLY");
- pMC->Gspos("META", 1, "SRIC", 0., 1.276, 0., 0, "ONLY");
- pMC->Gspos("CSI ", 1, "SRIC", 0., 6.526, 0., 0, "ONLY");
+ gMC->Gspos("FREO", 1, "OQUF", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("OQUF", 1, "SRIC", 41.3, -4.724, 0., 0, "ONLY");
+ gMC->Gspos("OQUF", 2, "SRIC", 0., -4.724, 0., 0, "ONLY");
+ gMC->Gspos("OQUF", 3, "SRIC", -41.3, -4.724, 0., 0, "ONLY");
+ gMC->Gspos("BARR", 1, "QUAR", 0., 0., -21.65, 0, "ONLY");
+ gMC->Gspos("BARR", 2, "QUAR", 0., 0., 21.65, 0, "ONLY");
+ gMC->Gspos("QUAR", 1, "SRIC", 0., -3.974, 0., 0, "ONLY");
+ gMC->Gspos("GAP ", 1, "META", 0., 4.8, 0., 0, "ONLY");
+ gMC->Gspos("META", 1, "SRIC", 0., 1.276, 0., 0, "ONLY");
+ gMC->Gspos("CSI ", 1, "SRIC", 0., 6.526, 0., 0, "ONLY");
// Place RICH inside ALICE apparatus
AliMatrix(idrotm[1005], 90., 0., 109.31, 90., 19.31, 90.);
AliMatrix(idrotm[1006], 90., 20., 108.2, 110., 18.2, 110.);
- pMC->Gspos("RICH", 1, "ALIC", 0., 471.9, 165.26, idrotm[1000], "ONLY");
- pMC->Gspos("RICH", 2, "ALIC", 171., 470., 0., idrotm[1001], "ONLY");
- pMC->Gspos("RICH", 3, "ALIC", 0., 500., 0., idrotm[1002], "ONLY");
- pMC->Gspos("RICH", 4, "ALIC", -171., 470., 0., idrotm[1003], "ONLY");
- pMC->Gspos("RICH", 5, "ALIC", 161.4, 443.4, -165.3, idrotm[1004], "ONLY");
- pMC->Gspos("RICH", 6, "ALIC", 0., 471.9, -165.3, idrotm[1005], "ONLY");
- pMC->Gspos("RICH", 7, "ALIC", -161.4, 443.4, -165.3, idrotm[1006], "ONLY");
+ gMC->Gspos("RICH", 1, "ALIC", 0., 471.9, 165.26, idrotm[1000], "ONLY");
+ gMC->Gspos("RICH", 2, "ALIC", 171., 470., 0., idrotm[1001], "ONLY");
+ gMC->Gspos("RICH", 3, "ALIC", 0., 500., 0., idrotm[1002], "ONLY");
+ gMC->Gspos("RICH", 4, "ALIC", -171., 470., 0., idrotm[1003], "ONLY");
+ gMC->Gspos("RICH", 5, "ALIC", 161.4, 443.4, -165.3, idrotm[1004], "ONLY");
+ gMC->Gspos("RICH", 6, "ALIC", 0., 471.9, -165.3, idrotm[1005], "ONLY");
+ gMC->Gspos("RICH", 7, "ALIC", -161.4, 443.4, -165.3, idrotm[1006], "ONLY");
}
// Draw a shaded view of the Ring Imaging Cherenkov
//
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3 = (TGeant3*) pMC;
+ TGeant3 *geant3 = (TGeant3*) gMC;
// 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("RICH","seen",0);
- pMC->Gsatt("SRIC","seen",0);
- pMC->Gsatt("HONE","seen",1);
- pMC->Gsatt("ALUM","seen",1);
- pMC->Gsatt("QUAR","seen",1);
- pMC->Gsatt("SPAC","seen",1);
- pMC->Gsatt("OQUA","seen",1);
- pMC->Gsatt("OQUF","seen",1);
- pMC->Gsatt("BARR","seen",1);
- pMC->Gsatt("FREO","seen",1);
- pMC->Gsatt("META","seen",1);
- pMC->Gsatt("GAP ","seen",1);
- pMC->Gsatt("CSI ","seen",1);
- pMC->Gsatt("GRID","seen",1);
+ gMC->Gsatt("RICH","seen",0);
+ gMC->Gsatt("SRIC","seen",0);
+ gMC->Gsatt("HONE","seen",1);
+ gMC->Gsatt("ALUM","seen",1);
+ gMC->Gsatt("QUAR","seen",1);
+ gMC->Gsatt("SPAC","seen",1);
+ gMC->Gsatt("OQUA","seen",1);
+ gMC->Gsatt("OQUF","seen",1);
+ gMC->Gsatt("BARR","seen",1);
+ gMC->Gsatt("FREO","seen",1);
+ gMC->Gsatt("META","seen",1);
+ gMC->Gsatt("GAP ","seen",1);
+ gMC->Gsatt("CSI ","seen",1);
+ gMC->Gsatt("GRID","seen",1);
//
geant3->Gdopt("hide", "on");
geant3->SetClipBox(".");
// geant3->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
geant3->DefaultRange();
- pMC->Gdraw("alic", 60, 50, 0, 10, 0, .03, .03);
+ gMC->Gdraw("alic", 60, 50, 0, 10, 0, .03, .03);
geant3->Gdhead(1111, "Ring Imaging Cherenkov version 1");
geant3->Gdman(16, 6, "MAN");
geant3->Gdopt("hide", "off");
Int_t *idtmed = fIdtmed->GetArray()-999;
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3 = (TGeant3*) pMC;
+ TGeant3 *geant3 = (TGeant3*) gMC;
// --- Photon energy (GeV)
// --- Refraction indexes
// Switch on delta-ray production in the methane and freon gaps
- pMC->Gstpar(idtmed[1002], "LOSS", 1.);
- pMC->Gstpar(idtmed[1003], "LOSS", 1.);
- pMC->Gstpar(idtmed[1004], "LOSS", 1.);
- pMC->Gstpar(idtmed[1008], "LOSS", 1.);
- pMC->Gstpar(idtmed[1005], "LOSS", 1.);
- pMC->Gstpar(idtmed[1002], "HADR", 1.);
- pMC->Gstpar(idtmed[1003], "HADR", 1.);
- pMC->Gstpar(idtmed[1004], "HADR", 1.);
- pMC->Gstpar(idtmed[1008], "HADR", 1.);
- pMC->Gstpar(idtmed[1005], "HADR", 1.);
- pMC->Gstpar(idtmed[1002], "DCAY", 1.);
- pMC->Gstpar(idtmed[1003], "DCAY", 1.);
- pMC->Gstpar(idtmed[1004], "DCAY", 1.);
- pMC->Gstpar(idtmed[1008], "DCAY", 1.);
- pMC->Gstpar(idtmed[1005], "DCAY", 1.);
+ gMC->Gstpar(idtmed[1002], "LOSS", 1.);
+ gMC->Gstpar(idtmed[1003], "LOSS", 1.);
+ gMC->Gstpar(idtmed[1004], "LOSS", 1.);
+ gMC->Gstpar(idtmed[1008], "LOSS", 1.);
+ gMC->Gstpar(idtmed[1005], "LOSS", 1.);
+ gMC->Gstpar(idtmed[1002], "HADR", 1.);
+ gMC->Gstpar(idtmed[1003], "HADR", 1.);
+ gMC->Gstpar(idtmed[1004], "HADR", 1.);
+ gMC->Gstpar(idtmed[1008], "HADR", 1.);
+ gMC->Gstpar(idtmed[1005], "HADR", 1.);
+ gMC->Gstpar(idtmed[1002], "DCAY", 1.);
+ gMC->Gstpar(idtmed[1003], "DCAY", 1.);
+ gMC->Gstpar(idtmed[1004], "DCAY", 1.);
+ gMC->Gstpar(idtmed[1008], "DCAY", 1.);
+ gMC->Gstpar(idtmed[1005], "DCAY", 1.);
geant3->Gsckov(idtmed[1000], 14, ppckov, absco_methane, effic_all, rindex_methane);
geant3->Gsckov(idtmed[1001], 14, ppckov, absco_methane, effic_all, rindex_methane);
geant3->Gsckov(idtmed[1002], 14, ppckov, absco_quarz, effic_all,rindex_quarz);
void AliLego::Run()
{
// loop on phi,theta bins
- AliMC* pMC=AliMC::GetMC();
- pMC->InitLego();
+ gMC->InitLego();
Float_t thed, phid, eta;
for (fPhiBin=1; fPhiBin<=fNphi; fPhiBin++) {
printf("AliLego Generating rays in phi bin:%d\n",fPhiBin);
for (fThetaBin=1; fThetaBin<=fNtheta; fThetaBin++) {
- pMC->Gtrigi();
- pMC->Gtrigc();
+ gMC->Gtrigi();
+ gMC->Gtrigc();
GenerateKinematics();
- pMC->Gtreve_root();
+ gMC->Gtreve_root();
thed = fCurTheta*kRaddeg;
phid = fCurPhi*kRaddeg;
{
// called from AliRun::Stepmanager from gustep.
// Accumulate the 3 parameters step by step
- AliMC* pMC = AliMC::GetMC();
Float_t t, tt;
Float_t a,z,dens,radl,absl;
- Float_t step = pMC->TrackStep();
+ Float_t step = gMC->TrackStep();
Float_t vect[3], pmom[4];
- pMC->TrackPosition(vect);
- pMC->TrackMomentum(pmom);
- pMC->CurrentMaterial(a,z,dens,radl,absl);
+ gMC->TrackPosition(vect);
+ gMC->TrackMomentum(pmom);
+ gMC->CurrentMaterial(a,z,dens,radl,absl);
if (z < 1) return;
// --- See if we have to stop now
if (TMath::Abs(vect[2]) > fZMax ||
vect[0]*vect[0] +vect[1]*vect[1] > fRadMax*fRadMax) {
- pMC->StopEvent();
+ gMC->StopEvent();
} else {
// --- See how long we have to go
// nwbuf number of user words
//
Int_t kmat;
- AliMC::GetMC()->Material(kmat, name, a, z, dens, radl, absl, buf, nwbuf);
+ gMC->Material(kmat, name, a, z, dens, radl, absl, buf, nwbuf);
(*fIdmate)[imat]=kmat;
}
// wmat array of concentrations
//
Int_t kmat;
- AliMC::GetMC()->Mixture(kmat, name, a, z, dens, nlmat, wmat);
+ gMC->Mixture(kmat, name, a, z, dens, nlmat, wmat);
(*fIdmate)[imat]=kmat;
}
// = 3 constant magnetic field along z
//
Int_t kmed;
- AliMC::GetMC()->Medium(kmed,name, (*fIdmate)[nmat], isvol, ifield, fieldm,
+ gMC->Medium(kmed,name, (*fIdmate)[nmat], isvol, ifield, fieldm,
tmaxfd, stemax, deemax, epsil, stmin, ubuf, nbuf);
(*fIdtmed)[numed]=kmed;
}
// theta3 polar angle for axis III
// phi3 azimuthal angle for axis III
//
- AliMC::GetMC()->Matrix(nmat, theta1, phi1, theta2, phi2, theta3, phi3);
+ gMC->Matrix(nmat, theta1, phi1, theta2, phi2, theta3, phi3);
}
//_____________________________________________________________________________
// Create default mag field
SetField();
//
- fMC = AliMC::GetMC();
- //
- //---------------Load detector names
-
- /* fNdets=21;
- strcpy(fDnames[0],"BODY");
- strcpy(fDnames[1],"NULL");
- strcpy(fDnames[2],"ITS");
- strcpy(fDnames[3],"MAG");
- strcpy(fDnames[4],"TPC");
- strcpy(fDnames[5],"TOF");
- strcpy(fDnames[6],"PMD");
- strcpy(fDnames[7],"PHOS");
- strcpy(fDnames[8],"ZDC");
- strcpy(fDnames[9],"FMD");
- strcpy(fDnames[10],"RICH");
- strcpy(fDnames[11],"MUON");
- strcpy(fDnames[12],"FRAME");
- strcpy(fDnames[13],"TRD");
- strcpy(fDnames[14],"NULL");
- strcpy(fDnames[15],"CASTOR");
- strcpy(fDnames[16],"ABSO");
- strcpy(fDnames[17],"SHIL");
- strcpy(fDnames[18],"DIPO");
- strcpy(fDnames[19],"HALL");
- strcpy(fDnames[20],"PIPE");
- */
+ fMC = gMC;
//
// Prepare the tracking medium lists
fImedia = new TArrayI(1000);
// Print summary of deposited energy
//
- AliMC* pMC = AliMC::GetMC();
-
Int_t ndep=0;
Float_t edtot=0;
Float_t ed, ed2;
for(i=0;i<(3<left?3:left);i++) {
j=kn*3+i;
id=Int_t (sEventEnergy[j]+0.1);
- printf(" %s %10.3f +- %10.3f%%;",pMC->VolName(id),sSummEnergy[j],sSum2Energy[j]);
+ printf(" %s %10.3f +- %10.3f%%;",gMC->VolName(id),sSummEnergy[j],sSum2Energy[j]);
}
printf("\n");
}
for(i=0;i<(5<left?5:left);i++) {
j=kn*5+i;
id=Int_t (sEventEnergy[j]+0.1);
- printf(" %s %10.3f%%;",pMC->VolName(id),100*sSummEnergy[j]/edtot);
+ printf(" %s %10.3f%%;",gMC->VolName(id),100*sSummEnergy[j]/edtot);
}
printf("\n");
}
gROOT->LoadMacro(setup);
gInterpreter->ProcessLine("Config();");
- AliMC* pMC = AliMC::GetMC();
-
- pMC->DefineParticles(); //Create standard MC particles
+ gMC->DefineParticles(); //Create standard MC particles
TObject *objfirst, *objlast;
MediaTable(); //Build the special IMEDIA table
//Close the geometry structure
- pMC->Ggclos();
+ gMC->Ggclos();
//Initialise geometry deposition table
- sEventEnergy.Set(pMC->NofVolumes()+1);
- sSummEnergy.Set(pMC->NofVolumes()+1);
- sSum2Energy.Set(pMC->NofVolumes()+1);
+ sEventEnergy.Set(gMC->NofVolumes()+1);
+ sSummEnergy.Set(gMC->NofVolumes()+1);
+ sSum2Energy.Set(gMC->NofVolumes()+1);
//Create the color table
- pMC->SetColors();
+ gMC->SetColors();
//Compute cross-sections
- pMC->Gphysi();
+ gMC->Gphysi();
//Write Geometry object to current file.
fGeometry->Write();
//
- AliMC* pMC = AliMC::GetMC();
const Int_t ncuts=10;
const Int_t nflags=11;
const Int_t npars=ncuts+nflags;
if(cut[kz]>=0) {
printf(" * %-6s set to %10.3E for tracking medium code %4d for %s\n",
pars[kz],cut[kz],itmed,mod->GetName());
- pMC->Gstpar(ktmed,pars[kz],cut[kz]);
+ gMC->Gstpar(ktmed,pars[kz],cut[kz]);
}
}
// Set transport mechanisms
if(flag[kz]>=0) {
printf(" * %-6s set to %10d for tracking medium code %4d for %s\n",
pars[ncuts+kz],flag[kz],itmed,mod->GetName());
- pMC->Gstpar(ktmed,pars[ncuts+kz],Float_t(flag[kz]));
+ gMC->Gstpar(ktmed,pars[ncuts+kz],Float_t(flag[kz]));
}
}
} else {
// check if initialisation has been done
if (!fInitDone) Init(setup);
- AliMC* pMC = AliMC::GetMC();
-
// Create the Root Tree with one branch per detector
if(!fEvent) {
gAlice->MakeTree("KHDER");
for (i=0; i<todo; i++) {
// Process one run (one run = one event)
gAlice->Reset(fRun, fEvent);
- pMC->Gtrigi();
- pMC->Gtrigc();
- pMC->Gtrig();
+ gMC->Gtrigi();
+ gMC->Gtrigc();
+ gMC->Gtrig();
gAlice->FinishEvent();
fEvent++;
}
// Called at every step during transport
//
- AliMC* pMC = AliMC::GetMC();
-
Int_t copy;
//
// --- If lego option, do it and leave
return;
}
//Update energy deposition tables
- sEventEnergy[pMC->CurrentVol(0,copy)]+=pMC->Edep();
+ sEventEnergy[gMC->CurrentVol(0,copy)]+=gMC->Edep();
//Call the appropriate stepping routine;
AliModule *det = (AliModule*)fModules->At(id);
// top volume is searched as only volume not positioned into another
//
- AliMC* pMC = AliMC::GetMC();
Int_t i, nvol, iret, itmed, irot, numed, npar, ndiv, iaxe;
Int_t ndvmx, nr, flag;
char key[5], card[77], natmed[21];
while(i<20) natmed[i++]=' ';
natmed[i]='\0';
//
- pMC->Gckmat(idtmed[itmed],natmed);
+ gMC->Gckmat(idtmed[itmed],natmed);
//*
} else if (!strcmp(key,"ROTM")) {
sscanf(&card[4],"%d %f %f %f %f %f %f",&irot,&teta1,&phi1,&teta2,&phi2,&teta3,&phi3);
for(i=0;i<npar;i++) fscanf(lun,"%f",&par[i]);
fscanf(lun,"%*c");
}
- pMC->Gsvolu( name, shape, idtmed[numed], par, npar);
+ gMC->Gsvolu( name, shape, idtmed[numed], par, npar);
//* save the defined volumes
strcpy(volst[++nvol],name);
istop[nvol]=1;
//*
} else if (!strcmp(key,"DIVN")) {
sscanf(&card[5],"'%[^']' '%[^']' %d %d", name, mother, &ndiv, &iaxe);
- pMC->Gsdvn ( name, mother, ndiv, iaxe );
+ gMC->Gsdvn ( name, mother, ndiv, iaxe );
//*
} else if (!strcmp(key,"DVN2")) {
sscanf(&card[5],"'%[^']' '%[^']' %d %d %f %d",name, mother, &ndiv, &iaxe, &orig, &numed);
- pMC->Gsdvn2( name, mother, ndiv, iaxe, orig,idtmed[numed]);
+ gMC->Gsdvn2( name, mother, ndiv, iaxe, orig,idtmed[numed]);
//*
} else if (!strcmp(key,"DIVT")) {
sscanf(&card[5],"'%[^']' '%[^']' %f %d %d %d", name, mother, &step, &iaxe, &numed, &ndvmx);
- pMC->Gsdvt ( name, mother, step, iaxe, idtmed[numed], ndvmx);
+ gMC->Gsdvt ( name, mother, step, iaxe, idtmed[numed], ndvmx);
//*
} else if (!strcmp(key,"DVT2")) {
sscanf(&card[5],"'%[^']' '%[^']' %f %d %f %d %d", name, mother, &step, &iaxe, &orig, &numed, &ndvmx);
- pMC->Gsdvt2 ( name, mother, step, iaxe, orig, idtmed[numed], ndvmx );
+ gMC->Gsdvt2 ( name, mother, step, iaxe, orig, idtmed[numed], ndvmx );
//*
} else if (!strcmp(key,"POSI")) {
sscanf(&card[5],"'%[^']' %d '%[^']' %f %f %f %d '%[^']'", name, &nr, mother, &xo, &yo, &zo, &irot, konly);
if (!strcmp(volst[i],name)) istop[i]=0;
}
//*
- pMC->Gspos ( name, nr, mother, xo, yo, zo, idrot[irot], konly );
+ gMC->Gspos ( name, nr, mother, xo, yo, zo, idrot[irot], konly );
//*
} else if (!strcmp(key,"POSP")) {
sscanf(&card[5],"'%[^']' %d '%[^']' %f %f %f %d '%[^']' %d", name, &nr, mother, &xo, &yo, &zo, &irot, konly, &npar);
if (!strcmp(volst[i],name)) istop[i]=0;
}
//*
- pMC->Gsposp ( name, nr, mother, xo,yo,zo, idrot[irot], konly, par, npar);
+ gMC->Gsposp ( name, nr, mother, xo,yo,zo, idrot[irot], konly, par, npar);
}
//*
if (strcmp(key,"END")) goto L10;
enum {Keep_Bit=1, Daughters_Bit=2, Done_Bit=4};
-enum {kMaxModules = 25, kLenModuleName=7};
-
class AliDisplay;
class AliRun : public TNamed {
TStopwatch fTimer; //Timer object
AliMagF *fField; //Magnetic Field Map
AliMC *fMC; //pointer to MonteCarlo object
- // char fDnames[kMaxModules][kLenModuleName];
- //Array of detector names
TArrayI *fImedia; //Array of correspondence between media and detectors
Int_t fNdets; //Number of detectors
Float_t fTrRmax; //Maximum radius for tracking
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-1599;
Float_t d_pb, cpar[5], dpar[12], tpar[3], zpos,
par[12] = abs_l;
par[13] = 0.;
par[14] = par[11] + (par[12] - par[9]) * TMath::Tan(acc_max * kDegrad);
- pMC->Gsvolu("ABSM", "PCON", idtmed[1605], par, 15);
+ gMC->Gsvolu("ABSM", "PCON", idtmed[1605], par, 15);
//
// --- Now define all elements of the absorber
//
cpar1[2] = abs_d * TMath::Tan(theta1 * kDegrad);
cpar1[3] = z_nose * TMath::Tan(acc_max * kDegrad) + d_steel;
cpar1[4] = z_nose * TMath::Tan(theta1 * kDegrad);
- pMC->Gsvolu("ANOS", "CONE", idtmed[1611], cpar1, 5);
+ gMC->Gsvolu("ANOS", "CONE", idtmed[1611], cpar1, 5);
//
dz = cpar1[0] + abs_d;
- pMC->Gspos("ANOS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ANOS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// IRON SUPPORT STRUCTURE
//
cpar2[2] = cpar2[1] + d_steel;
cpar2[3] = abs_l * TMath::Tan(acc_max * kDegrad);
cpar2[4] = cpar2[3] + d_steel;
- pMC->Gsvolu("ASST", "CONE", idtmed[1658], cpar2, 5);
+ gMC->Gsvolu("ASST", "CONE", idtmed[1658], cpar2, 5);
dz = cpar2[0] + abs_d;
- pMC->Gspos("ASST", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ASST", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// PB FRONT SHIELD INNER SEGMENT, ALSO POLYETHYLENE WAS
// CONSIDERED FOR THIS REGION
cpar3[2] = cpar1[3] + d_poly;
cpar3[3] = z_cone * TMath::Tan(acc_max * kDegrad) + d_steel;
cpar3[4] = cpar3[3] + d_poly;
- pMC->Gsvolu("AWFS", "CONE", idtmed[1652], cpar3, 5);
+ gMC->Gsvolu("AWFS", "CONE", idtmed[1652], cpar3, 5);
dz = cpar3[0] + z_nose;
- pMC->Gspos("AWFS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("AWFS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// PB OUTER SURFACE
//
cpar5[9] = abs_l;
cpar5[10] = abs_l * TMath::Tan(acc_max * kDegrad) + d_steel + d_poly;
cpar5[11] = cpar5[10] + d_pb;
- pMC->Gsvolu("APBS", "PCON", idtmed[1612], cpar5, 12);
+ gMC->Gsvolu("APBS", "PCON", idtmed[1612], cpar5, 12);
dz = 0.;
- pMC->Gspos("APBS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("APBS", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// POLYETHYLEN LAYER
//
cpar4[2] = cpar4[1] + d_poly;
cpar4[3] = abs_l * TMath::Tan(acc_max * kDegrad) + d_steel;
cpar4[4] = cpar4[3] + d_poly;
- pMC->Gsvolu("APOL", "CONE", idtmed[1657], cpar4, 5);
+ gMC->Gsvolu("APOL", "CONE", idtmed[1657], cpar4, 5);
dz = cpar4[0] + z_cone;
- pMC->Gspos("APOL", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("APOL", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// LEAD INNER SHIELD (inner radius const up to z=abs_c)
//
cpar8[2] = r_abs + epsilon;
cpar8[3] = r_abs;
cpar8[4] = abs_c * TMath::Tan(acc_min * kDegrad);
- pMC->Gsvolu("AWI1", "CONE", idtmed[1652], cpar8, 5);
+ gMC->Gsvolu("AWI1", "CONE", idtmed[1652], cpar8, 5);
dz = cpar8[0] + z_w;
- pMC->Gspos("AWI1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("AWI1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// TUNGSTEN OPENING CONE UP TO THE END
//
cpar8[2] = abs_c * TMath::Tan(acc_min * kDegrad);
cpar8[3] = cpar8[1] + cpar8[0] * 2. * TMath::Tan(theta_open * kDegrad);
cpar8[4] = abs_l * TMath::Tan(acc_min * kDegrad);
- pMC->Gsvolu("AWI2", "CONE", idtmed[1651], cpar8, 5);
+ gMC->Gsvolu("AWI2", "CONE", idtmed[1651], cpar8, 5);
dz = cpar8[0] + abs_c;
- pMC->Gspos("AWI2", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("AWI2", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// CONCRETE CONE
//
cpar7[2] = abs_cc * TMath::Tan(acc_max * kDegrad);
cpar7[3] = (abs_l - d_rear) * TMath::Tan(acc_min * kDegrad);
cpar7[4] = (abs_l - d_rear) * TMath::Tan(acc_max * kDegrad);
- pMC->Gsvolu("ACON", "CONE", idtmed[1656], cpar7, 5);
+ gMC->Gsvolu("ACON", "CONE", idtmed[1656], cpar7, 5);
dz = cpar7[0] + abs_cc;
- pMC->Gspos("ACON", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ACON", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// REAR SHIELD
//
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE1", "CONE", idtmed[1652], cpar9, 5);
+ gMC->Gsvolu("ARE1", "CONE", idtmed[1652], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE2", "CONE", idtmed[1657], cpar9, 5);
+ gMC->Gsvolu("ARE2", "CONE", idtmed[1657], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE2", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE2", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE3", "CONE", idtmed[1652], cpar9, 5);
+ gMC->Gsvolu("ARE3", "CONE", idtmed[1652], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE3", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE3", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE4", "CONE", idtmed[1657], cpar9, 5);
+ gMC->Gsvolu("ARE4", "CONE", idtmed[1657], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE4", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE4", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE5", "CONE", idtmed[1652], cpar9, 5);
+ gMC->Gsvolu("ARE5", "CONE", idtmed[1652], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE5", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE5", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE6", "CONE", idtmed[1657], cpar9, 5);
+ gMC->Gsvolu("ARE6", "CONE", idtmed[1657], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE6", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE6", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
cpar9[1] = zr * TMath::Tan(theta_r * kDegrad);
cpar9[2] = zr * TMath::Tan(acc_max * kDegrad);
cpar9[3] = cpar9[1] + TMath::Tan(theta_r * kDegrad) * 5.;
cpar9[4] = cpar9[2] + TMath::Tan(acc_max * kDegrad) * 5.;
- pMC->Gsvolu("ARE7", "CONE", idtmed[1612], cpar9, 5);
+ gMC->Gsvolu("ARE7", "CONE", idtmed[1612], cpar9, 5);
dz = cpar9[0] + zr;
zr += 5.;
- pMC->Gspos("ARE7", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARE7", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// TUNGSTEN REAR SHIELD INNER PART
//
cpar10[2] = zr * TMath::Tan(theta_r * kDegrad);
cpar10[3] = cpar10[1] + d_rear * TMath::Tan(acc_min * kDegrad);
cpar10[4] = cpar10[2] + d_rear * TMath::Tan(theta_r * kDegrad);
- pMC->Gsvolu("ARIN", "CONE", idtmed[1611], cpar10, 5);
+ gMC->Gsvolu("ARIN", "CONE", idtmed[1611], cpar10, 5);
dz = cpar10[0] + zr;
- pMC->Gspos("ARIN", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ARIN", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// ELEMENTS OF THE BEAM PIPE TO BE POSITIONED INTO THE ABSORBER
//
tpar[0] = 0.;
tpar[1] = r_abs;
tpar[2] = (abs_c - abs_d) / 2.;
- pMC->Gsvolu("AATU", "TUBE", idtmed[1655], tpar, 3);
+ gMC->Gsvolu("AATU", "TUBE", idtmed[1655], tpar, 3);
//
tpar[1] = r_abs - .8;
tpar[0] = tpar[1] - .2;
tpar[2] = (abs_c - abs_d) / 2.;
- pMC->Gsvolu("ATUB", "TUBE", idtmed[1649], tpar, 3);
+ gMC->Gsvolu("ATUB", "TUBE", idtmed[1649], tpar, 3);
dz = 0.;
- pMC->Gspos("ATUB", 1, "AATU", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ATUB", 1, "AATU", 0., 0., dz, 0, "ONLY");
//
dz = (abs_c - abs_d) / 2. + abs_d;
- pMC->Gspos("AATU", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("AATU", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
// MOTHER VOLUME 2. SEGMENT
//
cpar[2] = r_abs;
cpar[3] = 0.;
cpar[4] = cpar[2] + cpar[0] * 2. * TMath::Tan(theta_open * kDegrad);
- pMC->Gsvolu("AAT1", "CONE", idtmed[1655], cpar, 5);
+ gMC->Gsvolu("AAT1", "CONE", idtmed[1655], cpar, 5);
//
cpar[0] = (abs_l - abs_c) / 2.;
cpar[2] += -.8;
cpar[1] = cpar[2] - .2;
cpar[4] += -.8;
cpar[3] = cpar[4] - .2;
- pMC->Gsvolu("ATU1", "CONE", idtmed[1649], cpar, 5);
+ gMC->Gsvolu("ATU1", "CONE", idtmed[1649], cpar, 5);
dz = 0.;
- pMC->Gspos("ATU1", 1, "AAT1", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ATU1", 1, "AAT1", 0., 0., dz, 0, "ONLY");
//
dz = (abs_l - abs_c) / 2. + abs_c;
- pMC->Gspos("AAT1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("AAT1", 1, "ABSM", 0., 0., dz, 0, "ONLY");
//
- pMC->Gspos("ABSM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("ABSM", 1, "ALIC", 0., 0., 0., 0, "ONLY");
//
// absorber support structure
//
dpar[9] = 670.;
dpar[10] = 159.;
dpar[11] = 163.5;
- pMC->Gsvolu("ASUP", "PCON", idtmed[1618], dpar, 12);
+ gMC->Gsvolu("ASUP", "PCON", idtmed[1618], dpar, 12);
dz = 0.;
- pMC->Gspos("ASUP", 1, "ALIC", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("ASUP", 1, "ALIC", 0., 0., dz, 0, "ONLY");
//
// Flange at the entrance of the absorber
//
tpar[0] = 3.;
tpar[1] = 5.7;
tpar[2] = 2.;
- pMC->Gsvolu("AF63", "TUBE", idtmed[1618], tpar, 3);
+ gMC->Gsvolu("AF63", "TUBE", idtmed[1618], tpar, 3);
zpos = abs_d + tpar[2];
- pMC->Gspos("AF63", 1, "ABSM", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("AF63", 1, "ABSM", 0., 0., zpos, 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of the muon absorber
//
- 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("ABSM","seen",1);
- pMC->Gsatt("ANOS","seen",1);
- pMC->Gsatt("ASST","seen",1);
- pMC->Gsatt("AWFS","seen",1);
- pMC->Gsatt("APBS","seen",1);
- pMC->Gsatt("APOL","seen",1);
- pMC->Gsatt("AWI1","seen",1);
- pMC->Gsatt("AWI2","seen",1);
- pMC->Gsatt("ACON","seen",1);
- pMC->Gsatt("ARE1","seen",1);
- pMC->Gsatt("ARE2","seen",1);
- pMC->Gsatt("ARE3","seen",1);
- pMC->Gsatt("ARE4","seen",1);
- pMC->Gsatt("ARE5","seen",1);
- pMC->Gsatt("ARE6","seen",1);
- pMC->Gsatt("ARE7","seen",1);
- pMC->Gsatt("ARIN","seen",1);
- pMC->Gsatt("AATU","seen",1);
- pMC->Gsatt("ATUB","seen",1);
- pMC->Gsatt("AAT1","seen",1);
- pMC->Gsatt("ATU1","seen",1);
- pMC->Gsatt("ASUP","seen",1);
- pMC->Gsatt("AF63","seen",1);
- //
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 21.5, 15, .04, .04);
- pMC->Gdhead(1111, "Muon Absorber");
- pMC->Gdman(16, 6, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gsatt("ABSM","seen",1);
+ gMC->Gsatt("ANOS","seen",1);
+ gMC->Gsatt("ASST","seen",1);
+ gMC->Gsatt("AWFS","seen",1);
+ gMC->Gsatt("APBS","seen",1);
+ gMC->Gsatt("APOL","seen",1);
+ gMC->Gsatt("AWI1","seen",1);
+ gMC->Gsatt("AWI2","seen",1);
+ gMC->Gsatt("ACON","seen",1);
+ gMC->Gsatt("ARE1","seen",1);
+ gMC->Gsatt("ARE2","seen",1);
+ gMC->Gsatt("ARE3","seen",1);
+ gMC->Gsatt("ARE4","seen",1);
+ gMC->Gsatt("ARE5","seen",1);
+ gMC->Gsatt("ARE6","seen",1);
+ gMC->Gsatt("ARE7","seen",1);
+ gMC->Gsatt("ARIN","seen",1);
+ gMC->Gsatt("AATU","seen",1);
+ gMC->Gsatt("ATUB","seen",1);
+ gMC->Gsatt("AAT1","seen",1);
+ gMC->Gsatt("ATU1","seen",1);
+ gMC->Gsatt("ASUP","seen",1);
+ gMC->Gsatt("AF63","seen",1);
+ //
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 21.5, 15, .04, .04);
+ gMC->Gdhead(1111, "Muon Absorber");
+ gMC->Gdman(16, 6, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
Float_t DALIC[10];
Int_t *idtmed = fIdtmed->GetArray()+1;
- AliMC *pMC = AliMC::GetMC();
//
if(gAlice->GetModule("ZDC")) {
//
DALIC[7]=15000;
DALIC[8]=0;
DALIC[9]=2000;
- pMC->Gsvolu("ALIC","PGON",idtmed[1],DALIC,10);
+ gMC->Gsvolu("ALIC","PGON",idtmed[1],DALIC,10);
} else {
//
// If the ZDC is not present make just a BOX
DALIC[0]=2000;
DALIC[1]=2000;
DALIC[2]=3000;
- pMC->Gsvolu("ALIC","BOX ",idtmed[1],DALIC,3);
+ gMC->Gsvolu("ALIC","BOX ",idtmed[1],DALIC,3);
}
}
//
// Draw a view of the Alice outside box
//
- AliMC* pMC = AliMC::GetMC();
-
// Set everything unseen
- pMC->Gsatt("*", "seen", -1);
+ gMC->Gsatt("*", "seen", -1);
//
// Set ALIC mother visible
- pMC->Gsatt("ALIC","SEEN",1);
+ gMC->Gsatt("ALIC","SEEN",1);
//
// Set the volumes visible
//
- pMC->Gdopt("hide","off");
+ gMC->Gdopt("hide","off");
if(gAlice->GetModule("ZDC")) {
//
// ZDC is present
//
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 15, 10, .0014, .0014);
- pMC->Gdhead(1111, "Aice Main body with Zero Degree Calorimeter");
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 15, 10, .0014, .0014);
+ gMC->Gdhead(1111, "Aice Main body with Zero Degree Calorimeter");
} else {
//
// ZDC is not present
//
- pMC->Gdraw("alic", 40, 30, 0, 10, 9, .0027, .0027);
- pMC->Gdhead(1111, "Aice Main body");
+ gMC->Gdraw("alic", 40, 30, 0, 10, 9, .0027, .0027);
+ gMC->Gdhead(1111, "Aice Main body");
}
- pMC->Gdman(18, 4, "MAN");
+ gMC->Gdman(18, 4, "MAN");
}
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Float_t par[5];
Int_t *idtmed = fIdtmed->GetArray()-1799;
par[0] = 0.;
par[1] = 280.;
par[2] = 250.;
- pMC->Gsvolu("DDIP", "TUBE", idtmed[1801], par, 3);
+ gMC->Gsvolu("DDIP", "TUBE", idtmed[1801], par, 3);
// COIL
par[0] = 250.;
par[3] = 204.;
par[4] = 244.;
- pMC->Gsvolu("DIPC", "CONE", idtmed[1810], par, 5);
- pMC->Gspos("DIPC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DIPC", "CONE", idtmed[1810], par, 5);
+ gMC->Gspos("DIPC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
par[0] = 250.;
par[1] = 115.;
par[2] = 125.;
par[3] = 194.;
par[4] = 204.;
- pMC->Gsvolu("DIIC", "CONE", idtmed[1807], par, 5);
- pMC->Gspos("DIIC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DIIC", "CONE", idtmed[1807], par, 5);
+ gMC->Gspos("DIIC", 1, "DDIP", 0., 0., 0., 0, "ONLY");
// YOKE
par[0] = 250.;
par[3] = 244.;
par[4] = 274.;
- pMC->Gsvolu("DIPY", "CONE", idtmed[1834], par, 5);
- pMC->Gspos("DIPY", 1, "DDIP", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("DDIP", 1, "ALIC", 0., 0., 725.+250, 0, "ONLY");
+ gMC->Gsvolu("DIPY", "CONE", idtmed[1834], par, 5);
+ gMC->Gspos("DIPY", 1, "DDIP", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("DDIP", 1, "ALIC", 0., 0., 725.+250, 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of the muon absorber
//
- 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("DDIP","seen",1);
- pMC->Gsatt("DIPC","seen",1);
- pMC->Gsatt("DIIC","seen",1);
- pMC->Gsatt("DIPY","seen",1);
+ gMC->Gsatt("DDIP","seen",1);
+ gMC->Gsatt("DIPC","seen",1);
+ gMC->Gsatt("DIIC","seen",1);
+ gMC->Gsatt("DIPY","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox(".");
- pMC->DefaultRange();
- pMC->Gdraw("alic", 30, 30, 0, 17, 13.5, .019, .019);
- pMC->Gdhead(1111, "Magnetic Dipole Version 1");
- pMC->Gdman(16, 4, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox(".");
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 30, 30, 0, 17, 13.5, .019, .019);
+ gMC->Gdhead(1111, "Magnetic Dipole Version 1");
+ gMC->Gdman(16, 4, "MAN");
}
//_____________________________________________________________________________
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Float_t cpar[5], tpar[3], ypar[4];
Float_t dz, dx, dy;
Int_t idrotm[1899];
tpar[0] = 300.;
tpar[1] = 415.;
tpar[2] = 250.;
- pMC->Gsvolu("DDIP", "BOX ", idtmed[1814], tpar, 3);
+ gMC->Gsvolu("DDIP", "BOX ", idtmed[1814], tpar, 3);
// COILS
cpar[2] = 83.2/2.;
cpar[3] = 120.;
cpar[4] = 240.;
- pMC->Gsvolu("DC1 ", "TUBS", idtmed[1813], cpar, 5);
+ gMC->Gsvolu("DC1 ", "TUBS", idtmed[1813], cpar, 5);
cpar[3] = -60.;
cpar[4] = 60.;
- pMC->Gsvolu("DC2 ", "TUBS", idtmed[1813], cpar, 5);
+ gMC->Gsvolu("DC2 ", "TUBS", idtmed[1813], cpar, 5);
// ... define regions for higher cuts
cpar[0] += 10.;
cpar[1] += -10.;
cpar[2] += -10.;
cpar[3] = 120.;
cpar[4] = 240.;
- pMC->Gsvolu("DC3 ", "TUBS", idtmed[1833], cpar, 5);
- pMC->Gspos("DC3 ", 1, "DC1 ", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DC3 ", "TUBS", idtmed[1833], cpar, 5);
+ gMC->Gspos("DC3 ", 1, "DC1 ", 0., 0., 0., 0, "ONLY");
cpar[3] = -60.;
cpar[4] = 60.;
- pMC->Gsvolu("DC4 ", "TUBS", idtmed[1833], cpar, 5);
- pMC->Gspos("DC4 ", 1, "DC2 ", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DC4 ", "TUBS", idtmed[1833], cpar, 5);
+ gMC->Gspos("DC4 ", 1, "DC2 ", 0., 0., 0., 0, "ONLY");
// ...
dz = 83.2/2. - 250.;
- pMC->Gspos("DC1 ", 1, "DDIP", 0., 0., dz, 0, "ONLY");
- pMC->Gspos("DC1 ", 2, "DDIP", 0., 0., -dz, 0, "ONLY");
- pMC->Gspos("DC2 ", 1, "DDIP", 0., 0., dz, 0, "ONLY");
- pMC->Gspos("DC2 ", 2, "DDIP", 0., 0., -dz, 0, "ONLY");
+ gMC->Gspos("DC1 ", 1, "DDIP", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("DC1 ", 2, "DDIP", 0., 0., -dz, 0, "ONLY");
+ gMC->Gspos("DC2 ", 1, "DDIP", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("DC2 ", 2, "DDIP", 0., 0., -dz, 0, "ONLY");
the1 = 180.;
phi1 = 0.;
the2 = 90.;
cpar[2] = 26.5;
cpar[3] = 270.;
cpar[4] = 360.;
- pMC->Gsvolu("DC11", "TUBS", idtmed[1813], cpar, 5);
+ gMC->Gsvolu("DC11", "TUBS", idtmed[1813], cpar, 5);
// ... higher cuts
cpar[0] += 10.;
cpar[1] += -10.;
cpar[2] += -10.;
- pMC->Gsvolu("DC21", "TUBS", idtmed[1833], cpar, 5);
- pMC->Gspos("DC21", 1, "DC11", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DC21", "TUBS", idtmed[1833], cpar, 5);
+ gMC->Gspos("DC21", 1, "DC11", 0., 0., 0., 0, "ONLY");
// ...
dx = TMath::Sin(30*kDegrad) * -236.5;
dy = TMath::Cos(30*kDegrad) * -236.5;
dz = cpar[1] + 10. - 250.;
- pMC->Gspos("DC11", 1, "DDIP", dx, dy, dz, idrotm[1800], "ONLY");
- pMC->Gspos("DC11", 2, "DDIP", dx, dy, -dz, idrotm[1802], "ONLY");
- pMC->Gspos("DC11", 3, "DDIP", -dx, dy, dz, idrotm[1801], "ONLY");
- pMC->Gspos("DC11", 4, "DDIP", -dx, dy, -dz, idrotm[1803], "ONLY");
+ gMC->Gspos("DC11", 1, "DDIP", dx, dy, dz, idrotm[1800], "ONLY");
+ gMC->Gspos("DC11", 2, "DDIP", dx, dy, -dz, idrotm[1802], "ONLY");
+ gMC->Gspos("DC11", 3, "DDIP", -dx, dy, dz, idrotm[1801], "ONLY");
+ gMC->Gspos("DC11", 4, "DDIP", -dx, dy, -dz, idrotm[1803], "ONLY");
cpar[0] = 25.;
cpar[1] = 25.+83.2;
cpar[2] = 53./2.;
cpar[3] = 0.;
cpar[4] = 90.;
- pMC->Gsvolu("DC12", "TUBS", idtmed[1813], cpar, 5);
+ gMC->Gsvolu("DC12", "TUBS", idtmed[1813], cpar, 5);
// ... higher cuts
cpar[0] += 10.;
cpar[1] += -10.;
cpar[2] += -10.;
- pMC->Gsvolu("DC22", "TUBS", idtmed[1833], cpar, 5);
- pMC->Gspos("DC22", 1, "DC12", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DC22", "TUBS", idtmed[1833], cpar, 5);
+ gMC->Gspos("DC22", 1, "DC12", 0., 0., 0., 0, "ONLY");
// ...
dx = TMath::Sin(30*kDegrad) * -236.5;
dy = TMath::Cos(30*kDegrad) * 236.5;
dz = cpar[1] + 10. - 250.;
- pMC->Gspos("DC12", 1, "DDIP", dx, dy, dz, idrotm[1801], "ONLY");
- pMC->Gspos("DC12", 2, "DDIP", dx, dy, -dz, idrotm[1803], "ONLY");
- pMC->Gspos("DC12", 3, "DDIP", -dx, dy, dz, idrotm[1800], "ONLY");
- pMC->Gspos("DC12", 4, "DDIP", -dx, dy, -dz, idrotm[1802], "ONLY");
+ gMC->Gspos("DC12", 1, "DDIP", dx, dy, dz, idrotm[1801], "ONLY");
+ gMC->Gspos("DC12", 2, "DDIP", dx, dy, -dz, idrotm[1803], "ONLY");
+ gMC->Gspos("DC12", 3, "DDIP", -dx, dy, dz, idrotm[1800], "ONLY");
+ gMC->Gspos("DC12", 4, "DDIP", -dx, dy, -dz, idrotm[1802], "ONLY");
the1 = 90.;
phi1 = 60.;
the2 = 90.;
tpar[0] = 53./2.;
tpar[1] = 83.2/2.;
tpar[2] = 283.6/2.;
- pMC->Gsvolu("DL1 ", "BOX ", idtmed[1813], tpar, 3);
+ gMC->Gsvolu("DL1 ", "BOX ", idtmed[1813], tpar, 3);
// ... higher cuts
tpar[0] -= 10.;
tpar[1] -= 10.;
- pMC->Gsvolu("DL2 ", "BOX ", idtmed[1833], tpar, 3);
- pMC->Gspos("DL2 ", 1, "DL1 ", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("DL2 ", "BOX ", idtmed[1833], tpar, 3);
+ gMC->Gspos("DL2 ", 1, "DL1 ", 0., 0., 0., 0, "ONLY");
// ...
dx = -60.5;
dy = -238.;
dz = 0.;
- pMC->Gspos("DL1 ", 1, "DDIP", dx, dy, dz, idrotm[1804], "ONLY");
- pMC->Gspos("DL1 ", 2, "DDIP", dx, -dy, dz, idrotm[1805], "ONLY");
- pMC->Gspos("DL1 ", 3, "DDIP",-dx, dy, dz, idrotm[1805], "ONLY");
- pMC->Gspos("DL1 ", 4, "DDIP",-dx, -dy, dz, idrotm[1804], "ONLY");
+ gMC->Gspos("DL1 ", 1, "DDIP", dx, dy, dz, idrotm[1804], "ONLY");
+ gMC->Gspos("DL1 ", 2, "DDIP", dx, -dy, dz, idrotm[1805], "ONLY");
+ gMC->Gspos("DL1 ", 3, "DDIP",-dx, dy, dz, idrotm[1805], "ONLY");
+ gMC->Gspos("DL1 ", 4, "DDIP",-dx, -dy, dz, idrotm[1804], "ONLY");
// YOKE
ypar[2] = 5.;
ypar[3] = 156.8;
ypar[0] = ypar[1] - ypar[3] * 2. * TMath::Tan(acc_max * kDegrad);
- pMC->Gsvolu("DY1 ", "TRD1", idtmed[1809], ypar, 4);
+ gMC->Gsvolu("DY1 ", "TRD1", idtmed[1809], ypar, 4);
// iron -
dy = 283.5;
- pMC->Gspos("DY1 ", 1, "DDIP", 0., dy, 0., 0, "ONLY");
- pMC->Gspos("DY1 ", 2, "DDIP", 0., -dy, 0., 0, "ONLY");
+ gMC->Gspos("DY1 ", 1, "DDIP", 0., dy, 0., 0, "ONLY");
+ gMC->Gspos("DY1 ", 2, "DDIP", 0., -dy, 0., 0, "ONLY");
ypar[2] = 60.;
- pMC->Gsvolu("DY2 ", "TRD1", idtmed[1829], ypar, 4);
+ gMC->Gsvolu("DY2 ", "TRD1", idtmed[1829], ypar, 4);
// iron -
dy = ypar[2] + 284.;
- pMC->Gspos("DY2 ", 1, "DDIP", 0., dy, 0., 0, "ONLY");
- pMC->Gspos("DY2 ", 2, "DDIP", 0., -dy, 0., 0, "ONLY");
+ gMC->Gspos("DY2 ", 1, "DDIP", 0., dy, 0., 0, "ONLY");
+ gMC->Gspos("DY2 ", 2, "DDIP", 0., -dy, 0., 0, "ONLY");
the1 = 99.;
phi1 = 0.;
the2 = 90.;
tpar[0] = 60.;
tpar[1] = 283.;
tpar[2] = 156.8;
- pMC->Gsvolu("DYL ", "BOX ", idtmed[1814], tpar, 3);
+ gMC->Gsvolu("DYL ", "BOX ", idtmed[1814], tpar, 3);
tpar[0] = 5.;
tpar[1] = 73.;
- pMC->Gsvolu("DY3 ", "BOX ", idtmed[1809], tpar, 3);
+ gMC->Gsvolu("DY3 ", "BOX ", idtmed[1809], tpar, 3);
dx = tpar[0] - 60.;
dy = tpar[1] + 137.;
- pMC->Gspos("DY3 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
- pMC->Gspos("DY3 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
+ gMC->Gspos("DY3 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
+ gMC->Gspos("DY3 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
tpar[0] = 55.;
- pMC->Gsvolu("DY4 ", "BOX ", idtmed[1829], tpar, 3);
+ gMC->Gsvolu("DY4 ", "BOX ", idtmed[1829], tpar, 3);
dx = dx + 5. + tpar[0];
- pMC->Gspos("DY4 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
- pMC->Gspos("DY4 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
+ gMC->Gspos("DY4 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
+ gMC->Gspos("DY4 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
tpar[0] = 37.7;
tpar[1] = 137.;
- pMC->Gsvolu("DY5 ", "BOX ", idtmed[1829], tpar, 3);
+ gMC->Gsvolu("DY5 ", "BOX ", idtmed[1829], tpar, 3);
dx = 60. - tpar[0];
- pMC->Gspos("DY5 ", 1, "DYL ", dx, 0., 0., 0, "ONLY");
+ gMC->Gspos("DY5 ", 1, "DYL ", dx, 0., 0., 0, "ONLY");
tpar[0] = 5.;
- pMC->Gsvolu("DY6 ", "BOX ", idtmed[1809], tpar, 3);
+ gMC->Gsvolu("DY6 ", "BOX ", idtmed[1809], tpar, 3);
dx = dx - 37.7 - tpar[0];
- pMC->Gspos("DY6 ", 1, "DYL ", dx, 0., 0., 0, "ONLY");
+ gMC->Gspos("DY6 ", 1, "DYL ", dx, 0., 0., 0, "ONLY");
tpar[0] = 17.3;
tpar[1] = 5.;
- pMC->Gsvolu("DY7 ", "BOX ", idtmed[1809], tpar, 3);
+ gMC->Gsvolu("DY7 ", "BOX ", idtmed[1809], tpar, 3);
dx = tpar[0] - 60.;
dy = tpar[1] + 127.;
- pMC->Gspos("DY7 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
- pMC->Gspos("DY7 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
+ gMC->Gspos("DY7 ", 1, "DYL ", dx, dy, 0., 0, "ONLY");
+ gMC->Gspos("DY7 ", 2, "DYL ", dx, -dy, 0., 0, "ONLY");
dx = ypar[0] + ypar[3] * TMath::Tan(acc_max * kDegrad) - 60.;
- pMC->Gspos("DYL ", 1, "DDIP", dx, 0., 0., idrotm[1806], "ONLY");
- pMC->Gspos("DYL ", 2, "DDIP",-dx, 0., 0., idrotm[1807], "ONLY");
- pMC->Gspos("DDIP", 1, "ALIC", 0., 0., 725.+250., 0, "MANY");
- pMC->Gsatt("DDIP", "SEEN", 0);
- pMC->Gsatt("DC21", "SEEN", 0);
- pMC->Gsatt("DC22", "SEEN", 0);
- pMC->Gsatt("DC3 ", "SEEN", 0);
- pMC->Gsatt("DC4 ", "SEEN", 0);
+ gMC->Gspos("DYL ", 1, "DDIP", dx, 0., 0., idrotm[1806], "ONLY");
+ gMC->Gspos("DYL ", 2, "DDIP",-dx, 0., 0., idrotm[1807], "ONLY");
+ gMC->Gspos("DDIP", 1, "ALIC", 0., 0., 725.+250., 0, "MANY");
+ gMC->Gsatt("DDIP", "SEEN", 0);
+ gMC->Gsatt("DC21", "SEEN", 0);
+ gMC->Gsatt("DC22", "SEEN", 0);
+ gMC->Gsatt("DC3 ", "SEEN", 0);
+ gMC->Gsatt("DC4 ", "SEEN", 0);
}
//_____________________________________________________________________________
// Draw a shaded view of the muon absorber
//
- 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("DDIP","seen",0);
- pMC->Gsatt("DC1 ","seen",1);
- pMC->Gsatt("DC2 ","seen",1);
- pMC->Gsatt("DC3 ","seen",1);
- pMC->Gsatt("DC4 ","seen",1);
- pMC->Gsatt("DC11","seen",1);
- pMC->Gsatt("DC21","seen",1);
- pMC->Gsatt("DC12","seen",1);
- pMC->Gsatt("DC22","seen",1);
- pMC->Gsatt("DL1 ","seen",1);
- pMC->Gsatt("DL2 ","seen",1);
- pMC->Gsatt("DY1 ","seen",1);
- pMC->Gsatt("DY2 ","seen",1);
- pMC->Gsatt("DYL ","seen",1);
- pMC->Gsatt("DY3 ","seen",1);
- pMC->Gsatt("DY4 ","seen",1);
- pMC->Gsatt("DY5 ","seen",1);
- pMC->Gsatt("DY6 ","seen",1);
- pMC->Gsatt("DY7 ","seen",1);
+ gMC->Gsatt("DDIP","seen",0);
+ gMC->Gsatt("DC1 ","seen",1);
+ gMC->Gsatt("DC2 ","seen",1);
+ gMC->Gsatt("DC3 ","seen",1);
+ gMC->Gsatt("DC4 ","seen",1);
+ gMC->Gsatt("DC11","seen",1);
+ gMC->Gsatt("DC21","seen",1);
+ gMC->Gsatt("DC12","seen",1);
+ gMC->Gsatt("DC22","seen",1);
+ gMC->Gsatt("DL1 ","seen",1);
+ gMC->Gsatt("DL2 ","seen",1);
+ gMC->Gsatt("DY1 ","seen",1);
+ gMC->Gsatt("DY2 ","seen",1);
+ gMC->Gsatt("DYL ","seen",1);
+ gMC->Gsatt("DY3 ","seen",1);
+ gMC->Gsatt("DY4 ","seen",1);
+ gMC->Gsatt("DY5 ","seen",1);
+ gMC->Gsatt("DY6 ","seen",1);
+ gMC->Gsatt("DY7 ","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox(".");
- pMC->DefaultRange();
- pMC->Gdraw("alic", 30, 30, 0, 17, 13.5, .019, .019);
- pMC->Gdhead(1111, "Magnetic Dipole Version 2");
- pMC->Gdman(16, 4, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox(".");
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 30, 30, 0, 17, 13.5, .019, .019);
+ gMC->Gdhead(1111, "Magnetic Dipole Version 2");
+ gMC->Gdman(16, 4, "MAN");
}
//_____________________________________________________________________________
*/
//End_Html
- AliMC* pMC=AliMC::GetMC();
char *filetmp;
const char *framename = "$(ALICE_ROOT)/Euclid/frame0399.euc";
char topvol[5];
//
// AliMatrix(idrotm[2001],90.,0.,90.,90.,180.,0.);
- pMC->Gspos("B010",1,"ALIC",0,0,0,0,"ONLY");
+ gMC->Gspos("B010",1,"ALIC",0,0,0,0,"ONLY");
- pMC->Gsatt("B010", "SEEN", 0);
+ gMC->Gsatt("B010", "SEEN", 0);
}
<img src="picts/AliFRAMETree.gif">
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
+
Int_t *idtmed = fIdtmed->GetArray()-1199;
Float_t dphi, dz_small, zpos, ddphi;
par[0] = r_in;
par[1] = r_ou;
par[2] = z_ou;
- pMC->Gsvolu("BFMO", "TUBE", idtmed[1214], par, 3);
+ gMC->Gsvolu("BFMO", "TUBE", idtmed[1214], par, 3);
// Rings perpendicular to the beam
par[0] = r_in;
par[1] = r_ou;
par[2] = dz;
- pMC->Gsvolu("BRO1", "TUBE", idtmed[1218], par, 3);
+ gMC->Gsvolu("BRO1", "TUBE", idtmed[1218], par, 3);
par[0] = r_in +dr;
par[1] = r_ou -dr;
par[2] = dz - dr;
- pMC->Gsvolu("BRI1", "TUBE", idtmed[1214], par, 3);
- pMC->Gspos("BRI1", 1, "BRO1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BRI1", "TUBE", idtmed[1214], par, 3);
+ gMC->Gspos("BRI1", 1, "BRO1", 0., 0., 0., 0, "ONLY");
zpos = z_ou - dz;
- pMC->Gspos("BRO1", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
- pMC->Gspos("BRO1", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BRO1", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
+ gMC->Gspos("BRO1", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
// space for the HMPID
tspar[2] = dz;
tspar[3] = -240.;
tspar[4] = 60.;
- pMC->Gsvolu("BRO2", "TUBS", idtmed[1218], tspar, 5);
+ gMC->Gsvolu("BRO2", "TUBS", idtmed[1218], tspar, 5);
tspar[0] = r_in + dr;
tspar[1] = r_ou - dr;
tspar[2] = dz - dr;
- pMC->Gsvolu("BRI2", "TUBS", idtmed[1214], tspar, 5);
- pMC->Gspos("BRI2", 1, "BRO2", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BRI2", "TUBS", idtmed[1214], tspar, 5);
+ gMC->Gspos("BRI2", 1, "BRO2", 0., 0., 0., 0, "ONLY");
zpos = z_in + dz;
- pMC->Gspos("BRO2", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
- pMC->Gspos("BRO2", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BRO2", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
+ gMC->Gspos("BRO2", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
tspar[2] = dz;
tspar[3] = 60.;
tspar[4] = 120.;
- pMC->Gsvolu("BRO3", "TUBS", idtmed[1218], tspar, 5);
+ gMC->Gsvolu("BRO3", "TUBS", idtmed[1218], tspar, 5);
tspar[0] = r_in + dr;
tspar[1] = r_ou - dr;
tspar[2] = dz - dr;
- pMC->Gsvolu("BRI3", "TUBS", idtmed[1214], tspar, 5);
- pMC->Gspos("BRI3", 1, "BRO3", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BRI3", "TUBS", idtmed[1214], tspar, 5);
+ gMC->Gspos("BRI3", 1, "BRO3", 0., 0., 0., 0, "ONLY");
zpos = 245.;
- pMC->Gspos("BRO3", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
- pMC->Gspos("BRO3", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BRO3", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
+ gMC->Gspos("BRO3", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
// longitudinal beams
tsparl[3] = -240.;
tsparl[4] = 60.;
- pMC->Gsvolu("BLO1", "TUBS", idtmed[1214], tsparl, 5);
- pMC->Gsdvt("BLD1", "BLO1", 20., 2, idtmed[1214], 15);
+ gMC->Gsvolu("BLO1", "TUBS", idtmed[1214], tsparl, 5);
+ gMC->Gsdvt("BLD1", "BLO1", 20., 2, idtmed[1214], 15);
// central, leaving space for rich and phos
tsparl[2] = dz_long;
tsparl[3] = -20.;
tsparl[4] = 60.;
- pMC->Gsvolu("BLO2", "TUBS", idtmed[1214], tsparl, 5);
- pMC->Gsdvt("BLD2", "BLO2", 20., 2, idtmed[1214], 5);
+ gMC->Gsvolu("BLO2", "TUBS", idtmed[1214], tsparl, 5);
+ gMC->Gsdvt("BLD2", "BLO2", 20., 2, idtmed[1214], 5);
tsparl[3] = 120.;
tsparl[4] = 200.;
- pMC->Gsvolu("BLO3", "TUBS", idtmed[1214], tsparl, 5);
- pMC->Gsdvt("BLD3", "BLO3", 20., 2, idtmed[1214], 5);
+ gMC->Gsvolu("BLO3", "TUBS", idtmed[1214], tsparl, 5);
+ gMC->Gsdvt("BLD3", "BLO3", 20., 2, idtmed[1214], 5);
// real elements
tspar[2] = dz_small;
tspar[3] = 10. - dphi;
tspar[4] = 10.;
- pMC->Gsvolu("BL01", "TUBS", idtmed[1218], tspar, 5);
+ gMC->Gsvolu("BL01", "TUBS", idtmed[1218], tspar, 5);
tspar[0] = tsparl[0] + dr;
tspar[1] = tsparl[1] - dr;
tspar[3] = 10. - dphi + ddphi;
tspar[4] = 10. - ddphi;
- pMC->Gsvolu("BL02", "TUBS", idtmed[1214], tspar, 5);
- pMC->Gspos("BL02", 1, "BL01", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BL02", "TUBS", idtmed[1214], tspar, 5);
+ gMC->Gspos("BL02", 1, "BL01", 0., 0., 0., 0, "ONLY");
tspar[0] = tsparl[0];
tspar[2] = dz_long;
tspar[3] = 10. - dphi;
tspar[4] = 10.;
- pMC->Gsvolu("BL11", "TUBS", idtmed[1218], tspar, 5);
+ gMC->Gsvolu("BL11", "TUBS", idtmed[1218], tspar, 5);
tspar[0] = tsparl[0] + dr;
tspar[1] = tsparl[1] - dr;
tspar[3] = 10. - dphi + ddphi;
tspar[4] = 10. - ddphi;
- pMC->Gsvolu("BL12", "TUBS", idtmed[1214], tspar, 5);
- pMC->Gspos("BL12", 1, "BL11", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BL12", "TUBS", idtmed[1214], tspar, 5);
+ gMC->Gspos("BL12", 1, "BL11", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BL01", 1, "BLD1", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BL11", 1, "BLD2", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BL11", 2, "BLD3", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BL01", 1, "BLD1", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BL11", 1, "BLD2", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BL11", 2, "BLD3", 0., 0., 0., 0, "ONLY");
zpos = z_in +2*dz + dz_small;
- pMC->Gspos("BLO1", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
- pMC->Gspos("BLO1", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
- pMC->Gspos("BLO2", 1, "BFMO", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BLO3", 1, "BFMO", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BLO1", 1, "BFMO", 0., 0.,-zpos, 0, "ONLY");
+ gMC->Gspos("BLO1", 2, "BFMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BLO2", 1, "BFMO", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BLO3", 1, "BFMO", 0., 0., 0., 0, "ONLY");
// PHI=60-120 (RICH)
tsparl[2] = (z_ou - z_ri -4*dz)/2;
tsparl[3] = 60.;
tsparl[4] = 120.;
- pMC->Gsvolu("BLO4", "TUBS", idtmed[1214], tsparl, 5);
- pMC->Gsdvt("BLD4", "BLO4", 20., 2, idtmed[1214], 3);
+ gMC->Gsvolu("BLO4", "TUBS", idtmed[1214], tsparl, 5);
+ gMC->Gsdvt("BLD4", "BLO4", 20., 2, idtmed[1214], 3);
tspar[0] = tsparl[0];
tspar[1] = tsparl[1];
tspar[2] = tsparl[2];
tspar[3] = 10. - dphi;
tspar[4] = 10.;
- pMC->Gsvolu("BL03", "TUBS", idtmed[1218], tspar, 5);
+ gMC->Gsvolu("BL03", "TUBS", idtmed[1218], tspar, 5);
tspar[0] = tsparl[0] + dr;
tspar[1] = tsparl[1] - dr;
tspar[2] = tsparl[2];
tspar[3] = 10. - dphi + ddphi;
tspar[4] = 10. - ddphi;
- pMC->Gsvolu("BL04", "TUBS", idtmed[1214], tspar, 5);
- pMC->Gspos("BL04", 1, "BL03", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("BL04", "TUBS", idtmed[1214], tspar, 5);
+ gMC->Gspos("BL04", 1, "BL03", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BL03", 1, "BLD4", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("BL03", 1, "BLD4", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("BLO4", 1, "BFMO", 0., 0., 293.125, 0, "ONLY");
- pMC->Gspos("BLO4", 2, "BFMO", 0., 0.,-293.125, 0, "ONLY");
+ gMC->Gspos("BLO4", 1, "BFMO", 0., 0., 293.125, 0, "ONLY");
+ gMC->Gspos("BLO4", 2, "BFMO", 0., 0.,-293.125, 0, "ONLY");
- pMC->Gspos("BFMO", 1, "ALIC", 0., 0., 0., 0, "ONLY");
- pMC->Gsatt("BFMO", "SEEN", 0);
+ gMC->Gspos("BFMO", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gsatt("BFMO", "SEEN", 0);
}
//_____________________________________________________________________________
// Draw a shaded view of the space frame
//
- 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("BFMO","seen",0);
- pMC->Gsatt("BRO1","seen",1);
- pMC->Gsatt("BRI1","seen",0);
- pMC->Gsatt("BRO2","seen",1);
- pMC->Gsatt("BRI2","seen",0);
- pMC->Gsatt("BRO3","seen",1);
- pMC->Gsatt("BRI3","seen",0);
- pMC->Gsatt("BLO1","seen",0);
- pMC->Gsatt("BLD1","seen",0);
- pMC->Gsatt("BLO2","seen",0);
- pMC->Gsatt("BLD2","seen",0);
- pMC->Gsatt("BLO3","seen",0);
- pMC->Gsatt("BLD3","seen",0);
- pMC->Gsatt("BL01","seen",1);
- pMC->Gsatt("BL02","seen",1);
- pMC->Gsatt("BL11","seen",1);
- pMC->Gsatt("BL12","seen",1);
- pMC->Gsatt("BLO4","seen",0);
- pMC->Gsatt("BLD4","seen",0);
- pMC->Gsatt("BL03","seen",1);
- pMC->Gsatt("BL04","seen",1);
+ gMC->Gsatt("BFMO","seen",0);
+ gMC->Gsatt("BRO1","seen",1);
+ gMC->Gsatt("BRI1","seen",0);
+ gMC->Gsatt("BRO2","seen",1);
+ gMC->Gsatt("BRI2","seen",0);
+ gMC->Gsatt("BRO3","seen",1);
+ gMC->Gsatt("BRI3","seen",0);
+ gMC->Gsatt("BLO1","seen",0);
+ gMC->Gsatt("BLD1","seen",0);
+ gMC->Gsatt("BLO2","seen",0);
+ gMC->Gsatt("BLD2","seen",0);
+ gMC->Gsatt("BLO3","seen",0);
+ gMC->Gsatt("BLD3","seen",0);
+ gMC->Gsatt("BL01","seen",1);
+ gMC->Gsatt("BL02","seen",1);
+ gMC->Gsatt("BL11","seen",1);
+ gMC->Gsatt("BL12","seen",1);
+ gMC->Gsatt("BLO4","seen",0);
+ gMC->Gsatt("BLD4","seen",0);
+ gMC->Gsatt("BL03","seen",1);
+ gMC->Gsatt("BL04","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 10, 10, .015, .015);
- pMC->Gdhead(1111, "Space Frame");
- pMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 10, 10, .015, .015);
+ gMC->Gdhead(1111, "Space Frame");
+ gMC->Gdman(18, 4, "MAN");
}
//_____________________________________________________________________________
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Float_t r2;
Float_t phid, phim, tpar[3], pbox[3], zfil_out, h, r, tspar[5];
Float_t w1, dh, am, bm, dl,cm, hm, dr, dx, xl;
trdpar[3] = dh / 2.;
AliMatrix(idrotm[1900], 90., 0., 0., 0., 90., 90.);
AliMatrix(idrotm[1901], 270., 0., 90., 90., 0., 0.);
- pMC->Gsvolu("HUFL", "TRD1", idtmed[1956], trdpar, 4);
+ gMC->Gsvolu("HUFL", "TRD1", idtmed[1956], trdpar, 4);
r2 = hullen + 2020.;
- pMC->Gspos("HUFL", 1, "ALIC", 70.,-100-trdpar[3] , r2, idrotm[1900], "ONLY");
+ gMC->Gspos("HUFL", 1, "ALIC", 70.,-100-trdpar[3] , r2, idrotm[1900], "ONLY");
// RB24/26 wall
tspar[2] = hullen;
tspar[3] = phid - 90.;
tspar[4] = 270. - phid;
- pMC->Gsvolu("HUWA", "TUBS", idtmed[1956], tspar, 5);
- pMC->Gspos("HUWA", 1, "ALIC", 70., 40.,2020+hullen , 0, "ONLY");
+ gMC->Gsvolu("HUWA", "TUBS", idtmed[1956], tspar, 5);
+ gMC->Gspos("HUWA", 1, "ALIC", 70., 40.,2020+hullen , 0, "ONLY");
// tunnelplug
tpar[0] = 0.;
tpar[1] = 50.;
tpar[2] = 60.;
- pMC->Gsvolu("HUP2", "TUBE", idtmed[1954], tpar, 3);
+ gMC->Gsvolu("HUP2", "TUBE", idtmed[1954], tpar, 3);
// END WALL
pbox[0] = 1200.;
pbox[1] = 1300.;
pbox[2] = 60.;
- pMC->Gsvolu("HEW1", "BOX ", idtmed[1956], pbox, 3);
- pMC->Gspos("HUP2", 1, "HEW1", 0.,-404., 0., 0, "ONLY");
- pMC->Gspos("HEW1", 1, "ALIC", 0., 404., 1960, 0, "ONLY");
+ gMC->Gsvolu("HEW1", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gspos("HUP2", 1, "HEW1", 0.,-404., 0., 0, "ONLY");
+ gMC->Gspos("HEW1", 1, "ALIC", 0., 404., 1960, 0, "ONLY");
// hall floor
trdpar[1] = TMath::Tan(phid * kDegrad) * 190. + 700.;
trdpar[2] = 550.;
trdpar[3] = 95.;
- pMC->Gsvolu("HHF1", "TRD1", idtmed[1956], trdpar, 4);
- pMC->Gspos("HHF1", 1, "ALIC", 0., -801., 1350., idrotm[1900], "ONLY");
- pMC->Gspos("HHF1", 2, "ALIC", 0., -801.,-1350., idrotm[1900], "ONLY");
+ gMC->Gsvolu("HHF1", "TRD1", idtmed[1956], trdpar, 4);
+ gMC->Gspos("HHF1", 1, "ALIC", 0., -801., 1350., idrotm[1900], "ONLY");
+ gMC->Gspos("HHF1", 2, "ALIC", 0., -801.,-1350., idrotm[1900], "ONLY");
// hall side walls
trapar[9] = trapar[5];
trapar[10] = trapar[6];
dx = trapar[4] * 1.5 + 700. - trapar[5] * .5;
- pMC->Gsvolu("HHW1", "TRAP", idtmed[1956], trapar, 11);
- pMC->Gspos("HHW1", 1, "ALIC", dx, -896+trapar[3], 1350., 0, "ONLY");
- pMC->Gspos("HHW1", 2, "ALIC",-dx, -896+trapar[3], 1350., idrotm[1901], "ONLY");
- pMC->Gspos("HHW1", 3, "ALIC", dx, -896+trapar[3], -1350., 0, "ONLY");
- pMC->Gspos("HHW1", 4, "ALIC",-dx, -896+trapar[3], -1350., idrotm[1901], "ONLY");
+ gMC->Gsvolu("HHW1", "TRAP", idtmed[1956], trapar, 11);
+ gMC->Gspos("HHW1", 1, "ALIC", dx, -896+trapar[3], 1350., 0, "ONLY");
+ gMC->Gspos("HHW1", 2, "ALIC",-dx, -896+trapar[3], 1350., idrotm[1901], "ONLY");
+ gMC->Gspos("HHW1", 3, "ALIC", dx, -896+trapar[3], -1350., 0, "ONLY");
+ gMC->Gspos("HHW1", 4, "ALIC",-dx, -896+trapar[3], -1350., idrotm[1901], "ONLY");
pbox[0] = 50.;
pbox[1] = (500. - (trapar[3] * 2. - 896.)) / 2.;
pbox[2] = 1900.;
- pMC->Gsvolu("HBW1", "BOX ", idtmed[1956], pbox, 3);
- pMC->Gspos("HBW1", 1, "ALIC", 1120., 500-pbox[1], 0., 0, "ONLY");
- pMC->Gspos("HBW1", 2, "ALIC", -1120., 500-pbox[1], 0., 0, "ONLY");
+ gMC->Gsvolu("HBW1", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gspos("HBW1", 1, "ALIC", 1120., 500-pbox[1], 0., 0, "ONLY");
+ gMC->Gspos("HBW1", 2, "ALIC", -1120., 500-pbox[1], 0., 0, "ONLY");
// slanted wall close to L3 magnet
trapar[10] = trapar[6];
w1 = trapar[4];
dx = cm*TMath::Tan(phid * kDegrad) + 700. + trapar[4] * 1.5 - trapar[5] * .5;
- pMC->Gsvolu("HHW2", "TRAP", idtmed[1956], trapar, 11);
+ gMC->Gsvolu("HHW2", "TRAP", idtmed[1956], trapar, 11);
r2 = cm - 896. + trapar[3];
- pMC->Gspos("HHW2", 1, "ALIC", dx, r2, 0., 0, "ONLY");
- pMC->Gspos("HHW2", 2, "ALIC",-dx, r2, 0., idrotm[1901], "ONLY");
+ gMC->Gspos("HHW2", 1, "ALIC", dx, r2, 0., 0, "ONLY");
+ gMC->Gspos("HHW2", 2, "ALIC",-dx, r2, 0., idrotm[1901], "ONLY");
trapar[3] = cm / 2.;
trapar[4] = w1 + cm / 2.;
trapar[5] = w1;
trapar[9] = trapar[5];
trapar[10] = trapar[6];
dx = 1170. - trapar[4] * .5 - trapar[5] * .5;
- pMC->Gsvolu("HHW3", "TRAP", idtmed[1956], trapar, 11);
+ gMC->Gsvolu("HHW3", "TRAP", idtmed[1956], trapar, 11);
r2 = trapar[3] - 896.;
- pMC->Gspos("HHW3", 1, "ALIC", dx, r2, 0., 0, "ONLY");
- pMC->Gspos("HHW3", 2, "ALIC",-dx, r2, 0., idrotm[1901], "ONLY");
+ gMC->Gspos("HHW3", 1, "ALIC", dx, r2, 0., 0, "ONLY");
+ gMC->Gspos("HHW3", 2, "ALIC",-dx, r2, 0., idrotm[1901], "ONLY");
tspar[0] = 1070.;
tspar[2] = 1900.;
tspar[3] = 0.;
tspar[4] = 180.;
- pMC->Gsvolu("HHC1", "TUBS", idtmed[1956], tspar, 5);
- pMC->Gspos("HHC1", 1, "ALIC", 0., 500., 0., 0, "ONLY");
+ gMC->Gsvolu("HHC1", "TUBS", idtmed[1956], tspar, 5);
+ gMC->Gspos("HHC1", 1, "ALIC", 0., 500., 0., 0, "ONLY");
trdpar[0] = 1170 - trapar[4] * 2.;
trdpar[1] = trdpar[0] + TMath::Tan(phim * kDegrad) * 76.;
trdpar[2] = 800.;
trdpar[3] = 38.;
- pMC->Gsvolu("HHF2", "TRD1", idtmed[1956], trdpar, 4);
- pMC->Gspos("HHF2", 1, "ALIC", 0., -858., 0., idrotm[1900], "ONLY");
+ gMC->Gsvolu("HHF2", "TRD1", idtmed[1956], trdpar, 4);
+ gMC->Gspos("HHF2", 1, "ALIC", 0., -858., 0., idrotm[1900], "ONLY");
// pillars for working platform
pbox[0] = 40.;
pbox[1] = 120.;
pbox[2] = 550.;
- pMC->Gsvolu("HPIL", "BOX ", idtmed[1956], pbox, 3);
- pMC->Gspos("HPIL", 1, "ALIC", 165.,-706+pbox[1] , 1350., 0, "ONLY");
- pMC->Gspos("HPIL", 2, "ALIC",-165.,-706+pbox[1] , 1350., 0, "ONLY");
+ gMC->Gsvolu("HPIL", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gspos("HPIL", 1, "ALIC", 165.,-706+pbox[1] , 1350., 0, "ONLY");
+ gMC->Gspos("HPIL", 2, "ALIC",-165.,-706+pbox[1] , 1350., 0, "ONLY");
// concrete beam shield
pbox[0] = 402.5;
pbox[1] = 260.;
pbox[2] = 120.;
- pMC->Gsvolu("HMBS", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gsvolu("HMBS", "BOX ", idtmed[1956], pbox, 3);
pbox[0] = 85.;
pbox[1] = 100.;
- pMC->Gsvolu("HBBS", "BOX ", idtmed[1956], pbox, 3);
- pMC->Gspos("HBBS", 1, "HMBS", -157.5, 0., 0., 0, "ONLY");
+ gMC->Gsvolu("HBBS", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gspos("HBBS", 1, "HMBS", -157.5, 0., 0., 0, "ONLY");
pbox[0] = 40.;
pbox[1] = 130.;
- pMC->Gsvolu("HPBS", "BOX ", idtmed[1956], pbox, 3);
- pMC->Gspos("HPBS", 1, "HMBS", 202.5, 30., 0., 0, "ONLY");
- pMC->Gspos("HMBS", 1, "ALIC", 157.5, -50., -820., 0, "ONLY");
+ gMC->Gsvolu("HPBS", "BOX ", idtmed[1956], pbox, 3);
+ gMC->Gspos("HPBS", 1, "HMBS", 202.5, 30., 0., 0, "ONLY");
+ gMC->Gspos("HMBS", 1, "ALIC", 157.5, -50., -820., 0, "ONLY");
// MUON FILTER
par[0] = 30.;
par[1] = 310.;
par[2] = (zfil_out - zfil_in) / 2.;
- pMC->Gsvolu("HXFI", "TUBE", idtmed[1949], par, 3);
+ gMC->Gsvolu("HXFI", "TUBE", idtmed[1949], par, 3);
dz = (zfil_in + zfil_out) / 2.;
par[2] -= 10.;
- pMC->Gsvolu("HXII", "TUBE", idtmed[1909], par, 3);
- pMC->Gspos("HXII", 1, "HXFI", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("HXFI", 1, "ALIC", 0., 0., dz, 0, "ONLY");
+ gMC->Gsvolu("HXII", "TUBE", idtmed[1909], par, 3);
+ gMC->Gspos("HXII", 1, "HXFI", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("HXFI", 1, "ALIC", 0., 0., dz, 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of Experimental Hall
//
- 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("HUFL","seen",1);
- pMC->Gsatt("HUWA","seen",1);
- pMC->Gsatt("HUP2","seen",1);
- pMC->Gsatt("HEW1","seen",1);
- pMC->Gsatt("HHF1","seen",1);
- pMC->Gsatt("HHW1","seen",1);
- pMC->Gsatt("HBW1","seen",1);
- pMC->Gsatt("HHW2","seen",1);
- pMC->Gsatt("HHW3","seen",1);
- pMC->Gsatt("HHC1","seen",1);
- pMC->Gsatt("HHF2","seen",1);
- pMC->Gsatt("HPIL","seen",1);
- pMC->Gsatt("HMBS","seen",1);
- pMC->Gsatt("HBBS","seen",1);
- pMC->Gsatt("HPBS","seen",1);
- pMC->Gsatt("HXFI","seen",1);
- pMC->Gsatt("HXII","seen",1);
+ gMC->Gsatt("HUFL","seen",1);
+ gMC->Gsatt("HUWA","seen",1);
+ gMC->Gsatt("HUP2","seen",1);
+ gMC->Gsatt("HEW1","seen",1);
+ gMC->Gsatt("HHF1","seen",1);
+ gMC->Gsatt("HHW1","seen",1);
+ gMC->Gsatt("HBW1","seen",1);
+ gMC->Gsatt("HHW2","seen",1);
+ gMC->Gsatt("HHW3","seen",1);
+ gMC->Gsatt("HHC1","seen",1);
+ gMC->Gsatt("HHF2","seen",1);
+ gMC->Gsatt("HPIL","seen",1);
+ gMC->Gsatt("HMBS","seen",1);
+ gMC->Gsatt("HBBS","seen",1);
+ gMC->Gsatt("HPBS","seen",1);
+ gMC->Gsatt("HXFI","seen",1);
+ gMC->Gsatt("HXII","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
if (gAlice->GetModule("ZDC") == 0) {
//
// ZDC is not present
//
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 12, 7.5, .005, .005);
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 12, 7.5, .005, .005);
} else {
//
// ZDC is present
//
- pMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 16000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 17.5, 10, .0019, .0019);
+ gMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 16000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 17.5, 10, .0019, .0019);
}
- pMC->Gdhead(1111, "Experimental Hall");
- pMC->Gdman(18, 2, "MAN");
+ gMC->Gdhead(1111, "Experimental Hall");
+ gMC->Gdman(18, 2, "MAN");
}
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-299;
Float_t dpar[13];
par[7] = 600.;
par[8] = 580.;
par[9] = 790.;
- pMC->Gsvolu("L3MO", "PGON", idtmed[334], par, 10);
- pMC->Gspos("L3MO", 1, "ALIC", 0., -30., 0., 0, "ONLY");
+ gMC->Gsvolu("L3MO", "PGON", idtmed[334], par, 10);
+ gMC->Gspos("L3MO", 1, "ALIC", 0., -30., 0., 0, "ONLY");
// Define coils
par[6] = 690.;
par[8] = 585.;
par[9] = 690.;
- pMC->Gsvolu("L3CO", "PGON", idtmed[328], par, 10);
- pMC->Gspos("L3CO", 1, "L3MO", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("L3CO", "PGON", idtmed[328], par, 10);
+ gMC->Gspos("L3CO", 1, "L3MO", 0., 0., 0., 0, "ONLY");
par[5] = 580.;
par[6] = 585.;
par[8] = 580.;
par[9] = 585.;
- pMC->Gsvolu("L3C1", "PGON", idtmed[308], par, 10);
- pMC->Gspos("L3C1", 1, "L3MO", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("L3C1", "PGON", idtmed[308], par, 10);
+ gMC->Gspos("L3C1", 1, "L3MO", 0., 0., 0., 0, "ONLY");
// Define yoke
par[6] = 790.;
par[8] = 690.;
par[9] = 790.;
- pMC->Gsvolu("L3YO", "PGON", idtmed[329], par, 10);
- pMC->Gspos("L3YO", 1, "L3MO", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("L3YO", "PGON", idtmed[329], par, 10);
+ gMC->Gspos("L3YO", 1, "L3MO", 0., 0., 0., 0, "ONLY");
// Define the return yoke of L3 (DOOR)
par[7] = 700.;
par[8] = par[5];
par[9] = par[6];
- pMC->Gsvolu("L3DO", "PGON", idtmed[334], par, 10);
+ gMC->Gsvolu("L3DO", "PGON", idtmed[334], par, 10);
par[4] = 610.;
par[5] = 0.;
par[7] = 700.;
par[8] = par[5];
par[9] = par[6];
- pMC->Gsvolu("L3FR", "PGON", idtmed[329], par, 10);
+ gMC->Gsvolu("L3FR", "PGON", idtmed[329], par, 10);
// INNER LAYER
par[4] = 600.;
par[7] = 610.;
- pMC->Gsvolu("L3IR", "PGON", idtmed[309], par, 10);
+ gMC->Gsvolu("L3IR", "PGON", idtmed[309], par, 10);
// DOOR OPENING
dpar[10] = 700.;
dpar[11] = dpar[5];
dpar[12] = dpar[6] + 50.;
- pMC->Gsvolu("L3O1", "PGON", idtmed[314], dpar, 13);
+ gMC->Gsvolu("L3O1", "PGON", idtmed[314], dpar, 13);
par[4] = 600.;
par[5] = 0.;
par[6] = 163.5;
par[7] = 610.;
par[8] = 0.;
par[9] = 163.5;
- pMC->Gsvolu("L3O2", "PGON", idtmed[314], par, 10);
+ gMC->Gsvolu("L3O2", "PGON", idtmed[314], par, 10);
// THE DOOR OPENING HAS TO BE PLACED WITH 'MANY' SINCE THE REGION
// WILL CONTAIN A MUON CHAMBER, BEAM PIPE AND BEAM SHIELD
// PLACED WITH 'ONLY'.
- pMC->Gspos("L3O1", 1, "L3FR", 0., 30., 0., 0, "MANY");
- pMC->Gspos("L3O2", 1, "L3IR", 0., 30., 0., 0, "MANY");
+ gMC->Gspos("L3O1", 1, "L3FR", 0., 30., 0., 0, "MANY");
+ gMC->Gspos("L3O2", 1, "L3IR", 0., 30., 0., 0, "MANY");
- pMC->Gspos("L3FR", 1, "L3DO", 0., 0., 0., 0, "MANY");
- pMC->Gspos("L3IR", 1, "L3DO", 0., 0., 0., 0, "MANY");
+ gMC->Gspos("L3FR", 1, "L3DO", 0., 0., 0., 0, "MANY");
+ gMC->Gspos("L3IR", 1, "L3DO", 0., 0., 0., 0, "MANY");
- pMC->Gspos("L3DO", 1, "ALIC", 0., -30., 0., 0, "MANY");
+ gMC->Gspos("L3DO", 1, "ALIC", 0., -30., 0., 0, "MANY");
AliMatrix(idrotm[300], 90., 0., 90., 90., 180., 0.);
- pMC->Gspos("L3DO", 2, "ALIC", 0., -30., 0., idrotm[300], "MANY");
+ gMC->Gspos("L3DO", 2, "ALIC", 0., -30., 0., idrotm[300], "MANY");
}
//_____________________________________________________________________________
Int_t idrotm[2099];
- AliMC* pMC = AliMC::GetMC();
-
//
// The peam pipe up to the Front Absorber
filtmp=gSystem->ExpandPathName(pipename);
//
AliMatrix(idrotm[2001],90.,0.,90.,90.,180.,0.);
- pMC->Gspos("QBPM",1,"ALIC",0,0,0,idrotm[2001],"ONLY");
+ gMC->Gspos("QBPM",1,"ALIC",0,0,0,idrotm[2001],"ONLY");
//
// PLACE ION PUMP (QIPM) AT Z=-385.
//
- pMC->Gspos("QIPM",1,"ALIC",0,0,-385,idrotm[2001],"ONLY");
+ gMC->Gspos("QIPM",1,"ALIC",0,0,-385,idrotm[2001],"ONLY");
- pMC->Gsatt("QIPM", "SEEN", 0);
- pMC->Gsatt("QBPM", "SEEN", 0);
- pMC->Gsatt("QB20", "SEEN", 0);
+ gMC->Gsatt("QIPM", "SEEN", 0);
+ gMC->Gsatt("QBPM", "SEEN", 0);
+ gMC->Gsatt("QB20", "SEEN", 0);
}
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Float_t tpar[3], dzmo, zpos, abs_d, abs_l;
Float_t r2, dr;
tpar[1] = 3.;
tpar[2] = (abs_d + 700.) / 2.;
dzmo = tpar[2] - abs_d;
- pMC->Gsvolu("QQMO", "TUBE", idtmed[2015], tpar, 3);
- pMC->Gspos("QQMO", 1, "ALIC", 0., 0., -dzmo, 0, "ONLY");
+ gMC->Gsvolu("QQMO", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gspos("QQMO", 1, "ALIC", 0., 0., -dzmo, 0, "ONLY");
// BEAM PIPE IN DRIFT SPACE
tpar[0] = 0.;
tpar[1] = 3.;
tpar[2] = 30;
- pMC->Gsvolu("QDT1", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT1", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = 2.9;
- pMC->Gsvolu("QTB1", "TUBE", idtmed[2004], tpar, 3);
- pMC->Gspos("QTB1", 1, "QDT1", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QDT1", 1, "QQMO", 0., 0., dzmo, 0, "ONLY");
+ gMC->Gsvolu("QTB1", "TUBE", idtmed[2004], tpar, 3);
+ gMC->Gspos("QTB1", 1, "QDT1", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QDT1", 1, "QQMO", 0., 0., dzmo, 0, "ONLY");
// 30-90
tpar[0] = 0.;
tpar[1] = 3.;
tpar[2] = 30.;
- pMC->Gsvolu("QDT2", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT2", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = 2.9;
- pMC->Gsvolu("QTB2", "TUBE", idtmed[2004], tpar, 3);
- pMC->Gspos("QTB2", 1, "QDT2", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QDT2", 1, "QQMO", 0., 0., dzmo, 0, "ONLY");
+ gMC->Gsvolu("QTB2", "TUBE", idtmed[2004], tpar, 3);
+ gMC->Gspos("QTB2", 1, "QDT2", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QDT2", 1, "QQMO", 0., 0., dzmo, 0, "ONLY");
// beam pipe outside absorber on the left side
tpar[0] = 0.;
tpar[1] = 3.;
tpar[2] = (z_flange - 30)/2;
- pMC->Gsvolu("QDT5", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT5", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = 2.9;
zpos = -30. - tpar[2] + dzmo;
- pMC->Gsvolu("QTB5", "TUBE", idtmed[2004], tpar, 3);
- pMC->Gspos("QTB5", 1, "QDT5", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QDT5", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QTB5", "TUBE", idtmed[2004], tpar, 3);
+ gMC->Gspos("QTB5", 1, "QDT5", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QDT5", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// STRAIGHT STEEL PIECE
tpar[0] = 0.;
tpar[1] = r2 + dr;
tpar[2] = (zpos + 700.) / 2.;
- pMC->Gsvolu("QDT7", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT7", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = r2;
- pMC->Gsvolu("QTB7", "TUBE", idtmed[2018], tpar, 3);
- pMC->Gspos("QTB7", 1, "QDT7", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("QTB7", "TUBE", idtmed[2018], tpar, 3);
+ gMC->Gspos("QTB7", 1, "QDT7", 0., 0., 0., 0, "ONLY");
zpos = zpos - tpar[2] + dzmo;
- pMC->Gspos("QDT7", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("QDT7", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// flange dn 63
tpar[0] = 3.;
tpar[1] = 5.7;
tpar[2] = 2.;
- pMC->Gsvolu("QN63", "TUBE", idtmed[2018], tpar, 3);
+ gMC->Gsvolu("QN63", "TUBE", idtmed[2018], tpar, 3);
zpos = tpar[2] - z_flange;
- pMC->Gspos("QN63", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("QN63", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
// Replace Absorber or Shield by Beam-Pipe
if (gAlice->GetModule("ABSO") == 0) {
- pMC->Gspos("QN63", 2, "ALIC", 0., 0., z_flange, 0, "ONLY");
+ gMC->Gspos("QN63", 2, "ALIC", 0., 0., z_flange, 0, "ONLY");
r2 = 2.9;
dr = .1;
tpar[0] = 0.;
tpar[1] = r2 + dr;
tpar[2] = (z_flange - abs_d) / 2.;
- pMC->Gsvolu("QDT8", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT8", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = r2;
- pMC->Gsvolu("QTB8", "TUBE", idtmed[2004], tpar, 3);
- pMC->Gspos("QTB8", 1, "QDT8", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("QTB8", "TUBE", idtmed[2004], tpar, 3);
+ gMC->Gspos("QTB8", 1, "QDT8", 0., 0., 0., 0, "ONLY");
zpos = abs_d + tpar[2];
- pMC->Gspos("QDT8", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("QDT8", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
dr = .015;
tpar[0] = 0.;
tpar[1] = r2 + dr;
tpar[2] = (abs_l - z_flange) / 2.;
- pMC->Gsvolu("QDTS", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDTS", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = r2;
- pMC->Gsvolu("QTBS", "TUBE", idtmed[2018], tpar, 3);
- pMC->Gspos("QTBS", 1, "QDTS", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("QTBS", "TUBE", idtmed[2018], tpar, 3);
+ gMC->Gspos("QTBS", 1, "QDTS", 0., 0., 0., 0, "ONLY");
zpos = tpar[2] + z_flange;
- pMC->Gspos("QDTS", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("QDTS", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
}
if (gAlice->GetModule("SHIL") == 0) {
r2 = 2.9;
tpar[0] = 0.;
tpar[1] = r2 + dr;
tpar[2] = (700. - abs_l) / 2.;
- pMC->Gsvolu("QDT9", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QDT9", "TUBE", idtmed[2015], tpar, 3);
tpar[0] = r2;
- pMC->Gsvolu("QTB9", "TUBE", idtmed[2018], tpar, 3);
- pMC->Gspos("QTB9", 1, "QDT9", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("QTB9", "TUBE", idtmed[2018], tpar, 3);
+ gMC->Gspos("QTB9", 1, "QDT9", 0., 0., 0., 0, "ONLY");
zpos = abs_l + tpar[2];
- pMC->Gspos("QDT9", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("QDT9", 1, "ALIC", 0., 0., zpos, 0, "ONLY");
}
}
// Draw a shaded view of the Beam Pipe
//
- 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("QQMO","seen",1);
- pMC->Gsatt("QDT1","seen",1);
- pMC->Gsatt("QTB1","seen",1);
- pMC->Gsatt("QDT2","seen",1);
- pMC->Gsatt("QTB2","seen",1);
- pMC->Gsatt("QDT5","seen",1);
- pMC->Gsatt("QTB5","seen",1);
- pMC->Gsatt("QDT7","seen",1);
- pMC->Gsatt("QTB7","seen",1);
- pMC->Gsatt("QN63","seen",1);
+ gMC->Gsatt("QQMO","seen",1);
+ gMC->Gsatt("QDT1","seen",1);
+ gMC->Gsatt("QTB1","seen",1);
+ gMC->Gsatt("QDT2","seen",1);
+ gMC->Gsatt("QTB2","seen",1);
+ gMC->Gsatt("QDT5","seen",1);
+ gMC->Gsatt("QTB5","seen",1);
+ gMC->Gsatt("QDT7","seen",1);
+ gMC->Gsatt("QTB7","seen",1);
+ gMC->Gsatt("QN63","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 3, 5, .04, .04);
- pMC->Gdhead(1111, "Beam Pipe");
- pMC->Gdman(16, 6, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 3, 5, .04, .04);
+ gMC->Gdhead(1111, "Beam Pipe");
+ gMC->Gdman(16, 6, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Float_t tpar[3], dzmo, zpos;
Float_t bepar[3], alpar[3],sspar[3],flange[3],vacpar[3];
Float_t bellow[3];
tpar[1] = 10.;
tpar[2] = 1400. / 2;
dzmo = tpar[2];
- pMC->Gsvolu("QQMO", "TUBE", idtmed[2015], tpar, 3);
+ gMC->Gsvolu("QQMO", "TUBE", idtmed[2015], tpar, 3);
// All beam pipe details as per the provisonal drawings given by Lars
// Leistam on 31.5.99
vacpar[1]=2.9;
vacpar[2]=bepar[2];
//
- pMC->Gsvolu("QQBE", "TUBE", idtmed[2004], bepar, 3);
- pMC->Gsvolu("VAC1", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC1", 1, "QQBE", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QQBE", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QQBE", "TUBE", idtmed[2004], bepar, 3);
+ gMC->Gsvolu("VAC1", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC1", 1, "QQBE", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QQBE", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// now beam pipes only in negative z-part for use in PMD.
vacpar[1]=2.9;
vacpar[2]=flange[2];
//
- pMC->Gsvolu("QFL1", "TUBE", idtmed[2018], flange, 3);
- pMC->Gsvolu("VAC2", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC2", 1, "QFL1", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QFL1", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QFL1", "TUBE", idtmed[2018], flange, 3);
+ gMC->Gsvolu("VAC2", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC2", 1, "QFL1", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QFL1", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// Aluminium alloy beam pipe, 1mm thick, 230 cm long
alpar[0]=0.0;
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=alpar[2];
- pMC->Gsvolu("QQAL", "TUBE", idtmed[2003], alpar, 3);
- pMC->Gsvolu("VAC3", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC3", 1, "QQAL", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QQAL", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QQAL", "TUBE", idtmed[2003], alpar, 3);
+ gMC->Gsvolu("VAC3", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC3", 1, "QQAL", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QQAL", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS tube 2.0 cm long, 0.8 mm thick, 5.96 cm OD
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=sspar[2];
- pMC->Gsvolu("QSS1", "TUBE", idtmed[2018], sspar, 3);
- pMC->Gsvolu("VAC4", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC4", 1, "QSS1", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QSS1", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QSS1", "TUBE", idtmed[2018], sspar, 3);
+ gMC->Gsvolu("VAC4", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC4", 1, "QSS1", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QSS1", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS Flange 3 cm thick 7.4 cm OD, 5.8 cm ID
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=flange[2];
- pMC->Gsvolu("QFL2", "TUBE", idtmed[2018], flange, 3);
- pMC->Gsvolu("VAC5", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC5", 1, "QFL2", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QFL2", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QFL2", "TUBE", idtmed[2018], flange, 3);
+ gMC->Gsvolu("VAC5", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC5", 1, "QFL2", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QFL2", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS tube 4.0 cm long, 0.8 mm thick, 5.96 cm OD
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=sspar[2];
- pMC->Gsvolu("QSS2", "TUBE", idtmed[2018], sspar, 3);
- pMC->Gsvolu("VAC6", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC6", 1, "QSS2", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QSS2", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QSS2", "TUBE", idtmed[2018], sspar, 3);
+ gMC->Gsvolu("VAC6", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC6", 1, "QSS2", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QSS2", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// *************
//
bellow[2]=zundul;
zpos = zpos - sspar[2] - bellow[2];
- pMC->Gspos("BELO", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BELO", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS tube 20.0 cm long, 0.8 mm thick, 5.96 cm OD
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=sspar[2];
- pMC->Gsvolu("QSS3", "TUBE", idtmed[2018], sspar, 3);
- pMC->Gsvolu("VAC7", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC7", 1, "QSS3", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QSS3", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QSS3", "TUBE", idtmed[2018], sspar, 3);
+ gMC->Gsvolu("VAC7", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC7", 1, "QSS3", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QSS3", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// *************
// SS Bellow 8.4 cm long, 6.5 cm ID, 7.5 cm OD
// **************
//
zpos = zpos - sspar[2] - bellow[2];
- pMC->Gspos("BELO", 2, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("BELO", 2, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS tube 4.7 cm long, 0.8 mm thick,
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=sspar[2];
- pMC->Gsvolu("QSS4", "TUBE", idtmed[2018], sspar, 3);
- pMC->Gsvolu("VAC8", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC8", 1, "QSS4", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QSS4", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QSS4", "TUBE", idtmed[2018], sspar, 3);
+ gMC->Gsvolu("VAC8", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC8", 1, "QSS4", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QSS4", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
// SS Flange 2.2 cm thick, ID=5.8 cm, OD=9.8 cm
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=flange[2];
- pMC->Gsvolu("QFL3", "TUBE", idtmed[2018], flange, 3);
- pMC->Gsvolu("VAC9", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VAC9", 1, "QFL3", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QFL3", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QFL3", "TUBE", idtmed[2018], flange, 3);
+ gMC->Gsvolu("VAC9", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VAC9", 1, "QFL3", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QFL3", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
//Total of 3150 mm from vertex on the negative side upto this point.
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=sspar[2];
- pMC->Gsvolu("QSS5", "TUBE", idtmed[2018], sspar, 3);
- pMC->Gsvolu("VA10", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VA10", 1, "QSS5", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QSS5", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QSS5", "TUBE", idtmed[2018], sspar, 3);
+ gMC->Gsvolu("VA10", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VA10", 1, "QSS5", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QSS5", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
//
// last item, undulated SS beam pipe, pitch=0.25, length= 342.0 cm
Undulation("UNDL",pitch,thick,zundul,rundul,cn48);
//
zpos = zpos - sspar[2] - zundul;
- pMC->Gspos("UNDL", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gspos("UNDL", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
//
- pMC->Gspos("QQMO", 1, "ALIC", 0., 0., 0.1, 0, "ONLY");
+ gMC->Gspos("QQMO", 1, "ALIC", 0., 0., 0.1, 0, "ONLY");
// total of 6770 mm length upto this point, end of undulated beam
// pipe section.
vacpar[0]=0.0;
vacpar[1]=2.9;
vacpar[2]=flange[2];
- pMC->Gsvolu("QFL4", "TUBE", idtmed[2018], flange, 3);
- pMC->Gsvolu("VC11", "TUBE", idtmed[2015], vacpar, 3);
- pMC->Gspos("VC11", 1, "QFL4", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("QFL4", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
+ gMC->Gsvolu("QFL4", "TUBE", idtmed[2018], flange, 3);
+ gMC->Gsvolu("VC11", "TUBE", idtmed[2015], vacpar, 3);
+ gMC->Gspos("VC11", 1, "QFL4", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("QFL4", 1, "QQMO", 0., 0., zpos, 0, "ONLY");
}
// Draw a shaded view of the Beam Pipe
//
- 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("QQMO","seen",1);
- pMC->Gsatt("QQBE","seen",1);
- pMC->Gsatt("QFL1","seen",1);
- pMC->Gsatt("QQAL","seen",1);
- pMC->Gsatt("QSS1","seen",1);
- pMC->Gsatt("QFL2","seen",1);
- pMC->Gsatt("QSS2","seen",1);
- pMC->Gsatt("QSS3","seen",1);
- pMC->Gsatt("QSS4","seen",1);
- pMC->Gsatt("QFL3","seen",1);
- pMC->Gsatt("QSS5","seen",1);
- pMC->Gsatt("BELO","seen",1);
- pMC->Gsatt("UNDL","seen",1);
+ gMC->Gsatt("QQMO","seen",1);
+ gMC->Gsatt("QQBE","seen",1);
+ gMC->Gsatt("QFL1","seen",1);
+ gMC->Gsatt("QQAL","seen",1);
+ gMC->Gsatt("QSS1","seen",1);
+ gMC->Gsatt("QFL2","seen",1);
+ gMC->Gsatt("QSS2","seen",1);
+ gMC->Gsatt("QSS3","seen",1);
+ gMC->Gsatt("QSS4","seen",1);
+ gMC->Gsatt("QFL3","seen",1);
+ gMC->Gsatt("QSS5","seen",1);
+ gMC->Gsatt("BELO","seen",1);
+ gMC->Gsatt("UNDL","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 3, 5, .04, .04);
- pMC->Gdhead(1111, "Beam Pipe");
- pMC->Gdman(16, 6, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 3, 5, .04, .04);
+ gMC->Gdhead(1111, "Beam Pipe");
+ gMC->Gdman(16, 6, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
const Float_t const1 = .293;
const Float_t const2 = .707;
- AliMC* pMC = AliMC::GetMC();
-
// Local variables
Int_t j, nwave;
Float_t dcone1[5], dcone2[5], dcone3[5], dcone4[5], dcone5[5],
dcone8[3] = dcone5[1];
dcone8[4] = dcone5[2];
- pMC->Gsvolu(cone[0], "CONE", idtmed[2015], dcone1, 5);
- pMC->Gsvolu(cone[1], "CONE", idtmed[2015], dcone2, 5);
- pMC->Gsvolu(cone[2], "CONE", idtmed[2015], dcone3, 5);
- pMC->Gsvolu(cone[3], "CONE", idtmed[2015], dcone4, 5);
- pMC->Gsvolu(cone[4], "CONE", idtmed[2015], dcone5, 5);
- pMC->Gsvolu(cone[5], "CONE", idtmed[2015], dcone6, 5);
- pMC->Gsvolu(cone[6], "CONE", idtmed[2015], dcone7, 5);
- pMC->Gsvolu(cone[7], "CONE", idtmed[2015], dcone8, 5);
- pMC->Gsatt(cone[0], "SEEN", 0);
- pMC->Gsatt(cone[1], "SEEN", 0);
- pMC->Gsatt(cone[2], "SEEN", 0);
- pMC->Gsatt(cone[3], "SEEN", 0);
- pMC->Gsatt(cone[4], "SEEN", 0);
- pMC->Gsatt(cone[5], "SEEN", 0);
- pMC->Gsatt(cone[6], "SEEN", 0);
- pMC->Gsatt(cone[7], "SEEN", 0);
+ gMC->Gsvolu(cone[0], "CONE", idtmed[2015], dcone1, 5);
+ gMC->Gsvolu(cone[1], "CONE", idtmed[2015], dcone2, 5);
+ gMC->Gsvolu(cone[2], "CONE", idtmed[2015], dcone3, 5);
+ gMC->Gsvolu(cone[3], "CONE", idtmed[2015], dcone4, 5);
+ gMC->Gsvolu(cone[4], "CONE", idtmed[2015], dcone5, 5);
+ gMC->Gsvolu(cone[5], "CONE", idtmed[2015], dcone6, 5);
+ gMC->Gsvolu(cone[6], "CONE", idtmed[2015], dcone7, 5);
+ gMC->Gsvolu(cone[7], "CONE", idtmed[2015], dcone8, 5);
+ gMC->Gsatt(cone[0], "SEEN", 0);
+ gMC->Gsatt(cone[1], "SEEN", 0);
+ gMC->Gsatt(cone[2], "SEEN", 0);
+ gMC->Gsatt(cone[3], "SEEN", 0);
+ gMC->Gsatt(cone[4], "SEEN", 0);
+ gMC->Gsatt(cone[5], "SEEN", 0);
+ gMC->Gsatt(cone[6], "SEEN", 0);
+ gMC->Gsatt(cone[7], "SEEN", 0);
// DEFINE AN IMAGINARY TUBE VOLUME FOR UNDULATED CHAMBER, FILL WITH VACUUM
dundul[1] = rundul + pitch + thick * 2;
//
dundul[0] = 1e-4;
- pMC->Gsvolu(undul, "TUBE", idtmed[2015], dundul, 3);
+ gMC->Gsvolu(undul, "TUBE", idtmed[2015], dundul, 3);
xc = 0;
yc = 0;
zc = -dundul[2] + dcone1[0];
for (j = 1; j <= nwave; ++j) {
- pMC->Gspos(cone[0], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[0], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone1[0] + dcone2[0];
- pMC->Gspos(cone[1], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[1], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone2[0] + dcone3[0];
- pMC->Gspos(cone[2], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[2], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone3[0] + dcone4[0];
- pMC->Gspos(cone[3], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[3], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone4[0] + dcone5[0];
- pMC->Gspos(cone[4], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[4], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone5[0] + dcone6[0];
- pMC->Gspos(cone[5], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[5], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone6[0] + dcone7[0];
- pMC->Gspos(cone[6], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[6], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone7[0] + dcone8[0];
- pMC->Gspos(cone[7], j, undul, xc, yc, zc, 0, "ONLY");
+ gMC->Gspos(cone[7], j, undul, xc, yc, zc, 0, "ONLY");
zc = zc + dcone8[0] + dcone1[0];
}
}
Float_t dzcoch1, dzcoch2, acc_min, dzs, zcone_e, zmag_in,
z_close, z_l3, shl1, shl4;
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-1699;
//abs_d = 90.; // DEFINES DRIFT LENGTH
parm[9] = 1900.;
parm[10] = 0.;
parm[11] = 30.;
- pMC->Gsvolu("YMOT", "PCON", idtmed[1715], parm, 12);
+ gMC->Gsvolu("YMOT", "PCON", idtmed[1715], parm, 12);
// beam shield ouside absorber inside l3
cpar[2] = abs_l * TMath::Tan(acc_min * kDegrad);
cpar[3] = 0.;
cpar[4] = z_l3 * TMath::Tan(acc_min * kDegrad);
- pMC->Gsvolu("YMS1", "CONE", idtmed[1759], cpar, 5);
+ gMC->Gsvolu("YMS1", "CONE", idtmed[1759], cpar, 5);
// OUTSIDE STEEL TUBE
// Pb/W
cpar[1] = cpar[2] - 4.;
cpar[3] = cpar[4] - 4.;
- pMC->Gsvolu("YSH1", "CONE", idtmed[1718], cpar, 5);
- pMC->Gspos("YSH1", 1, "YMS1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YSH1", "CONE", idtmed[1718], cpar, 5);
+ gMC->Gspos("YSH1", 1, "YMS1", 0., 0., 0., 0, "ONLY");
// COCHES FOR CHAMBERS
dzcoch1 = cz1 + 4. - (abs_l + shl1);
cpar[1] = cpar[2] - 3.;
cpar[3] = cpar[1] + dr;
cpar[4] = cpar[2] + dr;
- pMC->Gsvolu("YAC1", "CONE", idtmed[1714], cpar, 5);
- pMC->Gspos("YAC1", 1, "YMS1", 0., 0., dzcoch1, 0, "ONLY");
+ gMC->Gsvolu("YAC1", "CONE", idtmed[1714], cpar, 5);
+ gMC->Gspos("YAC1", 1, "YMS1", 0., 0., dzcoch1, 0, "ONLY");
cpar[2] = (cz2 + 4. - cpar[0]) * TMath::Tan(acc_min * kDegrad);
cpar[1] = cpar[2] - 3.;
cpar[3] = cpar[1] + dr;
cpar[4] = cpar[2] + dr;
- pMC->Gsvolu("YAC2", "CONE", idtmed[1714], cpar, 5);
- pMC->Gspos("YAC2", 1, "YMS1", 0., 0., dzcoch2, 0, "ONLY");
+ gMC->Gsvolu("YAC2", "CONE", idtmed[1714], cpar, 5);
+ gMC->Gspos("YAC2", 1, "YMS1", 0., 0., dzcoch2, 0, "ONLY");
// STEEL
cpar[0] = (cz1 + 4. + 20. - abs_l) / 2.;
cpar[3] = cpar[1] + dr;
cpar[4] = cpar[2] + dr;
dzcoch1 = abs_l + cpar[0] - (abs_l + shl1);
- pMC->Gsvolu("YSC1", "CONE", idtmed[1718], cpar, 5);
- pMC->Gspos("YSC1", 1, "YMS1", 0., 0., dzcoch1, 0, "ONLY");
+ gMC->Gsvolu("YSC1", "CONE", idtmed[1718], cpar, 5);
+ gMC->Gspos("YSC1", 1, "YMS1", 0., 0., dzcoch1, 0, "ONLY");
cpar[0] = 16.;
dr = cpar[0] * 2. * TMath::Tan(acc_min * kDegrad);
cpar[1] = cpar[2] - 3.;
cpar[3] = cpar[1] + dr;
cpar[4] = cpar[2] + dr;
- pMC->Gsvolu("YSC2", "CONE", idtmed[1718], cpar, 5);
- pMC->Gspos("YSC2", 1, "YMS1", -4., 0., dzcoch2, 0, "ONLY");
+ gMC->Gsvolu("YSC2", "CONE", idtmed[1718], cpar, 5);
+ gMC->Gspos("YSC2", 1, "YMS1", -4., 0., dzcoch2, 0, "ONLY");
// ... beam pipe
cpar[0] = shl1;
cpar[2] = r_abs + (abs_l - abs_c) * TMath::Tan(theta_open * kDegrad);
cpar[3] = 0.;
cpar[4] = cpar[2] + shl1 * 2. * TMath::Tan(theta_open * kDegrad);
- pMC->Gsvolu("YMB1", "CONE", idtmed[1755], cpar, 5);
+ gMC->Gsvolu("YMB1", "CONE", idtmed[1755], cpar, 5);
cpar[0] = shl1;
cpar[2] += -.8;
cpar[1] = cpar[2] - .2;
cpar[4] += -.8;
cpar[3] = cpar[4] - .2;
- pMC->Gsvolu("YBS1", "CONE", idtmed[1749], cpar, 5);
- pMC->Gspos("YBS1", 1, "YMB1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YBS1", "CONE", idtmed[1749], cpar, 5);
+ gMC->Gspos("YBS1", 1, "YMB1", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("YMB1", 1, "YMS1", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMB1", 1, "YMS1", 0., 0., 0., 0, "ONLY");
dz = shl1 + abs_l;
- pMC->Gspos("YMS1", 1, "YMOT", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("YMS1", 1, "YMOT", 0., 0., dz, 0, "ONLY");
// BEAM SHIELD OUTSIDE L3
cpar[2] = z_l3 * TMath::Tan(acc_min * kDegrad);
cpar[3] = 0.;
cpar[4] = zmag_in * TMath::Tan(acc_min * kDegrad);
- pMC->Gsvolu("YMS2", "CONE", idtmed[1759], cpar, 5);
+ gMC->Gsvolu("YMS2", "CONE", idtmed[1759], cpar, 5);
// OUTSIDE STEEL TUBE
// Pb/W
cpar[1] = cpar[2] - 4.;
cpar[3] = cpar[4] - 4.;
- pMC->Gsvolu("YSH2", "CONE", idtmed[1718], cpar, 5);
- pMC->Gspos("YSH2", 1, "YMS2", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YSH2", "CONE", idtmed[1718], cpar, 5);
+ gMC->Gspos("YSH2", 1, "YMS2", 0., 0., 0., 0, "ONLY");
// ... beam pipe
cpar[2] = r_abs + zs * TMath::Tan(theta_open * kDegrad);
cpar[3] = 0.;
cpar[4] = cpar[2] + cpar[0] * 2. * TMath::Tan(theta_open * kDegrad);
- pMC->Gsvolu("YMB2", "CONE", idtmed[1755], cpar, 5);
+ gMC->Gsvolu("YMB2", "CONE", idtmed[1755], cpar, 5);
cpar[2] += -.8;
cpar[1] = cpar[2] - .2;
cpar[4] += -.8;
cpar[3] = cpar[4] - .2;
- pMC->Gsvolu("YBS2", "CONE", idtmed[1749], cpar, 5);
- pMC->Gspos("YBS2", 1, "YMB2", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YBS2", "CONE", idtmed[1749], cpar, 5);
+ gMC->Gspos("YBS2", 1, "YMB2", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("YMB2", 1, "YMS2", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMB2", 1, "YMS2", 0., 0., 0., 0, "ONLY");
dz = cpar[0] + z_l3;
- pMC->Gspos("YMS2", 1, "YMOT", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("YMS2", 1, "YMOT", 0., 0., dz, 0, "ONLY");
pcpar[0] = 0.;
pcpar[1] = 360.;
pcpar[2] = 3.;
pcpar[9] = zmag_out - zmag_in;
pcpar[10] = 0.;
pcpar[11] = 30.;
- pMC->Gsvolu("YMS3", "PCON", idtmed[1759], pcpar, 12);
+ gMC->Gsvolu("YMS3", "PCON", idtmed[1759], pcpar, 12);
// OUTSIDE STEEL TUBE
pcpar[4] = pcpar[5] - 4.;
pcpar[7] = pcpar[8] - 4.;
pcpar[10] = pcpar[11] - 4.;
- pMC->Gsvolu("YSH3", "PCON", idtmed[1718], pcpar, 12);
- pMC->Gspos("YSH3", 1, "YMS3", 0., 0., 0., 0, "MANY");
+ gMC->Gsvolu("YSH3", "PCON", idtmed[1718], pcpar, 12);
+ gMC->Gspos("YSH3", 1, "YMS3", 0., 0., 0., 0, "MANY");
// ... beam pipe up to closing cone
cpar[2] = r_abs + zs * TMath::Tan(theta_open * kDegrad);
cpar[3] = 0.;
cpar[4] = cpar[2] + cpar[0] * 2. * TMath::Tan(theta_open * kDegrad);
- pMC->Gsvolu("YMB3", "CONE", idtmed[1755], cpar, 5);
+ gMC->Gsvolu("YMB3", "CONE", idtmed[1755], cpar, 5);
cpar[2] += -.8;
cpar[1] = cpar[2] - .2;
cpar[4] += -.8;
cpar[3] = cpar[4] - .2;
- pMC->Gsvolu("YBS3", "CONE", idtmed[1749], cpar, 5);
- pMC->Gspos("YBS3", 1, "YMB3", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("YMB3", 1, "YMS3", 0., 0., cpar[0], 0, "ONLY");
+ gMC->Gsvolu("YBS3", "CONE", idtmed[1749], cpar, 5);
+ gMC->Gspos("YBS3", 1, "YMB3", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMB3", 1, "YMS3", 0., 0., cpar[0], 0, "ONLY");
// .closing cone
cpar[2] = r_abs + zs * TMath::Tan(theta_open * kDegrad);
cpar[3] = 0.;
cpar[4] = r_abs;
- pMC->Gsvolu("YMB5", "CONE", idtmed[1755], cpar, 5);
+ gMC->Gsvolu("YMB5", "CONE", idtmed[1755], cpar, 5);
cpar[2] += -.8;
cpar[1] = cpar[2] - .2;
cpar[4] += -.8;
cpar[3] = cpar[4] - .2;
- pMC->Gsvolu("YBS5", "CONE", idtmed[1749], cpar, 5);
- pMC->Gspos("YBS5", 1, "YMB5", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YBS5", "CONE", idtmed[1749], cpar, 5);
+ gMC->Gspos("YBS5", 1, "YMB5", 0., 0., 0., 0, "ONLY");
dzs += cpar[0];
- pMC->Gspos("YMB5", 1, "YMS3", 0., 0., dzs, 0, "ONLY");
+ gMC->Gspos("YMB5", 1, "YMS3", 0., 0., dzs, 0, "ONLY");
dzs += cpar[0];
// OUTSIDE PB-TUBE
tpar[1] = 30. - r_pb;
tpar[2] = (zmag_out - z_close - 50.) / 2.;
dzs += tpar[2];
- pMC->Gsvolu("YNW1", "TUBE", idtmed[1752], tpar, 3);
- pMC->Gspos("YNW1", 1, "YMS3", 0., 0., dzs, 0, "MANY");
+ gMC->Gsvolu("YNW1", "TUBE", idtmed[1752], tpar, 3);
+ gMC->Gspos("YNW1", 1, "YMS3", 0., 0., dzs, 0, "MANY");
// constant beam pipe up to end of magnet
tpar[0] = 0.;
tpar[1] = r_abs;
tpar[2] = (zmag_out - z_close - 50.) / 2.;
- pMC->Gsvolu("YMB6", "TUBE", idtmed[1755], tpar, 3);
+ gMC->Gsvolu("YMB6", "TUBE", idtmed[1755], tpar, 3);
tpar[1] = r_abs - .8;
tpar[0] = tpar[1] - .2;
- pMC->Gsvolu("YBS6", "TUBE", idtmed[1749], tpar, 3);
- pMC->Gspos("YBS6", 1, "YMB6", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("YMB6", 1, "YMS3", 0., 0., dzs, 0, "ONLY");
+ gMC->Gsvolu("YBS6", "TUBE", idtmed[1749], tpar, 3);
+ gMC->Gspos("YBS6", 1, "YMB6", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMB6", 1, "YMS3", 0., 0., dzs, 0, "ONLY");
dz = zmag_in;
- pMC->Gspos("YMS3", 1, "YMOT", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("YMS3", 1, "YMOT", 0., 0., dz, 0, "ONLY");
// DIPOLE->
tpar[1] = 30.;
tpar[2] = (1900. - zmag_out) / 2.;
shl4 = tpar[2];
- pMC->Gsvolu("YMS4", "TUBE", idtmed[1759], tpar, 3);
+ gMC->Gsvolu("YMS4", "TUBE", idtmed[1759], tpar, 3);
// CALL GSVOLU('YMS4','TUBE',IDTMED(1752),TPAR,3,IL3) ! W
// OUTSIDE STEEL TUBE
// Pb/W
tpar[0] = tpar[1] - 4.;
- pMC->Gsvolu("YSH4", "TUBE", idtmed[1718], tpar, 3);
- pMC->Gspos("YSH4", 1, "YMS4", 0., 0., 0., 0, "MANY");
+ gMC->Gsvolu("YSH4", "TUBE", idtmed[1718], tpar, 3);
+ gMC->Gspos("YSH4", 1, "YMS4", 0., 0., 0., 0, "MANY");
// OUTSIDE PB-TUBE
tpar[0] = 30. - r_pb - 4.;
tpar[1] = 30. - r_pb;
- pMC->Gsvolu("YNW2", "TUBE", idtmed[1752], tpar, 3);
- pMC->Gspos("YNW2", 1, "YMS4", 0., 0., 0., 0, "MANY");
+ gMC->Gsvolu("YNW2", "TUBE", idtmed[1752], tpar, 3);
+ gMC->Gspos("YNW2", 1, "YMS4", 0., 0., 0., 0, "MANY");
// ... beam pipe
tpar[0] = 0.;
tpar[1] = r_abs;
tpar[2] = shl4;
- pMC->Gsvolu("YMB4", "TUBE", idtmed[1755], tpar, 3);
+ gMC->Gsvolu("YMB4", "TUBE", idtmed[1755], tpar, 3);
tpar[2] = shl4;
tpar[1] = r_abs - .8;
tpar[0] = tpar[1] - .2;
- pMC->Gsvolu("YBS4", "TUBE", idtmed[1749], tpar, 3);
- pMC->Gspos("YBS4", 1, "YMB4", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("YBS4", "TUBE", idtmed[1749], tpar, 3);
+ gMC->Gspos("YBS4", 1, "YMB4", 0., 0., 0., 0, "ONLY");
dz = zmag_out + shl4;
- pMC->Gspos("YMB4", 1, "YMS4", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("YMS4", 1, "YMOT", 0., 0., dz, 0, "ONLY");
- pMC->Gspos("YMOT", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMB4", 1, "YMS4", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YMS4", 1, "YMOT", 0., 0., dz, 0, "ONLY");
+ gMC->Gspos("YMOT", 1, "ALIC", 0., 0., 0., 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of the muon shield
//
- 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("YMOT","seen",1);
- pMC->Gsatt("YMS1","seen",1);
- pMC->Gsatt("YSH1","seen",1);
- pMC->Gsatt("YAC1","seen",1);
- pMC->Gsatt("YAC2","seen",1);
- pMC->Gsatt("YSC1","seen",1);
- pMC->Gsatt("YSC2","seen",1);
- pMC->Gsatt("YMB1","seen",1);
- pMC->Gsatt("YBS1","seen",1);
- pMC->Gsatt("YMS2","seen",1);
- pMC->Gsatt("YSH2","seen",1);
- pMC->Gsatt("YMB2","seen",1);
- pMC->Gsatt("YBS2","seen",1);
- pMC->Gsatt("YMS3","seen",1);
- pMC->Gsatt("YSH3","seen",1);
- pMC->Gsatt("YMB3","seen",1);
- pMC->Gsatt("YBS3","seen",1);
- pMC->Gsatt("YMB5","seen",1);
- pMC->Gsatt("YBS5","seen",1);
- pMC->Gsatt("YNW1","seen",1);
- pMC->Gsatt("YMB6","seen",1);
- pMC->Gsatt("YBS6","seen",1);
- pMC->Gsatt("YMS4","seen",1);
- pMC->Gsatt("YSH4","seen",1);
- pMC->Gsatt("YNW2","seen",1);
- pMC->Gsatt("YMB4","seen",1);
- pMC->Gsatt("YBS4","seen",1);
+ gMC->Gsatt("YMOT","seen",1);
+ gMC->Gsatt("YMS1","seen",1);
+ gMC->Gsatt("YSH1","seen",1);
+ gMC->Gsatt("YAC1","seen",1);
+ gMC->Gsatt("YAC2","seen",1);
+ gMC->Gsatt("YSC1","seen",1);
+ gMC->Gsatt("YSC2","seen",1);
+ gMC->Gsatt("YMB1","seen",1);
+ gMC->Gsatt("YBS1","seen",1);
+ gMC->Gsatt("YMS2","seen",1);
+ gMC->Gsatt("YSH2","seen",1);
+ gMC->Gsatt("YMB2","seen",1);
+ gMC->Gsatt("YBS2","seen",1);
+ gMC->Gsatt("YMS3","seen",1);
+ gMC->Gsatt("YSH3","seen",1);
+ gMC->Gsatt("YMB3","seen",1);
+ gMC->Gsatt("YBS3","seen",1);
+ gMC->Gsatt("YMB5","seen",1);
+ gMC->Gsatt("YBS5","seen",1);
+ gMC->Gsatt("YNW1","seen",1);
+ gMC->Gsatt("YMB6","seen",1);
+ gMC->Gsatt("YBS6","seen",1);
+ gMC->Gsatt("YMS4","seen",1);
+ gMC->Gsatt("YSH4","seen",1);
+ gMC->Gsatt("YNW2","seen",1);
+ gMC->Gsatt("YMB4","seen",1);
+ gMC->Gsatt("YBS4","seen",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 30, 30, 0, 26.5, 18, .03, .03);
- pMC->Gdhead(1111, "Muon Shield");
- pMC->Gdman(16, 6, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 3000, -3000, 3000, -6000, 6000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 30, 30, 0, 26.5, 18, .03, .03);
+ gMC->Gdhead(1111, "Muon Shield");
+ gMC->Gdman(16, 6, "MAN");
}
//_____________________________________________________________________________
static Int_t npid = 0;
static char cpar[1200];
+static TGeant3 *geant3=(TGeant3*)gMC;
THIGZ *higz = 0;
// see TGeant3::Gsatt for more details
//
- AliMC* pMC = AliMC::GetMC();
- pMC->Gsatt(name,att,val);
+ gMC->Gsatt(name,att,val);
}
//___________________________________________
// To set/modify the drawing options.
// see TGeant3::Gdopt for more details
//
- AliMC* pMC = AliMC::GetMC();
- pMC->Gdopt(name,value);
+ gMC->Gdopt(name,value);
}
// see TGeant3::Gdraw for more details
//
- AliMC* pMC = AliMC::GetMC();
- pMC->Gdraw(name,theta,phi,psi,u0,v0,ul,vl);
+ gMC->Gdraw(name,theta,phi,psi,u0,v0,ul,vl);
}
// see TGeant3::Gdrawc for more details
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->Gdrawc(name,axis,cut,u0,v0,ul,vl);
}
// see TGeant3::Gdspec for more details
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->Gdspec(name);
}
// - drawing tree of parent
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->Gdtree(name,levmax,isel);
}
// complex detectors. The following commands will make explode the
// detector:
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->SetBOMB(boom);
}
#include "TPaveTree.h"
#include "TGeant3.h"
+static TGeant3 *geant3=(TGeant3*)gMC;
+
+
ClassImp(TPaveTree)
//_____________________________________________________________________________
//
// Draw specs of the volume in this TPaveTree
//
- AliMC* pMC = AliMC::GetMC();
-
- pMC->DrawOneSpec(GetLabel());
+ gMC->DrawOneSpec(GetLabel());
}
//_____________________________________________________________________________
//
// Draw tree of the volume in this TPaveTree
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->Gdtree(GetLabel(),levmax,isel);
}
//
// Draw parent tree of the volume in this TPaveTree
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
geant3->GdtreeParent(GetLabel(),levmax,isel);
}
// Invokes TPabeLabel::ExecuteEvent. In case of a double click
// draw specs of volume corresponding to this TPaveTree
//
- AliMC* pMC = AliMC::GetMC();
TPaveLabel::ExecuteEvent(event,px,py);
if (event == kButton1Double) {
//printf("TPaveTree::ExecuteEvent\n");
gPad->SetCursor(kWatch);
- pMC->DrawOneSpec(GetLabel());
+ gMC->DrawOneSpec(GetLabel());
}
}
extern "C" type_of_call void gtreve_root();
extern "C" type_of_call void glast();
-
extern "C" type_of_call {
//______________________________________________________________________
//
// ------------------------------------------------------------------
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
+ TGeant3* geant3 = (TGeant3*) gMC;
Int_t ihadr=geant3->Gcphys()->ihadr;
if (ihadr<4) gheish();
else if (ihadr==4) flufin();
//
// ------------------------------------------------------------------
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
+ TGeant3* geant3 = (TGeant3*) gMC;
Int_t ihadr=geant3->Gcphys()->ihadr;
if (ihadr<4) gpghei();
else if (ihadr==4) fldist();
//
// ------------------------------------------------------------------
//
- TGeant3 *geant3=(TGeant3*)AliMC::GetMC();
+ TGeant3* geant3 = (TGeant3*) gMC;
Int_t ifield=geant3->Gctmed()->ifield;
Float_t fieldm=geant3->Gctmed()->fieldm;
// ******************************************************************
//
- AliMC* pMC = AliMC::GetMC();
- TGeant3 *geant3=(TGeant3*)pMC;
Float_t x[3];
Float_t r;
char chproc[11];
// --- Standard GEANT debug routine
+ TGeant3* geant3 = (TGeant3*) gMC;
if(geant3->Gcflag()->idebug) geant3->Gdebug();
// Stop particle if outside user defined tracking region
- pMC->TrackPosition(x);
+ gMC->TrackPosition(x);
r=TMath::Sqrt(x[0]*x[0]+x[1]*x[1]);
if (r > gAlice->TrackingRmax() || TMath::Abs(x[2]) > gAlice->TrackingZmax()) {
- pMC->StopTrack();
+ gMC->StopTrack();
}
// --- Add new created particles
- if (pMC->NSecondaries() > 0) {
- pMC->ProdProcess(chproc);
+ if (gMC->NSecondaries() > 0) {
+ gMC->ProdProcess(chproc);
for (jk = 0; jk < geant3->Gcking()->ngkine; ++jk) {
ipp = Int_t (geant3->Gcking()->gkin[jk][4]+0.5);
// --- Skip neutrinos!
}
// --- Particle leaving the setup ?
- if (!pMC->TrackOut())
+ if (!gMC->TrackOut())
if ((id=gAlice->DetFromMate(geant3->Gctmed()->numed)) >= 0) gAlice->StepManager(id);
}
//End_Html
//
- AliMC* pMC = AliMC::GetMC();
-
const Double_t kPi=TMath::Pi();
const Double_t kDegrad=kPi/180;
const Double_t kRaddeg=180/kPi;
par[0] = 370;
par[1] = 390;
par[2] = zl / 2.;
- pMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
+ gMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
//
// --- Set module unseen ---
- pMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
- pMC->Gsatt("FBAR", "SEEN", 0);
+ gMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gsatt("FBAR", "SEEN", 0);
//
// Number of TOF-block
lmax = 19;
par[0] = xtof / 2.;
par[1] = ytof / 2.;
par[2] = ztof0 / 2.;
- pMC->Gsvolu("FTO1", "BOX ", idtmed[506], par, 3);
- pMC->Gsatt("FTO1", "SEEN", -2);
+ gMC->Gsvolu("FTO1", "BOX ", idtmed[506], par, 3);
+ gMC->Gsatt("FTO1", "SEEN", -2);
par[2] = ztof1 / 2.;
- pMC->Gsvolu("FTO2", "BOX ", idtmed[506], par, 3);
- pMC->Gsatt("FTO2", "SEEN", -2);
+ gMC->Gsvolu("FTO2", "BOX ", idtmed[506], par, 3);
+ gMC->Gsatt("FTO2", "SEEN", -2);
par[2] = ztof2 / 2.;
- pMC->Gsvolu("FTO3", "BOX ", idtmed[506], par, 3);
- pMC->Gsatt("FTO3", "SEEN", -2);
+ gMC->Gsvolu("FTO3", "BOX ", idtmed[506], par, 3);
+ gMC->Gsatt("FTO3", "SEEN", -2);
//
// Subtraction of TOF module boundaries
xm = xtof - dx * 2.;
lmax1 = i + lmax;
AliMatrix(idrotm[i], 90., -fil1, 90., 90. - fil1, 0., 0.);
if (fil1 >= fil_min && fil1 <= fil_max) {
- pMC->Gspos("FTO2", i, "FBAR", xcor2, ycor2, zcor2, idrotm[i], "ONLY");
- pMC->Gspos("FTO2", lmax1, "FBAR", xcor2, ycor2, -zcor2, idrotm[i], "ONLY");
+ gMC->Gspos("FTO2", i, "FBAR", xcor2, ycor2, zcor2, idrotm[i], "ONLY");
+ gMC->Gspos("FTO2", lmax1, "FBAR", xcor2, ycor2, -zcor2, idrotm[i], "ONLY");
} else if (fil1 <= fil_rich || fil1 >= 360. - fil_rich) {
par[2] = ztof2 / 2.;
- pMC->Gspos("FTO3", i, "FBAR", xcor2, ycor2, zcor3, idrotm[i], "ONLY");
- pMC->Gspos("FTO3", lmax1, "FBAR", xcor2, ycor2, -zcor3, idrotm[i], "ONLY");
+ gMC->Gspos("FTO3", i, "FBAR", xcor2, ycor2, zcor3, idrotm[i], "ONLY");
+ gMC->Gspos("FTO3", lmax1, "FBAR", xcor2, ycor2, -zcor3, idrotm[i], "ONLY");
} else {
par[2] = ztof0 / 2.;
- pMC->Gspos("FTO1", i, "FBAR", xcor2, ycor2, zcor1, idrotm[i], "ONLY");
- pMC->Gspos("FTO1", lmax1, "FBAR", xcor2, ycor2, -zcor1, idrotm[i], "ONLY");
+ gMC->Gspos("FTO1", i, "FBAR", xcor2, ycor2, zcor1, idrotm[i], "ONLY");
+ gMC->Gspos("FTO1", lmax1, "FBAR", xcor2, ycor2, -zcor1, idrotm[i], "ONLY");
}
}
}
// for versions 2 and 3
//
- 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("FBAR","SEEN",0);
- pMC->Gsatt("FTO1","SEEN",1);
- pMC->Gsatt("FTO2","SEEN",1);
- pMC->Gsatt("FTO3","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, 12, 9.5, .02, .02);
- pMC->Gdhead(1111, "Time Of Flight");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gsatt("FBAR","SEEN",0);
+ gMC->Gsatt("FTO1","SEEN",1);
+ gMC->Gsatt("FTO2","SEEN",1);
+ gMC->Gsatt("FTO3","SEEN",1);
+ //
+ 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, 12, 9.5, .02, .02);
+ gMC->Gdhead(1111, "Time Of Flight");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
// Initialise TOF detector after it has been built
//
Int_t i;
- AliMC *pMC=AliMC::GetMC();
//
printf("\n");
for(i=0;i<35;i++) printf("*");
printf("\n");
//
// Set id of TOF sensitive volume
- fIdSens=pMC->VolId("FPG2");
+ fIdSens=gMC->VolId("FPG2");
//
for(i=0;i<80;i++) printf("*");
printf("\n");
//End_Html
//
- AliMC* pMC = AliMC::GetMC();
-
Float_t fil_rich;
Int_t lmax;
Float_t phos_phi, zcor2, zcor3, ztof0, ztof1, ztof2;
par[0] = rp1;
par[1] = rp2;
par[2] = zl / 2.;
- pMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
- pMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
- pMC->Gsatt("FBAR", "SEEN", 0);
+ gMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
+ gMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gsatt("FBAR", "SEEN", 0);
// First Block
par[0] = (rp1+rp2-ysz)/2.;
par[1] = (rp1+rp2+ysz)/2.;
par[3] = 90. - fil_min;
par[4] = 90. - fil_rich;
fil0 = 180. - (par[3] + par[4]);
- pMC->Gsvolu("FBT1", "TUBS", idtmed[507], par, 5);
+ gMC->Gsvolu("FBT1", "TUBS", idtmed[507], par, 5);
AliMatrix(idrotm[1], 90., fil0, 90., fil0 + 90., 0., 0.);
- pMC->Gspos("FBT1", 0, "FBAR", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("FBT1", 1, "FBAR", 0., 0., 0., idrotm[1], "ONLY");
+ gMC->Gspos("FBT1", 0, "FBAR", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("FBT1", 1, "FBAR", 0., 0., 0., idrotm[1], "ONLY");
// --- Second block
par[2] = ztof1 / 2.;
par[3] = 90. - fil_max;
par[4] = 90. - fil_min;
- pMC->Gsvolu("FBT2", "TUBS", idtmed[507], par, 5);
- pMC->Gspos("FBT2", 0, "FBAR", 0., 0., zcor2, 0, "ONLY");
- pMC->Gspos("FBT2", 1, "FBAR", 0., 0.,-zcor2, 0, "ONLY");
+ gMC->Gsvolu("FBT2", "TUBS", idtmed[507], par, 5);
+ gMC->Gspos("FBT2", 0, "FBAR", 0., 0., zcor2, 0, "ONLY");
+ gMC->Gspos("FBT2", 1, "FBAR", 0., 0.,-zcor2, 0, "ONLY");
// --- Third block
par[2] = ztof2 / 2.;
par[3] = 90. - fil_rich;
par[4] = fil_rich + 90.;
- pMC->Gsvolu("FBT3", "TUBS", idtmed[507], par, 5);
- pMC->Gspos("FBT3", 0, "FBAR", 0., 0., zcor3, 0, "ONLY");
- pMC->Gspos("FBT3", 1, "FBAR", 0., 0., -zcor3, 0, "ONLY");
+ gMC->Gsvolu("FBT3", "TUBS", idtmed[507], par, 5);
+ gMC->Gspos("FBT3", 0, "FBAR", 0., 0., zcor3, 0, "ONLY");
+ gMC->Gspos("FBT3", 1, "FBAR", 0., 0., -zcor3, 0, "ONLY");
}
//_____________________________________________________________________________
// for versions 2 and 3
//
- 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("FBAR","SEEN",0);
- pMC->Gsatt("FBT1","SEEN",1);
- pMC->Gsatt("FBT2","SEEN",1);
- pMC->Gsatt("FBT3","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, 12, 9.5, .02, .02);
- pMC->Gdhead(1111, "Time Of Flight");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gsatt("FBAR","SEEN",0);
+ gMC->Gsatt("FBT1","SEEN",1);
+ gMC->Gsatt("FBT2","SEEN",1);
+ gMC->Gsatt("FBT3","SEEN",1);
+ //
+ 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, 12, 9.5, .02, .02);
+ gMC->Gdhead(1111, "Time Of Flight");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
// Initialise detector after that it has been built
//
- AliMC* pMC = AliMC::GetMC();
-
AliTOF::Init();
- fIdFBT2=pMC->VolId("FBT2");
- fIdFBT3=pMC->VolId("FBT3");
+ fIdFBT2=gMC->VolId("FBT2");
+ fIdFBT3=gMC->VolId("FBT3");
}
//_____________________________________________________________________________
Int_t copy, id;
//
// Get the pointer to the MonteCarlo
- AliMC *pMC= AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-499;
- if(pMC->GetMedium()==idtmed[510-1] &&
- pMC->TrackEntering() && pMC->TrackCharge()
- && (id=pMC->CurrentVol(0,copy))==fIdSens) {
+ if(gMC->GetMedium()==idtmed[510-1] &&
+ gMC->TrackEntering() && gMC->TrackCharge()
+ && (id=gMC->CurrentVol(0,copy))==fIdSens) {
TClonesArray &lhits = *fHits;
//
// Record only charged tracks at entrance
vol[2]=copy;
- vol[1]=pMC->CurrentVolOff(1,0,copy);
+ vol[1]=gMC->CurrentVolOff(1,0,copy);
if(id==fIdFBT2) copy+=2; else
if(id==fIdFBT2) copy+=4;
vol[0]=1;
- pMC->TrackPosition(hits);
- pMC->TrackMomentum(&hits[3]);
- hits[7]=pMC->TrackTime();
+ gMC->TrackPosition(hits);
+ gMC->TrackMomentum(&hits[3]);
+ hits[7]=gMC->TrackTime();
new(lhits[fNhits++]) AliTOFhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
//End_Html
//
- AliMC* pMC = AliMC::GetMC();
-
Float_t fil_rich;
Int_t lmax;
Float_t phos_phi, zcor2, zcor3, ztof0, ztof1, ztof2;
par[0] = rp1;
par[1] = rp2;
par[2] = zl / 2.;
- pMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
- pMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
- pMC->Gsatt("FBAR", "SEEN", 0);
+ gMC->Gsvolu("FBAR", "TUBE", idtmed[500], par, 3);
+ gMC->Gspos("FBAR", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gsatt("FBAR", "SEEN", 0);
//
// --- First Block
par[0] = (rp1+rp2-zazor)/2.;
fil0 = 180. - (par[3] + par[4]);
//
// --- Sensitive volume
- pMC->Gsvolu("FBT1", "TUBS", idtmed[509], par, 5);
+ gMC->Gsvolu("FBT1", "TUBS", idtmed[509], par, 5);
AliMatrix(idrotm[1], 90., fil0, 90., fil0 + 90., 0., 0.);
- pMC->Gspos("FBT1", 0, "FBAR", 0., 0., 0., 0, "ONLY");
- pMC->Gspos("FBT1", 1, "FBAR", 0., 0., 0., idrotm[1], "ONLY");
+ gMC->Gspos("FBT1", 0, "FBAR", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("FBT1", 1, "FBAR", 0., 0., 0., idrotm[1], "ONLY");
//
// ALUMINA
par[0] = (rp1+rp2+zazor)/2.;
par[1] = (rp1+rp2+zazor)/2.+ysz;
- pMC->Gsvolu("FPE1","TUBS",idtmed[507], par, 0);
- pMC->Gsposp("FPE1",2,"FBAR", 0., 0., 0., 0, "ONLY", par, 5);
- pMC->Gsposp("FPE1",3,"FBAR", 0., 0., 0., idrotm[1], "ONLY", par, 5);
+ gMC->Gsvolu("FPE1","TUBS",idtmed[507], par, 0);
+ gMC->Gsposp("FPE1",2,"FBAR", 0., 0., 0., 0, "ONLY", par, 5);
+ gMC->Gsposp("FPE1",3,"FBAR", 0., 0., 0., idrotm[1], "ONLY", par, 5);
//
par[0] = (rp1+rp2-zazor)/2.-ysz;
par[1] = (rp1+rp2-zazor)/2.;
- pMC->Gsposp("FPE1",4,"FBAR", 0., 0., 0., 0, "ONLY", par, 5);
- pMC->Gsposp("FPE1",5,"FBAR", 0., 0., 0., idrotm[1], "ONLY", par, 5);
+ gMC->Gsposp("FPE1",4,"FBAR", 0., 0., 0., 0, "ONLY", par, 5);
+ gMC->Gsposp("FPE1",5,"FBAR", 0., 0., 0., idrotm[1], "ONLY", par, 5);
// --- Second block
par[0] = (rp1+rp2-zazor)/2.;
par[1] = (rp1+rp2+zazor)/2.;
par[2] = ztof1 / 2.;
par[3] = 90. - fil_max;
par[4] = 90. - fil_min;
- pMC->Gsvolu("FBT2", "TUBS", idtmed[509], par, 5);
- pMC->Gspos("FBT2", 0, "FBAR", 0., 0., zcor2, 0, "ONLY");
- pMC->Gspos("FBT2", 1, "FBAR", 0., 0., -zcor2, 0, "ONLY");
+ gMC->Gsvolu("FBT2", "TUBS", idtmed[509], par, 5);
+ gMC->Gspos("FBT2", 0, "FBAR", 0., 0., zcor2, 0, "ONLY");
+ gMC->Gspos("FBT2", 1, "FBAR", 0., 0., -zcor2, 0, "ONLY");
//
par[0]=(rp1+rp2+zazor)/2.;
par[1]=(rp1+rp2+zazor)/2.+ysz;
- pMC->Gsvolu("FPE2","TUBS",idtmed[507], par, 0);
- pMC->Gsposp("FPE2",2,"FBAR",0.,0.,zcor2,0,"ONLY",par,5);
- pMC->Gsposp("FPE2",3,"FBAR",0.,0.,-zcor2,0,"ONLY",par,5);
+ gMC->Gsvolu("FPE2","TUBS",idtmed[507], par, 0);
+ gMC->Gsposp("FPE2",2,"FBAR",0.,0.,zcor2,0,"ONLY",par,5);
+ gMC->Gsposp("FPE2",3,"FBAR",0.,0.,-zcor2,0,"ONLY",par,5);
//
par[0]=(rp1+rp2-zazor)/2.-ysz;
par[1]=(rp1+rp2-zazor)/2.;
- pMC->Gsposp("FPE2",4,"FBAR",0.,0.,zcor2,0,"ONLY",par,5);
- pMC->Gsposp("FPE2",5,"FBAR",0.,0.,-zcor2,0,"ONLY",par,5);
+ gMC->Gsposp("FPE2",4,"FBAR",0.,0.,zcor2,0,"ONLY",par,5);
+ gMC->Gsposp("FPE2",5,"FBAR",0.,0.,-zcor2,0,"ONLY",par,5);
//
// --- Third block
par[0] = (rp1+rp2-zazor)/2.;
par[2] = ztof2 / 2.;
par[3] = 90. - fil_rich;
par[4] = fil_rich + 90.;
- pMC->Gsvolu("FBT3", "TUBS", idtmed[509], par, 5);
- pMC->Gspos("FBT3", 0, "FBAR", 0., 0., zcor3, 0, "ONLY");
- pMC->Gspos("FBT3", 1, "FBAR", 0., 0., -zcor3, 0, "ONLY");
+ gMC->Gsvolu("FBT3", "TUBS", idtmed[509], par, 5);
+ gMC->Gspos("FBT3", 0, "FBAR", 0., 0., zcor3, 0, "ONLY");
+ gMC->Gspos("FBT3", 1, "FBAR", 0., 0., -zcor3, 0, "ONLY");
//
par[0]=(rp1+rp2+zazor)/2.;
par[1]=(rp1+rp2+zazor)/2.+ysz;
- pMC->Gsvolu("FPE3","TUBS",idtmed[507], par, 0);
- pMC->Gsposp("FPE3",2,"FBAR",0.,0.,zcor3,0,"ONLY",par,5);
- pMC->Gsposp("FPE3",3,"FBAR",0.,0.,-zcor3,0,"ONLY",par,5);
+ gMC->Gsvolu("FPE3","TUBS",idtmed[507], par, 0);
+ gMC->Gsposp("FPE3",2,"FBAR",0.,0.,zcor3,0,"ONLY",par,5);
+ gMC->Gsposp("FPE3",3,"FBAR",0.,0.,-zcor3,0,"ONLY",par,5);
//
par[0]=(rp1+rp2-zazor)/2.-ysz;
par[1]=(rp1+rp2-zazor)/2.;
- pMC->Gsposp("FPE3",4,"FBAR",0.,0.,zcor3,0,"ONLY",par,5);
- pMC->Gsposp("FPE3",5,"FBAR",0.,0.,-zcor3,0,"ONLY",par,5);
+ gMC->Gsposp("FPE3",4,"FBAR",0.,0.,zcor3,0,"ONLY",par,5);
+ gMC->Gsposp("FPE3",5,"FBAR",0.,0.,-zcor3,0,"ONLY",par,5);
//
}
// Draw a shaded view of the Time Of Flight 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("FBAR","SEEN",0);
- pMC->Gsatt("FPE1","SEEN",1);
- pMC->Gsatt("FPE2","SEEN",1);
- pMC->Gsatt("FPE3","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, 12, 9.5, .02, .02);
- pMC->Gdhead(1111, "Time Of Flight");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ gMC->Gsatt("FBAR","SEEN",0);
+ gMC->Gsatt("FPE1","SEEN",1);
+ gMC->Gsatt("FPE2","SEEN",1);
+ gMC->Gsatt("FPE3","SEEN",1);
+ //
+ 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, 12, 9.5, .02, .02);
+ gMC->Gdhead(1111, "Time Of Flight");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//___________________________________________
//
// Initialise Time Of Flight after it has been built
- AliMC* pMC = AliMC::GetMC();
-
AliTOF::Init();
- fIdFBT2=pMC->VolId("FBT2");
- fIdFBT3=pMC->VolId("FBT3");
+ fIdFBT2=gMC->VolId("FBT2");
+ fIdFBT3=gMC->VolId("FBT3");
}
//______________________________________________________________________________
Float_t hits[8];
Int_t vol[3];
Int_t copy, id;
- AliMC *pMC= AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-499;
- if(pMC->GetMedium()==idtmed[510-1] &&
- pMC->TrackEntering() && pMC->TrackCharge()
- && (id=pMC->CurrentVol(0,copy))==fIdSens) {
+ if(gMC->GetMedium()==idtmed[510-1] &&
+ gMC->TrackEntering() && gMC->TrackCharge()
+ && (id=gMC->CurrentVol(0,copy))==fIdSens) {
TClonesArray &lhits = *fHits;
//
// Record only charged tracks at entrance
vol[2]=copy;
- vol[1]=pMC->CurrentVolOff(1,0,copy);
+ vol[1]=gMC->CurrentVolOff(1,0,copy);
if(id==fIdFBT2) copy+=2; else
if(id==fIdFBT2) copy+=4;
vol[0]=1;
- pMC->TrackPosition(hits);
- pMC->TrackMomentum(&hits[3]);
- hits[7]=pMC->TrackTime();
+ gMC->TrackPosition(hits);
+ gMC->TrackMomentum(&hits[3]);
+ hits[7]=gMC->TrackTime();
new(lhits[fNhits++]) AliTOFhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
// Definition of the Time Of Fligh Resistive Plate Chambers
//
- AliMC* pMC = AliMC::GetMC();
-
Int_t inum;
Float_t xcor, zcor, ytop, ycoor;
Float_t zazor, dx, dy, dz, xp, yp, zp, ywidth;
par[1] = ywidth / 2.;
par[2] = zm0 / 2.;
ycoor = ym / 3. - ywidth / 2.;
- pMC->Gsvolu("FBT1", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT1", 0, "FTO1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT1", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT1", 0, "FTO1", 0., 0., 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FBT2", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT2", 1, "FTO2", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT2", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT2", 1, "FTO2", 0., 0., 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FBT3", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT3", 2, "FTO3", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT3", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT3", 2, "FTO3", 0., 0., 0., 0, "ONLY");
// Electronic plate
par[1] = ysz / 2.;
par[2] = zm0 / 2.;
ycoor = ywidth / 2. - ysz / 2.;
- pMC->Gsvolu("FPE1", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE1", 0, "FBT1", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE1", 1, "FBT1", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE1", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE1", 0, "FBT1", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE1", 1, "FBT1", 0., -ycoor, 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FPE2", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE2", 0, "FBT2", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE2", 1, "FBT2", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE2", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE2", 0, "FBT2", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE2", 1, "FBT2", 0., -ycoor, 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FPE3", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE3", 0, "FBT3", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE3", 1, "FBT3", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE3", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE3", 0, "FBT3", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE3", 1, "FBT3", 0., -ycoor, 0., 0, "ONLY");
// Electronic insensitive volumes
par[1] = yp / 2.;
par[2] = zm0 / 2.;
ytop = ywidth / 2. - (ysz * 2 + yp) / 2.;
- pMC->Gsvolu("FLT1", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FLT1", 0, "FBT1", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FLT1", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FLT1", 0, "FBT1", 0., -ytop, 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FLT2", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FLT2", 0, "FBT2", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FLT2", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FLT2", 0, "FBT2", 0., -ytop, 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FLT3", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FLT3", 0, "FBT3", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FLT3", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FLT3", 0, "FBT3", 0., -ytop, 0., 0, "ONLY");
// PPC-plate number along X axis
nxp = Int_t (xm / xsz);
// PPC-plate number along Z axis
// Position of PPC-plates
par[0] = xm * .5 / nxp;
par[2] = zm0 * .5 / nzp0;
- pMC->Gsvolu("FLK1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLK1", "BOX ", idtmed[505], par, 3);
inum = 0;
for (ink = 1; ink <= nxp; ++ink) {
xcor = xm * .5 * ((ink * 2 - 1) / (Float_t) nxp -
for (inz = 1; inz <= nzp0; ++inz) {
zcor = zm0 * .5 * ((inz * 2 - 1) / (Float_t) nzp0 - 1.);
++inum;
- pMC->Gspos("FLK1", inum, "FLT1", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT1", xcor, 0., zcor, 0, "ONLY");
}
for (inz = 1; inz <= nzp1; ++inz) {
zcor = zm1 * .5 * ((inz * 2 - 1) / (Float_t) nzp1 - 1.);
++inum;
- pMC->Gspos("FLK1", inum, "FLT2", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT2", xcor, 0., zcor, 0, "ONLY");
}
for (inz = 1; inz <= nzp2; ++inz) {
zcor = zm2 * .5 * ((inz * 2 - 1) / (Float_t) nzp2 - 1.);
++inum;
- pMC->Gspos("FLK1", inum, "FLT3", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT3", xcor, 0., zcor, 0, "ONLY");
}
}
// RPC position on RPC-plate
// Zagreev
par[0] = xsz * .5 / npx;
par[2] = zsz * .5 / npz;
- pMC->Gsvolu("FLL1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLL1", "BOX ", idtmed[505], par, 3);
inum = 0;
for (ink = 1; ink <= npx; ++ink) {
xcor = xsz * .5 * ((ink * 2 - 1) / (Float_t) npx - 1.);
for (inz = 1; inz <= npz; ++inz) {
zcor = zsz * .5 * ((inz * 2 - 1) / (Float_t) npz - 1.);
++inum;
- pMC->Gspos("FLL1", inum, "FLK1", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLL1", inum, "FLK1", xcor, 0., zcor, 0, "ONLY");
}
}
// RPC geometry
par[0] = xp / 2.;
par[1] = yp / 2.;
par[2] = zp / 2.;
- pMC->Gsvolu("FPG1", "BOX ", idtmed[507], par, 3);
- pMC->Gspos("FPG1", inum, "FLL1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FPG1", "BOX ", idtmed[507], par, 3);
+ gMC->Gspos("FPG1", inum, "FLL1", 0., 0., 0., 0, "ONLY");
par[0] = xp / 2. - dx;
par[1] = yp / 2. - dy;
par[2] = zp / 2. - dz;
- pMC->Gsvolu("FPG2", "BOX ", idtmed[509], par, 3);
- pMC->Gspos("FPG2", 0, "FPG1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FPG2", "BOX ", idtmed[509], par, 3);
+ gMC->Gspos("FPG2", 0, "FPG1", 0., 0., 0., 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of the Time Of Flight version 2
//
- 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("ALIC","SEEN",0);
- pMC->Gsatt("FBAR","SEEN",0);
- pMC->Gsatt("FTO1","SEEN",0);
- pMC->Gsatt("FTO2","SEEN",0);
- pMC->Gsatt("FTO3","SEEN",0);
- pMC->Gsatt("FBT1","SEEN",0);
- pMC->Gsatt("FBT2","SEEN",0);
- pMC->Gsatt("FBT3","SEEN",0);
- pMC->Gsatt("FLT1","SEEN",0);
- pMC->Gsatt("FLT2","SEEN",0);
- pMC->Gsatt("FLT3","SEEN",0);
- pMC->Gsatt("FLK1","SEEN",1);
+ gMC->Gsatt("ALIC","SEEN",0);
+ gMC->Gsatt("FBAR","SEEN",0);
+ gMC->Gsatt("FTO1","SEEN",0);
+ gMC->Gsatt("FTO2","SEEN",0);
+ gMC->Gsatt("FTO3","SEEN",0);
+ gMC->Gsatt("FBT1","SEEN",0);
+ gMC->Gsatt("FBT2","SEEN",0);
+ gMC->Gsatt("FBT3","SEEN",0);
+ gMC->Gsatt("FLT1","SEEN",0);
+ gMC->Gsatt("FLT2","SEEN",0);
+ gMC->Gsatt("FLT3","SEEN",0);
+ gMC->Gsatt("FLK1","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, 12, 9.5, .02, .02);
- pMC->Gdhead(1111, "Time Of Flight");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ 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, 12, 9.5, .02, .02);
+ gMC->Gdhead(1111, "Time Of Flight");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
// Initialise the detector after the geometry has been defined
//
- AliMC* pMC = AliMC::GetMC();
-
AliTOF::Init();
- fIdFTO2=pMC->VolId("FTO2");
- fIdFTO3=pMC->VolId("FTO3");
- fIdFLT1=pMC->VolId("FLT1");
- fIdFLT2=pMC->VolId("FLT2");
- fIdFLT3=pMC->VolId("FLT3");
+ fIdFTO2=gMC->VolId("FTO2");
+ fIdFTO3=gMC->VolId("FTO3");
+ fIdFLT1=gMC->VolId("FLT1");
+ fIdFLT2=gMC->VolId("FLT2");
+ fIdFLT3=gMC->VolId("FLT3");
}
//_____________________________________________________________________________
Float_t hits[8];
Int_t vol[3];
Int_t copy, id;
- AliMC *pMC= AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-499;
- if(pMC->GetMedium()==idtmed[510-1] &&
- pMC->TrackEntering() && pMC->TrackCharge()
- && pMC->CurrentVol(0,copy)==fIdSens) {
+ if(gMC->GetMedium()==idtmed[510-1] &&
+ gMC->TrackEntering() && gMC->TrackCharge()
+ && gMC->CurrentVol(0,copy)==fIdSens) {
TClonesArray &lhits = *fHits;
//
// Record only charged tracks at entrance
- pMC->CurrentVolOff(1,0,copy);
+ gMC->CurrentVolOff(1,0,copy);
vol[2]=copy;
- pMC->CurrentVolOff(3,0,copy);
+ gMC->CurrentVolOff(3,0,copy);
vol[1]=copy;
- id=pMC->CurrentVolOff(6,0,copy);
+ id=gMC->CurrentVolOff(6,0,copy);
vol[0]=copy;
if(id==fIdFTO3) {
vol[0]+=22;
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT3) vol[1]+=6;
} else if (id==fIdFTO2) {
vol[0]+=20;
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT2) vol[1]+=8;
} else {
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT1) vol[1]+=14;
}
- pMC->TrackPosition(hits);
- pMC->TrackMomentum(&hits[3]);
- hits[7]=pMC->TrackTime();
+ gMC->TrackPosition(hits);
+ gMC->TrackMomentum(&hits[3]);
+ hits[7]=gMC->TrackTime();
new(lhits[fNhits++]) AliTOFhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
// Definition of the Time Of Fligh Parallel Plate Chambers
//
- AliMC* pMC = AliMC::GetMC();
-
Int_t inum;
Float_t xcor, zcor, ytop;
Int_t inum1;
par[1] = ywidth / 2.;
par[2] = zm0 / 2.;
ycoor = ym / 3. - ywidth / 2.;
- pMC->Gsvolu("FBT1", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT1", 0, "FTO1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT1", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT1", 0, "FTO1", 0., 0., 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FBT2", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT2", 1, "FTO2", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT2", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT2", 1, "FTO2", 0., 0., 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FBT3", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FBT3", 2, "FTO3", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FBT3", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FBT3", 2, "FTO3", 0., 0., 0., 0, "ONLY");
// Electronic plate
par[1] = ysz / 2.;
par[2] = zm0 / 2.;
ycoor = ywidth / 2. - ysz / 2.;
- pMC->Gsvolu("FPE1", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE1", 0, "FBT1", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE1", 1, "FBT1", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE1", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE1", 0, "FBT1", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE1", 1, "FBT1", 0., -ycoor, 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FPE2", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE2", 0, "FBT2", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE2", 1, "FBT2", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE2", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE2", 0, "FBT2", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE2", 1, "FBT2", 0., -ycoor, 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FPE3", "BOX ", idtmed[504], par, 3);
- pMC->Gspos("FPE3", 0, "FBT3", 0., ycoor, 0., 0, "ONLY");
- pMC->Gspos("FPE3", 1, "FBT3", 0., -ycoor, 0., 0, "ONLY");
+ gMC->Gsvolu("FPE3", "BOX ", idtmed[504], par, 3);
+ gMC->Gspos("FPE3", 0, "FBT3", 0., ycoor, 0., 0, "ONLY");
+ gMC->Gspos("FPE3", 1, "FBT3", 0., -ycoor, 0., 0, "ONLY");
// Electronic insensitive volumes
par[1] = yp / 2.;
par[2] = zm0 / 2.;
ytop = ywidth / 2. - (ysz * 2 + yp) / 2.;
- pMC->Gsvolu("FST1", "BOX ", idtmed[505], par, 3);
- pMC->Gsvolu("FLT1", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FST1", 0, "FBT1", 0., ytop, 0., 0, "ONLY");
- pMC->Gspos("FLT1", 0, "FBT1", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FST1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLT1", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FST1", 0, "FBT1", 0., ytop, 0., 0, "ONLY");
+ gMC->Gspos("FLT1", 0, "FBT1", 0., -ytop, 0., 0, "ONLY");
par[2] = zm1 / 2.;
- pMC->Gsvolu("FST2", "BOX ", idtmed[505], par, 3);
- pMC->Gsvolu("FLT2", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FST2", 0, "FBT2", 0., ytop, 0., 0, "ONLY");
- pMC->Gspos("FLT2", 0, "FBT2", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FST2", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLT2", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FST2", 0, "FBT2", 0., ytop, 0., 0, "ONLY");
+ gMC->Gspos("FLT2", 0, "FBT2", 0., -ytop, 0., 0, "ONLY");
par[2] = zm2 / 2.;
- pMC->Gsvolu("FST3", "BOX ", idtmed[505], par, 3);
- pMC->Gsvolu("FLT3", "BOX ", idtmed[505], par, 3);
- pMC->Gspos("FST3", 0, "FBT3", 0., ytop, 0., 0, "ONLY");
- pMC->Gspos("FLT3", 0, "FBT3", 0., -ytop, 0., 0, "ONLY");
+ gMC->Gsvolu("FST3", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLT3", "BOX ", idtmed[505], par, 3);
+ gMC->Gspos("FST3", 0, "FBT3", 0., ytop, 0., 0, "ONLY");
+ gMC->Gspos("FLT3", 0, "FBT3", 0., -ytop, 0., 0, "ONLY");
// PPC-plate number along X axis
nxp = Int_t (xm / xsz);
// PPC-plate number along Z axis
// Position of big PPC-plate
par[0] = xm * .5 / nxp;
par[2] = zm0 * .5 / nzp0;
- pMC->Gsvolu("FSK1", "BOX ", idtmed[505], par, 3);
- pMC->Gsvolu("FLK1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FSK1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLK1", "BOX ", idtmed[505], par, 3);
inum = 0;
for (ink = 1; ink <= nxp; ++ink) {
xcor = xm * .5 * ((ink * 2 - 1) / (Float_t) nxp - 1.);
for (inz = 1; inz <= nzp0; ++inz) {
zcor = zm0 * .5 * ((inz * 2 - 1) / (Float_t) nzp0 - 1.);
++inum;
- pMC->Gspos("FSK1", inum, "FST1", xcor, 0., zcor, 0, "ONLY");
- pMC->Gspos("FLK1", inum, "FLT1", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FSK1", inum, "FST1", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT1", xcor, 0., zcor, 0, "ONLY");
}
for (inz = 1; inz <= nzp1; ++inz) {
zcor = zm1 * .5 * ((inz * 2 - 1) / (Float_t) nzp1 - 1.);
++inum;
- pMC->Gspos("FSK1", inum, "FST2", xcor, 0., zcor, 0, "ONLY");
- pMC->Gspos("FLK1", inum, "FLT2", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FSK1", inum, "FST2", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT2", xcor, 0., zcor, 0, "ONLY");
}
for (inz = 1; inz <= nzp2; ++inz) {
zcor = zm2 * .5 * ((inz * 2 - 1) / (Float_t) nzp2 - 1.);
++inum;
- pMC->Gspos("FSK1", inum, "FST3", xcor, 0., zcor, 0, "ONLY");
- pMC->Gspos("FLK1", inum, "FLT3", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FSK1", inum, "FST3", xcor, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FLK1", inum, "FLT3", xcor, 0., zcor, 0, "ONLY");
}
}
par[0] = xsz / 2.;
par[1] = yp / 2.;
par[2] = zsz / 2.;
- pMC->Gsvolu("FSL1", "BOX ", idtmed[505], par, 3);
- pMC->Gsvolu("FLL1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FSL1", "BOX ", idtmed[505], par, 3);
+ gMC->Gsvolu("FLL1", "BOX ", idtmed[505], par, 3);
shiftx = (xp / 2. + xad / 2.) / 2.;
shiftz = (zm0 / nzp0 - zsz) / 2.;
- pMC->Gspos("FSL1", 0, "FSK1", -shiftx, 0., -shiftz, 0, "ONLY");
- pMC->Gspos("FLL1", 0, "FLK1", shiftx, 0., shiftz, 0, "ONLY");
+ gMC->Gspos("FSL1", 0, "FSK1", -shiftx, 0., -shiftz, 0, "ONLY");
+ gMC->Gspos("FLL1", 0, "FLK1", shiftx, 0., shiftz, 0, "ONLY");
// PPC position on PPC-plate
npx = 4;
npz = 8;
shiftx = npx * (xp * 2 + xad + xzd) / 2.;
shiftx1 = (xp * 2 + xzd + xad) / 2. - xp / 2.;
shiftx2 = (xp * 2 + xzd + xad) / 2. - xp / 2. - xzd;
- pMC->Gsvolu("FPG1", "BOX ", idtmed[507], par, 3);
+ gMC->Gsvolu("FPG1", "BOX ", idtmed[507], par, 3);
for (ink = 1; ink <= npx; ++ink) {
xcor1 = -shiftx + stepx * (ink * 2 - 1) - shiftx1;
xcor2 = -shiftx + stepx * (ink * 2 - 1) + shiftx2;
zcor = -shiftz + stepz * (inz * 2 - 1);
++inum;
inum1 = npx * npz + inum;
- pMC->Gspos("FPG1", inum, "FSL1", xcor1, 0., zcor, 0, "ONLY");
- pMC->Gspos("FPG1", inum1, "FSL1", xcor2, 0., zcor, 0, "ONLY");
- pMC->Gspos("FPG1", inum, "FLL1", xcor1, 0., zcor, 0, "ONLY");
- pMC->Gspos("FPG1", inum1, "FLL1", xcor2, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FPG1", inum, "FSL1", xcor1, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FPG1", inum1, "FSL1", xcor2, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FPG1", inum, "FLL1", xcor1, 0., zcor, 0, "ONLY");
+ gMC->Gspos("FPG1", inum1, "FLL1", xcor2, 0., zcor, 0, "ONLY");
}
}
par[0] = xp / 2. - dx;
par[1] = yp / 2. - dy;
par[2] = zp / 2. - dz;
- pMC->Gsvolu("FPG2", "BOX ", idtmed[509], par, 3);
- pMC->Gspos("FPG2", 0, "FPG1", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("FPG2", "BOX ", idtmed[509], par, 3);
+ gMC->Gspos("FPG2", 0, "FPG1", 0., 0., 0., 0, "ONLY");
}
//_____________________________________________________________________________
// Draw a shaded view of the Time Of Flight version 3
//
- 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("ALIC","SEEN",0);
- pMC->Gsatt("FBAR","SEEN",0);
- pMC->Gsatt("FTO1","SEEN",0);
- pMC->Gsatt("FTO2","SEEN",0);
- pMC->Gsatt("FTO3","SEEN",0);
- pMC->Gsatt("FBT1","SEEN",0);
- pMC->Gsatt("FBT2","SEEN",0);
- pMC->Gsatt("FBT3","SEEN",0);
- pMC->Gsatt("FST1","SEEN",0);
- pMC->Gsatt("FLT1","SEEN",0);
- pMC->Gsatt("FST2","SEEN",0);
- pMC->Gsatt("FLT2","SEEN",0);
- pMC->Gsatt("FST3","SEEN",0);
- pMC->Gsatt("FLT3","SEEN",0);
- pMC->Gsatt("FSK1","SEEN",0);
- pMC->Gsatt("FLK1","SEEN",0);
- pMC->Gsatt("FSL1","SEEN",1);
- pMC->Gsatt("FLL1","SEEN",1);
+ gMC->Gsatt("ALIC","SEEN",0);
+ gMC->Gsatt("FBAR","SEEN",0);
+ gMC->Gsatt("FTO1","SEEN",0);
+ gMC->Gsatt("FTO2","SEEN",0);
+ gMC->Gsatt("FTO3","SEEN",0);
+ gMC->Gsatt("FBT1","SEEN",0);
+ gMC->Gsatt("FBT2","SEEN",0);
+ gMC->Gsatt("FBT3","SEEN",0);
+ gMC->Gsatt("FST1","SEEN",0);
+ gMC->Gsatt("FLT1","SEEN",0);
+ gMC->Gsatt("FST2","SEEN",0);
+ gMC->Gsatt("FLT2","SEEN",0);
+ gMC->Gsatt("FST3","SEEN",0);
+ gMC->Gsatt("FLT3","SEEN",0);
+ gMC->Gsatt("FSK1","SEEN",0);
+ gMC->Gsatt("FLK1","SEEN",0);
+ gMC->Gsatt("FSL1","SEEN",1);
+ gMC->Gsatt("FLL1","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, 12, 9.5, .02, .02);
- pMC->Gdhead(1111, "Time Of Flight");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ 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, 12, 9.5, .02, .02);
+ gMC->Gdhead(1111, "Time Of Flight");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
// Initialise the detector after the geometry has been defined
//
- AliMC* pMC = AliMC::GetMC();
-
AliTOF::Init();
- fIdFTO2=pMC->VolId("FTO2");
- fIdFTO3=pMC->VolId("FTO3");
- fIdFLT1=pMC->VolId("FLT1");
- fIdFLT2=pMC->VolId("FLT2");
- fIdFLT3=pMC->VolId("FLT3");
+ fIdFTO2=gMC->VolId("FTO2");
+ fIdFTO3=gMC->VolId("FTO3");
+ fIdFLT1=gMC->VolId("FLT1");
+ fIdFLT2=gMC->VolId("FLT2");
+ fIdFLT3=gMC->VolId("FLT3");
}
//_____________________________________________________________________________
Float_t hits[8];
Int_t vol[3];
Int_t copy, id;
- AliMC *pMC= AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-499;
- if(pMC->GetMedium()==idtmed[510-1] &&
- pMC->TrackEntering() && pMC->TrackCharge()
- && pMC->CurrentVol(0,copy)==fIdSens) {
+ if(gMC->GetMedium()==idtmed[510-1] &&
+ gMC->TrackEntering() && gMC->TrackCharge()
+ && gMC->CurrentVol(0,copy)==fIdSens) {
TClonesArray &lhits = *fHits;
//
// Record only charged tracks at entrance
- pMC->CurrentVolOff(1,0,copy);
+ gMC->CurrentVolOff(1,0,copy);
vol[2]=copy;
- pMC->CurrentVolOff(3,0,copy);
+ gMC->CurrentVolOff(3,0,copy);
vol[1]=copy;
- id=pMC->CurrentVolOff(6,0,copy);
+ id=gMC->CurrentVolOff(6,0,copy);
vol[0]=copy;
if(id==fIdFTO3) {
vol[0]+=22;
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT3) vol[1]+=6;
} else if (id==fIdFTO2) {
vol[0]+=20;
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT2) vol[1]+=8;
} else {
- id=pMC->CurrentVolOff(4,0,copy);
+ id=gMC->CurrentVolOff(4,0,copy);
if(id==fIdFLT1) vol[1]+=14;
}
- pMC->TrackPosition(hits);
- pMC->TrackMomentum(&hits[3]);
- hits[7]=pMC->TrackTime();
+ gMC->TrackPosition(hits);
+ gMC->TrackMomentum(&hits[3]);
+ hits[7]=gMC->TrackTime();
new(lhits[fNhits++]) AliTOFhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
// Origin: Marek Kowalski IFJ, Krakow, Marek.Kowalski@ifj.edu.pl
//-----------------------------------------------------------------
- AliMC* pMC = AliMC::GetMC();
-
Int_t ISXFLD=gAlice->Field()->Integ();
Float_t SXMGMX=gAlice->Field()->Max();
// -- Get A,Z etc. for CO2
char namate[21];
- pMC->Gfmate((*fIdmate)[7], namate, a, z, d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[7], namate, a, z, d, radl, absl, buf, nbuf);
ag[1] = a;
zg[1] = z;
dg = dne * .9 + dc * .1;
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-399;
Float_t tana, rlsl, wlsl, rssl, rlsu, wssl, wlsu,
dm[1] = 278.;
dm[2] = 275.;
- pMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
// -------------------------------------------------------
// drift gas Ne/CO2 (90/10 volume) - nonsensitive
// field cage thickness = 0.52% X0
dm[1] = 257.;
dm[2] = 250.;
- pMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
+ gMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
// ------------------------------------------------------
// "side" gas volume (the same as drift gas)
// here the readout chambers are positioned
dm[2] = 0.5*(275.-250.);
z_side = dm[2];
- pMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
// ------------------------------------------------------
// HV midplane - 20 microns of mylar
// -----------------------------------------------------
dm[2] = .001;
- pMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
+ gMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
// ====================================================
// lower and upper readout chambers
x0l = rssl + dm[3];
- pMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
// ---------------------------------------------------
// L-sectors readout chambers (upper sectors)
// ---------------------------------------------------
x0u = rlsl + dm[3];
- pMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
// ----------------------------------------------------
// positioning of the S-sector readout chambers
// rotation matices 1-12
y = x0l * TMath::Sin(alpha);
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TRCS", il, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCS", il, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// ----------------------------------------------------
// positioning of the L-sector readout chambers
x = x0u * TMath::Cos(alpha);
y = x0u * TMath::Sin(alpha);
- pMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// Spoke wheel structures
// --------------------------------------------------------
- pMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
+ gMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
z0 = -z_side + 2.;
dm[1] = 86.;
dm[2] = 1.;
- pMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 253.;
dm[1] = 257.;
- pMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 140.9;
dm[1] = 141.9;
- pMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
// -------------------------------------------------------
// this volumes are to avoid overlaping
dm[0] = 76.;
dm[1] = 76.+0.09776;
- pMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0,0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0,0, "ONLY", dm, 3);
z0 += 21.;
- pMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 257.;
dm[1] = 257.+0.09776;
z0 = 263.5;
- pMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ==========================================================
// wheels
// ==========================================================
dm[0] = 257.+0.09776;
dm[1] = 278.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
dm[0] = 259.;
dm[1] = 278.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
// -----------------------------------------------------------
// Small wheel -> positioned in the TPSG
// -----------------------------------------------------------
dm[1] = 82.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
dm[0] = 76.+0.09776;
dm[1] = 80.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
- pMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
z0 = 1.;
- pMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// ---------------------------------------------------------
// spokes, inner and outer, also the inner ring
// ---------------------------------------------------------
x1 = dm[0] + 82.;
- pMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
dm[0] = 0.5*(256.9-142.1);
dm[1] = 3.;
x2 = dm[0] + 142.;
- pMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
// --------------------------------------------------------
dm[0] = 136.;
dm[1] = 142.;
dm[2] = 2.;
- pMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
dm[0] = 137.;
dm[1] = 141.;
dm[2] = 1.;
- pMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
z0 = z_side - .16168 - 2.;
// --------------------------------------------------------
- pMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// -------------------------------------------------------
// posiioning of the inner spokes
// -------------------------------------------------------
idr = il + 36;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
idr = iu + 42;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// endcap cover (C, 0.86% X0)
dm[1] = 257.;
dm[2] = 0.16168*0.5;
- pMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
z0 = z_side - dm[2];
- pMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// --------------------------------------------------------
// put the readout chambers into the TPC
// --------------------------------------------------------
z0 = z_side + 250.;
- pMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
+ gMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
// ---------------------------------------------------------
// outer gas insulation (CO2)
// ---------------------------------------------------------
dm[1] = 278.-0.25004;
dm[2] = 275.-23.;
- pMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
+ gMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
- pMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ======================================================
// all volumes below are positioned in ALIC
// ======================================================
z0 = 253.;
- pMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 70.;
z0 += 21.;
- pMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ----------------------------------------------------
// Inner vessel (PCON)
// This volume is to be positioned directly in ALIC
dm[13] = 75.;
dm[14] = 76.;
- pMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
+ gMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
// --------------------------------------------------------
// fill the inner vessel with CO2, (HV kDegrader)
// cone parts have different thickness
dm[19] = (185.5-0.2126)*tana+0.2126;
dm[20] = 76-0.001;
- pMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
+ gMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
- pMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ---------------------------------------------------
// volumes ordering
// ---------------------------------------------------
- pMC->Gsord("TPSG", 6);
+ gMC->Gsord("TPSG", 6);
}
//_____________________________________________________________________________
// Draw a shaded view of the Time Projection Chamber 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("TPC","SEEN",0);
- pMC->Gsatt("TGAS","SEEN",0);
- pMC->Gsatt("TPSG","SEEN",0);
- pMC->Gsatt("TPHV","SEEN",1);
- pMC->Gsatt("TRCS","SEEN",1);
- pMC->Gsatt("TRCL","SEEN",1);
- pMC->Gsatt("TSWS","SEEN",1);
- pMC->Gsatt("TPW1","SEEN",1);
- pMC->Gsatt("TPW2","SEEN",1);
- pMC->Gsatt("TPW3","SEEN",1);
- pMC->Gsatt("TPW4","SEEN",1);
- pMC->Gsatt("TSPI","SEEN",1);
- pMC->Gsatt("TSP1","SEEN",0);
- pMC->Gsatt("TSPO","SEEN",1);
- pMC->Gsatt("TSP2","SEEN",0);
- pMC->Gsatt("TSWH","SEEN",1);
- pMC->Gsatt("TSW1","SEEN",1);
- pMC->Gsatt("TPOI","SEEN",1);
- pMC->Gsatt("TPIV","SEEN",1);
- pMC->Gsatt("TPVD","SEEN",1);
+ gMC->Gsatt("TPC","SEEN",0);
+ gMC->Gsatt("TGAS","SEEN",0);
+ gMC->Gsatt("TPSG","SEEN",0);
+ gMC->Gsatt("TPHV","SEEN",1);
+ gMC->Gsatt("TRCS","SEEN",1);
+ gMC->Gsatt("TRCL","SEEN",1);
+ gMC->Gsatt("TSWS","SEEN",1);
+ gMC->Gsatt("TPW1","SEEN",1);
+ gMC->Gsatt("TPW2","SEEN",1);
+ gMC->Gsatt("TPW3","SEEN",1);
+ gMC->Gsatt("TPW4","SEEN",1);
+ gMC->Gsatt("TSPI","SEEN",1);
+ gMC->Gsatt("TSP1","SEEN",0);
+ gMC->Gsatt("TSPO","SEEN",1);
+ gMC->Gsatt("TSP2","SEEN",0);
+ gMC->Gsatt("TSWH","SEEN",1);
+ gMC->Gsatt("TSW1","SEEN",1);
+ gMC->Gsatt("TPOI","SEEN",1);
+ gMC->Gsatt("TPIV","SEEN",1);
+ gMC->Gsatt("TPVD","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, 12, 9.5, .025, .025);
- pMC->Gdhead(1111, "Time Projection Chamber");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ 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, 12, 9.5, .025, .025);
+ gMC->Gdhead(1111, "Time Projection Chamber");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-399;
dm[1] = 278.;
dm[2] = 275.;
- pMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
// -------------------------------------------------------
// drift gas Ne/CO2 (90/10 volume) - nonsensitive
dm[1] = 257.;
dm[2] = 250.;
- pMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
+ gMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
// ------------------------------------------------------
// "side" gas volume (the same as drift gas),
dm[2] = 12.5;
z_side = dm[2];
- pMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
// ------------------------------------------------------
// HV midplane - 20 microns of mylar
// -----------------------------------------------------
dm[2] = .001;
- pMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
+ gMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
// ====================================================
// lower and upper readout chambers
//End_Html
- pMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
// -----------------------------------------------------
// S-sectors --> "gas sectors"
// -----------------------------------------------------
//End_Html
dm[2] = (250.-0.001)/2.;
- pMC->Gsvolu("TSGA", "TRD1", idtmed[402], dm, 4);
+ gMC->Gsvolu("TSGA", "TRD1", idtmed[402], dm, 4);
// ---------------------------------------------------
// L-sectors (upper sectors)
// ---------------------------------------------------
x0u = rlsl + dm[3];
- pMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
// -----------------------------------------------------
// L-sectors - "gas sectors"
// -----------------------------------------------------
dm[2] = (250.-0.001)/2.;
- pMC->Gsvolu("TLGA", "TRD1", idtmed[402], dm, 4);
+ gMC->Gsvolu("TLGA", "TRD1", idtmed[402], dm, 4);
// -----------------------------------------------------
// thin sensitive strips (100 microns) placed at a center
// of each pad row in the "drift gas sector"
// -----------------------------------------------------
- pMC->Gsvolu("TSST", "TRD1", idtmed[403], dm, 0);
+ gMC->Gsvolu("TSST", "TRD1", idtmed[403], dm, 0);
dm[3] = .005;
z0 = rssl + (rssu - rssl) * .5;
zz = -z0 + r1+dm[3];
- pMC->Gsposp("TSST", iss+1, "TSGA", 0, 0, zz, 0, "ONLY", dm, 4);
+ gMC->Gsposp("TSST", iss+1, "TSGA", 0, 0, zz, 0, "ONLY", dm, 4);
}
// -----------------------------------------------------
// thin sensitive strips (100 microns) placed at a center
// of each pad row in the "drift gas sector"
// -----------------------------------------------------
- pMC->Gsvolu("TLST", "TRD1", idtmed[403], dm, 0);
+ gMC->Gsvolu("TLST", "TRD1", idtmed[403], dm, 0);
z0 = rlsl+ (rlsu - rlsl) * .5;
zz = -z0 + r1 +dm[3];
- pMC->Gsposp("TLST", ils+1, "TLGA", 0, 0, zz, 0, "ONLY", dm, 4);
+ gMC->Gsposp("TLST", ils+1, "TLGA", 0, 0, zz, 0, "ONLY", dm, 4);
}
// ------------------------------------------------
// positioning of lower sectors (1-12)*2
x = x0l * TMath::Cos(alpha);
y = x0l * TMath::Sin(alpha);
- pMC->Gspos("TSGA", il+1, "TGAS", x, y, z, idrotm[idr], "ONLY");
- pMC->Gspos("TSGA", il+13,"TGAS", x, y, -z, idrotm[idr], "ONLY");
- pMC->Gspos("TRCS", il+1, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TSGA", il+1, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TSGA", il+13,"TGAS", x, y, -z, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCS", il+1, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// ----------------------------------------------------
x = x0u * TMath::Cos(alpha);
y = x0u * TMath::Sin(alpha);
- pMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
- pMC->Gspos("TLGA", iu+24, "TGAS", x, y, -z, idrotm[idr], "ONLY");
+ gMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TLGA", iu+24, "TGAS", x, y, -z, idrotm[idr], "ONLY");
- pMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// Spoke wheel structures
// --------------------------------------------------------
- pMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
+ gMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
z0 = -z_side + 2.;
dm[1] = 86.;
dm[2] = 1.;
- pMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 253.;
dm[1] = 257.;
- pMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 140.9;
dm[1] = 141.9;
- pMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
// -------------------------------------------------------
// this volumes are to avoid overlaping
dm[0] = 76.;
dm[1] = 76.+0.09776;
- pMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
z0 += 21.;
- pMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 257.;
dm[1] = 257.+0.09776;
z0 = 263.5;
- pMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ==========================================================
// wheels
// ==========================================================
dm[0] = 257.+0.09776;
dm[1] = 278.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
dm[0] = 259.;
dm[1] = 278.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
// -----------------------------------------------------------
// Small wheel -> positioned in the TPSG
// -----------------------------------------------------------
dm[1] = 82.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
dm[0] = 76.+0.09776;
dm[1] = 80.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
- pMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
z0 = 1.;
- pMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// ---------------------------------------------------------
// spokes, inner and outer, also the inner ring
// ---------------------------------------------------------
x1 = dm[0] + 82.;
- pMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
dm[0] = 0.5*(256.9-142.1);
dm[1] = 3.;
x2 = dm[0] + 142.;
- pMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
// --------------------------------------------------------
dm[0] = 136.;
dm[1] = 142.;
dm[2] = 2.;
- pMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
dm[0] = 137.;
dm[1] = 141.;
dm[2] = 1.;
- pMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
z0 = z_side - .16168 - 2.;
// --------------------------------------------------------
- pMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// -------------------------------------------------------
// posiioning of the inner spokes
// -------------------------------------------------------
idr = il + 36;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
for (iu = 1; iu <= 12; ++iu) {
idr = iu + 42;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// endcap cover (C, 0.86% X0)
dm[1] = 257.;
dm[2] = 0.16168*0.5;
- pMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
z0 = z_side - dm[2];
- pMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// --------------------------------------------------------
// put the readout chambers into the TPC
// --------------------------------------------------------
z0 = z_side + 250.;
- pMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
+ gMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
// ---------------------------------------------------------
// outer gas insulation (CO2)
// ---------------------------------------------------------
dm[1] = 278.-0.25004;
dm[2] = 275.-23.;
- pMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
+ gMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
- pMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ======================================================
// all volumes below are positioned in ALIC
// ======================================================
z0 = 253.;
- pMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 70.;
z0 += 21.;
- pMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ----------------------------------------------------
// Inner vessel (PCON)
// This volume is to be positioned directly in ALIC
dm[13] = 75.;
dm[14] = 76.;
- pMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
+ gMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
// --------------------------------------------------------
// fill the inner vessel with CO2, (HV kDegrader)
// cone parts have different thickness
dm[19] = (185.5-0.2126)*tana+0.2126;
dm[20] = 76-0.001;
- pMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
+ gMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
- pMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ---------------------------------------------------
// volumes ordering
// ---------------------------------------------------
- pMC->Gsord("TGAS", 6);
- pMC->Gsord("TPSG", 6);
- pMC->Gsord("TSGA", 3);
- pMC->Gsord("TLGA", 3);
+ gMC->Gsord("TGAS", 6);
+ gMC->Gsord("TPSG", 6);
+ gMC->Gsord("TSGA", 3);
+ gMC->Gsord("TLGA", 3);
}
//_____________________________________________________________________________
// Draw a shaded view of the Time Projection Chamber 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("TPC","SEEN",0);
- pMC->Gsatt("TGAS","SEEN",0);
- pMC->Gsatt("TPSG","SEEN",0);
- pMC->Gsatt("TPHV","SEEN",1);
- pMC->Gsatt("TRCS","SEEN",1);
- pMC->Gsatt("TRCL","SEEN",1);
- pMC->Gsatt("TSST","SEEN",1);
- pMC->Gsatt("TLST","SEEN",1);
- pMC->Gsatt("TSWS","SEEN",1);
- pMC->Gsatt("TPW1","SEEN",1);
- pMC->Gsatt("TPW2","SEEN",1);
- pMC->Gsatt("TPW3","SEEN",1);
- pMC->Gsatt("TPW4","SEEN",1);
- pMC->Gsatt("TSPI","SEEN",1);
- pMC->Gsatt("TSP1","SEEN",0);
- pMC->Gsatt("TSPO","SEEN",1);
- pMC->Gsatt("TSP2","SEEN",0);
- pMC->Gsatt("TSWH","SEEN",1);
- pMC->Gsatt("TSW1","SEEN",1);
- pMC->Gsatt("TCOV","SEEN",0);
- pMC->Gsatt("TPOI","SEEN",1);
- pMC->Gsatt("TPIV","SEEN",1);
- pMC->Gsatt("TPVD","SEEN",1);
+ gMC->Gsatt("TPC","SEEN",0);
+ gMC->Gsatt("TGAS","SEEN",0);
+ gMC->Gsatt("TPSG","SEEN",0);
+ gMC->Gsatt("TPHV","SEEN",1);
+ gMC->Gsatt("TRCS","SEEN",1);
+ gMC->Gsatt("TRCL","SEEN",1);
+ gMC->Gsatt("TSST","SEEN",1);
+ gMC->Gsatt("TLST","SEEN",1);
+ gMC->Gsatt("TSWS","SEEN",1);
+ gMC->Gsatt("TPW1","SEEN",1);
+ gMC->Gsatt("TPW2","SEEN",1);
+ gMC->Gsatt("TPW3","SEEN",1);
+ gMC->Gsatt("TPW4","SEEN",1);
+ gMC->Gsatt("TSPI","SEEN",1);
+ gMC->Gsatt("TSP1","SEEN",0);
+ gMC->Gsatt("TSPO","SEEN",1);
+ gMC->Gsatt("TSP2","SEEN",0);
+ gMC->Gsatt("TSWH","SEEN",1);
+ gMC->Gsatt("TSW1","SEEN",1);
+ gMC->Gsatt("TCOV","SEEN",0);
+ gMC->Gsatt("TPOI","SEEN",1);
+ gMC->Gsatt("TPIV","SEEN",1);
+ gMC->Gsatt("TPVD","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, 12, 9.5, .025, .025);
- pMC->Gdhead(1111, "Time Projection Chamber");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ 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, 12, 9.5, .025, .025);
+ gMC->Gdhead(1111, "Time Projection Chamber");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
//
// Initialises TPC detector after it has been created
//
- AliMC* pMC=AliMC::GetMC();
- fIdSens1=pMC->VolId("TLST");
- fIdSens2=pMC->VolId("TSST");
+
+ fIdSens1=gMC->VolId("TLST");
+ fIdSens2=gMC->VolId("TSST");
printf("TPC version 1 initialized\n");
}
Float_t hits[4];
Int_t vol[2];
TClonesArray &lhits = *fHits;
- AliMC* pMC=AliMC::GetMC();
+
//
- if(pMC->TrackCharge() && pMC->TrackEntering()) {
+ if(gMC->TrackCharge() && gMC->TrackEntering()) {
//
// Only entering charged tracks
- if((id=pMC->CurrentVol(0, copy))==fIdSens1) {
+ if((id=gMC->CurrentVol(0, copy))==fIdSens1) {
vol[1]=copy+23;
- id=pMC->CurrentVolOff(1,0,copy);
+ id=gMC->CurrentVolOff(1,0,copy);
vol[0]=copy+24;
} else if(id==fIdSens2) {
vol[1]=copy;
- id=pMC->CurrentVolOff(1,0,copy);
+ id=gMC->CurrentVolOff(1,0,copy);
vol[0]=copy;
} else return;
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3]=0;
new(lhits[fNhits++]) AliTPChit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
*/
//End_Html
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-399;
AliTPCParam * fTPCParam = &(fDigParam->GetParam());
dm[1] = 278.;
dm[2] = 275.;
- pMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TPC ", "TUBE", idtmed[407], dm, 3);
// -------------------------------------------------------
// drift gas Ne/CO2 (90/10 volume) - nonsensitive
// field cage thickness = 0.52% X0
dm[1] = 257.;
dm[2] = 250.;
- pMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
+ gMC->Gsvolu("TGAS", "TUBE", idtmed[402], dm, 3);
// ------------------------------------------------------
// "side" gas volume (the same as drift gas),
// here the readout chambers are positioned
dm[2] = 0.5*(275.-250.);
z_side = dm[2];
- pMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPSG", "TUBE", idtmed[401], dm, 3);
// ------------------------------------------------------
// HV midplane - 20 microns of mylar
// -----------------------------------------------------
dm[2] = .001;
- pMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
+ gMC->Gsvolu("TPHV", "TUBE", idtmed[405], dm, 3);
// ====================================================
// lower and upper readout chambers
x0l = rssl + dm[3];
- pMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCS", "TRD1", idtmed[399], dm, 4);
// -----------------------------------------------------
// S-sectors --> "gas sectors" - sensitive
// -----------------------------------------------------
dm[2] = (250.-0.001)/2.;
- pMC->Gsvolu("TSGA", "TRD1", idtmed[403], dm, 4);
+ gMC->Gsvolu("TSGA", "TRD1", idtmed[403], dm, 4);
// -------------------------------------------------------------
// Only for the debugging purpose and resolution calculation
// Sensitive strips at the pad-row center
// -------------------------------------------------------------
if (fSens >= 0) {
- pMC->Gsvolu("TSST", "TRD1", idtmed[403], dm, 0);
+ gMC->Gsvolu("TSST", "TRD1", idtmed[403], dm, 0);
dm[3] = .005;
z0 = rssl + (rssu - rssl) * .5;
zz = -z0 + r1 +dm[3];
- pMC->Gsposp("TSST", iss+1, "TSGA", 0, 0, zz, 0, "ONLY", dm, 4);
+ gMC->Gsposp("TSST", iss+1, "TSGA", 0, 0, zz, 0, "ONLY", dm, 4);
}
- pMC->Gsord("TSGA", 3);
+ gMC->Gsord("TSGA", 3);
}
// ---------------------------------------------------
// L-sectors (upper sectors)
x0u = rlsl + dm[3];
- pMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
+ gMC->Gsvolu("TRCL", "TRD1", idtmed[399], dm, 4);
// -----------------------------------------------------
// L-sectors - "gas sectors" - sensitive!
// -----------------------------------------------------
dm[2] = (250.-0.001)/2.;
- pMC->Gsvolu("TLGA", "TRD1", idtmed[403], dm, 4);
+ gMC->Gsvolu("TLGA", "TRD1", idtmed[403], dm, 4);
// -------------------------------------------------------------
// Only for the debugging purpose and resolution calculation
// Sensitive strips at the pad-row center
// -------------------------------------------------------------
if (fSens >= 0) {
- pMC->Gsvolu("TLST", "TRD1", idtmed[403], dm, 0);
+ gMC->Gsvolu("TLST", "TRD1", idtmed[403], dm, 0);
dm[3] = .005;
zz = -z0 + r1 +dm[3];
- pMC->Gsposp("TLST", ils+1, "TLGA", 0, 0, zz, 0, "ONLY", dm, 4);
+ gMC->Gsposp("TLST", ils+1, "TLGA", 0, 0, zz, 0, "ONLY", dm, 4);
}
- pMC->Gsord("TLGA", 3);
+ gMC->Gsord("TLGA", 3);
}
// ******************************************************
// ------------------------------------------------
// -----------------------------------------------------------
// position ALL lower sectors
// -----------------------------------------------------------
- pMC->Gspos("TSGA", il, "TGAS", x, y, z, idrotm[idr], "ONLY");
- pMC->Gspos("TSGA",il+12 , "TGAS", x, y, -z, idrotm[idr], "ONLY");
+ gMC->Gspos("TSGA", il, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TSGA",il+12 , "TGAS", x, y, -z, idrotm[idr], "ONLY");
} else {
// -----------------------------------------------------------
// position selected lower sectors
// -----------------------------------------------------------
for (isll = 1; isll <= 6; ++isll) {
if (fSecLows[isll - 1] == il) {
- pMC->Gspos("TSGA", il, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TSGA", il, "TGAS", x, y, z, idrotm[idr], "ONLY");
} else if (fSecLows[isll - 1] == il + 12) {
- pMC->Gspos("TSGA",il+12 , "TGAS", x, y, -z, idrotm[idr],"ONLY");
+ gMC->Gspos("TSGA",il+12 , "TGAS", x, y, -z, idrotm[idr],"ONLY");
}
}
}
- pMC->Gspos("TRCS", il, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCS", il, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// ----------------------------------------------------
// -------------------------------------------------------------
// position ALL upper sectors
// -------------------------------------------------------------
- pMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
- pMC->Gspos("TLGA",iu+24 , "TGAS", x, y, -z, idrotm[idr], "ONLY");
+ gMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TLGA",iu+24 , "TGAS", x, y, -z, idrotm[idr], "ONLY");
} else {
// -------------------------------------------------------------
// position selected upper sectors
// -------------------------------------------------------------
for (isll = 1; isll <= 12; ++isll) {
if (fSecUps[isll - 1] == iu + 24) {
- pMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
+ gMC->Gspos("TLGA", iu, "TGAS", x, y, z, idrotm[idr], "ONLY");
} else if (fSecUps[isll - 1] == iu + 48) {
- pMC->Gspos("TLGA",iu+24 , "TGAS", x, y, -z, idrotm[idr],"ONLY");
+ gMC->Gspos("TLGA",iu+24 , "TGAS", x, y, -z, idrotm[idr],"ONLY");
}
}
}
- pMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
+ gMC->Gspos("TRCL", iu, "TPSG", x, y, z1, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// Spoke wheel structures
// --------------------------------------------------------
- pMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
+ gMC->Gsvolu("TSWS", "TUBE", idtmed[399], dm, 0);
z0 = -z_side + 2.;
dm[1] = 86.;
dm[2] = 1.;
- pMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 1, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 253.;
dm[1] = 257.;
- pMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 2, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
dm[0] = 140.9;
dm[1] = 141.9;
- pMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 3, "TPSG", 0, 0, z0, 0, "ONLY", dm, 3);
// -------------------------------------------------------
// this volumes are to avoid overlaping
dm[0] = 76.;
dm[1] = 76.+0.09776;
- pMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 4, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 5, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
z0 += 21.;
- pMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 6, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 7, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 257.;
dm[1] = 257.+0.09776;
z0 = 263.5;
- pMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 8, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 9, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ==========================================================
// wheels
// ==========================================================
dm[0] = 257.+0.09776;
dm[1] = 278.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW1", "TUBE", idtmed[399], dm, 3);
dm[0] = 259.;
dm[1] = 278.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TPW2", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW2", 1, "TPW1", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW1", 2, "TPC ", 0, 0, -z0, 0, "ONLY");
// -----------------------------------------------------------
// Small wheel -> positioned in the TPSG
// -----------------------------------------------------------
dm[1] = 82.;
dm[2] = 11.5;
- pMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TPW3", "TUBE", idtmed[399], dm, 3);
dm[0] = 76.+0.09776;
dm[1] = 80.;
dm[2] = 9.5;
- pMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
+ gMC->Gsvolu("TPW4", "TUBE", idtmed[401], dm, 3);
- pMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPW4", 1, "TPW3", 0, 0, 0, 0, "ONLY");
z0 = 1.;
- pMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPW3", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// ---------------------------------------------------------
// spokes, inner and outer, also the inner ring
// ---------------------------------------------------------
x1 = dm[0] + 82.;
- pMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPI", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP1", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP1", 1, "TSPI", 0, 0, 0, 0, "ONLY");
dm[0] = 0.5*(256.9-142.1);
dm[1] = 3.;
x2 = dm[0] + 142.;
- pMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSPO", "BOX ", idtmed[399], dm, 3);
dm[1] = 2.;
dm[2] = 1.;
- pMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSP2", "BOX ", idtmed[498], dm, 3);
- pMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSP2", 1, "TSPO", 0, 0, 0, 0, "ONLY");
// --------------------------------------------------------
dm[0] = 136.;
dm[1] = 142.;
dm[2] = 2.;
- pMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
+ gMC->Gsvolu("TSWH", "TUBE", idtmed[399], dm, 3);
dm[0] = 137.;
dm[1] = 141.;
dm[2] = 1.;
- pMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
+ gMC->Gsvolu("TSW1", "TUBE", idtmed[498], dm, 3);
- pMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TSW1", 1, "TSWH", 0, 0, 0, 0, "ONLY");
z0 = z_side - .16168 - 2.;
// --------------------------------------------------------
- pMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TSWH", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// -------------------------------------------------------
// posiioning of the inner spokes
// -------------------------------------------------------
idr = il + 36;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPI", il, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
idr = iu + 42;
AliMatrix(idrotm[idr], theta1, phi1, theta2, phi2, theta3, phi3);
- pMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
+ gMC->Gspos("TSPO", iu, "TPSG", x, y, z0, idrotm[idr], "ONLY");
}
// --------------------------------------------------------
// endcap cover (C, 0.86% X0)
dm[1] = 257.;
dm[2] = 0.16168*0.5;
- pMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
+ gMC->Gsvolu("TCOV", "TUBE", idtmed[407], dm, 3);
z0 = z_side - dm[2];
- pMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TCOV", 1, "TPSG", 0, 0, z0, 0, "ONLY");
// --------------------------------------------------------
// put the readout chambers into the TPC
// --------------------------------------------------------
z0 = z_side + 250.;
- pMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
- pMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
+ gMC->Gspos("TPSG", 1, "TPC ", 0, 0, z0, 0, "ONLY");
+ gMC->Gspos("TPSG", 2, "TPC ", 0, 0, -z0, idrotm[55], "ONLY");
// ---------------------------------------------------------
// outer gas insulation (CO2)
// ---------------------------------------------------------
dm[1] = 278.-0.25004;
dm[2] = 275.-23.;
- pMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
+ gMC->Gsvolu("TPOI", "TUBE", idtmed[406], dm, 3);
- pMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPHV", 1, "TGAS", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TGAS", 1, "TPC ", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPOI", 1, "TPC ", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPC ", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ======================================================
// all volumes below are positioned in ALIC
// ======================================================
z0 = 253.;
- pMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 10, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 11, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
dm[0] = 70.;
z0 += 21.;
- pMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
- pMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 12, "TPC ", 0, 0, z0, 0, "ONLY", dm, 3);
+ gMC->Gsposp("TSWS", 13, "TPC ", 0, 0, -z0, 0, "ONLY", dm, 3);
// ----------------------------------------------------
// Inner vessel (PCON)
// This volume is to be positioned directly in ALIC
dm[13] = 75.;
dm[14] = 76.;
- pMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
+ gMC->Gsvolu("TPIV", "PCON", idtmed[407], dm, 15);
// --------------------------------------------------------
// fill the inner vessel with CO2, (HV kDegrader)
// cone parts have different thickness
dm[19] = (185.5-0.2126)*tana+0.2126;
dm[20] = 76-0.001;
- pMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
+ gMC->Gsvolu("TPVD", "PCON", idtmed[406], dm, 21);
- pMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPVD", 1, "TPIV", 0, 0, 0, 0, "ONLY");
- pMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
+ gMC->Gspos("TPIV", 1, "ALIC", 0, 0, 0, 0, "ONLY");
// ---------------------------------------------------
// volumes ordering
// ---------------------------------------------------
- pMC->Gsord("TGAS", 6);
- pMC->Gsord("TPSG", 6);
+ gMC->Gsord("TGAS", 6);
+ gMC->Gsord("TPSG", 6);
}
//_____________________________________________________________________________
// Draw a shaded view of the Time Projection Chamber 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("TPC","SEEN",0);
- pMC->Gsatt("TGAS","SEEN",0);
- pMC->Gsatt("TPSG","SEEN",0);
- pMC->Gsatt("TPHV","SEEN",1);
- pMC->Gsatt("TRCS","SEEN",1);
- pMC->Gsatt("TRCL","SEEN",1);
- pMC->Gsatt("TSWS","SEEN",1);
- pMC->Gsatt("TPW1","SEEN",1);
- pMC->Gsatt("TPW3","SEEN",1);
- pMC->Gsatt("TSPI","SEEN",1);
- pMC->Gsatt("TSPO","SEEN",1);
- pMC->Gsatt("TSWH","SEEN",1);
- pMC->Gsatt("TPOI","SEEN",1);
- pMC->Gsatt("TPIV","SEEN",1);
- pMC->Gsatt("TPVD","SEEN",1);
+ gMC->Gsatt("TPC","SEEN",0);
+ gMC->Gsatt("TGAS","SEEN",0);
+ gMC->Gsatt("TPSG","SEEN",0);
+ gMC->Gsatt("TPHV","SEEN",1);
+ gMC->Gsatt("TRCS","SEEN",1);
+ gMC->Gsatt("TRCL","SEEN",1);
+ gMC->Gsatt("TSWS","SEEN",1);
+ gMC->Gsatt("TPW1","SEEN",1);
+ gMC->Gsatt("TPW3","SEEN",1);
+ gMC->Gsatt("TSPI","SEEN",1);
+ gMC->Gsatt("TSPO","SEEN",1);
+ gMC->Gsatt("TSWH","SEEN",1);
+ gMC->Gsatt("TPOI","SEEN",1);
+ gMC->Gsatt("TPIV","SEEN",1);
+ gMC->Gsatt("TPVD","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, 12, 9.5, .025, .025);
- pMC->Gdhead(1111, "Time Projection Chamber");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide","off");
+ 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, 12, 9.5, .025, .025);
+ gMC->Gdhead(1111, "Time Projection Chamber");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide","off");
}
//_____________________________________________________________________________
// Define materials for version 2 of the Time Projection Chamber
//
- AliMC* pMC = AliMC::GetMC();
-
//
// Increase maximum number of steps
- pMC->SetMaxNStep(30000);
+ gMC->SetMaxNStep(30000);
//
AliTPC::CreateMaterials();
}
//
// Initialises version 2 of the TPC after that it has been built
//
- AliMC* pMC=AliMC::GetMC();
Int_t *idtmed = fIdtmed->GetArray()-399;
AliTPC::Init();
- fIdSens1=pMC->VolId("TLGA"); // L-sector
- fIdSens2=pMC->VolId("TSGA"); // S-sector
- fIdSens3=pMC->VolId("TSST"); // strip - S-sector (not always used)
- fIdSens4=pMC->VolId("TLST"); // strip - S-sector (not always used)
+ fIdSens1=gMC->VolId("TLGA"); // L-sector
+ fIdSens2=gMC->VolId("TSGA"); // S-sector
+ fIdSens3=gMC->VolId("TSST"); // strip - S-sector (not always used)
+ fIdSens4=gMC->VolId("TLST"); // strip - S-sector (not always used)
- pMC->SetMaxNStep(30000); // max. number of steps increased
+ gMC->SetMaxNStep(30000); // max. number of steps increased
- pMC->Gstpar(idtmed[403],"LOSS",5);
+ gMC->Gstpar(idtmed[403],"LOSS",5);
printf("*** TPC version 2 initialized ***\n");
- printf("Maximum number of steps = %d\n",pMC->GetMaxNStep());
+ printf("Maximum number of steps = %d\n",gMC->GetMaxNStep());
//
Float_t hits[4];
Int_t vol[2];
TClonesArray &lhits = *fHits;
- AliMC* pMC=AliMC::GetMC();
vol[1]=0;
//
- pMC->SetMaxStep(big);
+ gMC->SetMaxStep(big);
- if(!pMC->TrackAlive()) return; // particle has disappeared
+ if(!gMC->TrackAlive()) return; // particle has disappeared
- Float_t charge = pMC->TrackCharge();
+ Float_t charge = gMC->TrackCharge();
if(TMath::Abs(charge)<=0.) return; // take only charged particles
- id=pMC->CurrentVol(0, copy);
+ id=gMC->CurrentVol(0, copy);
// Check the sensitive volume
{
vol[0] = copy; // S-sector number
}
- else if(id == fIdSens3 && pMC->TrackEntering())
+ else if(id == fIdSens3 && gMC->TrackEntering())
{
vol[1] = copy; // row number
- id = pMC->CurrentVolOff(1,0,copy);
+ id = gMC->CurrentVolOff(1,0,copy);
vol[0] = copy; // sector number (S-sector)
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3]=0.; // this hit has no energy loss
new(lhits[fNhits++]) AliTPChit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
- else if(id == fIdSens4 && pMC->TrackEntering())
+ else if(id == fIdSens4 && gMC->TrackEntering())
{
vol[1] = copy; // row number
- id = pMC->CurrentVolOff(1,0,copy);
+ id = gMC->CurrentVolOff(1,0,copy);
vol[0] = copy+24; // sector number (L-sector)
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3]=0.; // this hit has no energy loss
new(lhits[fNhits++]) AliTPChit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
// charged particle is in the sensitive volume
//
- if(pMC->TrackStep() > 0) {
+ if(gMC->TrackStep() > 0) {
- Int_t nel = (Int_t)(((pMC->Edep())-poti)/w_ion) + 1;
+ Int_t nel = (Int_t)(((gMC->Edep())-poti)/w_ion) + 1;
nel=TMath::Min(nel,300); // 300 electrons corresponds to 10 keV
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3]=(Float_t)nel;
// Add this hit
Float_t pp;
Float_t vect[4];
- pMC->TrackMomentum(vect);
+ gMC->TrackMomentum(vect);
Float_t ptot = vect[3];
- Float_t beta_gamma = ptot/(pMC->TrackMass());
+ Float_t beta_gamma = ptot/(gMC->TrackMass());
- if(pMC->TrackPid() <= 3 && ptot > 0.002)
+ if(gMC->TrackPid() <= 3 && ptot > 0.002)
{
pp = prim*1.58; // electrons above 20 MeV/c are on the plateau!
}
}
Float_t random[1];
- pMC->Rndm(random,1); // good, old GRNDM from Geant3
+ gMC->Rndm(random,1); // good, old GRNDM from Geant3
Double_t rnd = (Double_t)random[0];
- pMC->SetMaxStep(-TMath::Log(rnd)/pp);
+ gMC->SetMaxStep(-TMath::Log(rnd)/pp);
}
// Origin Y.Foka
//
- AliMC* pMC = AliMC::GetMC();
-
Int_t ISXFLD = gAlice->Field()->Integ();
Float_t SXMGMX = gAlice->Field()->Max();
char namate[21];
// Xe/CO2-mixture
// Get properties of Xe
- pMC->Gfmate((*fIdmate)[4], namate, agm[0], zgm[0], d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[4], namate, agm[0], zgm[0], d, radl, absl, buf, nbuf);
// Get properties of CO2
- pMC->Gfmate((*fIdmate)[8], namate, agm[1], zgm[1], d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[8], namate, agm[1], zgm[1], d, radl, absl, buf, nbuf);
// Create gas mixture
wgm[0] = fxc;
wgm[1] = 1. - fxc;
AliMixture(10, "Gas mixture 1$", agm, zgm, dgm, 2, wgm);
// Xe/Isobutane-mixture
// Get properties of Xe
- pMC->Gfmate((*fIdmate)[4], namate, agm[0], zgm[0], d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[4], namate, agm[0], zgm[0], d, radl, absl, buf, nbuf);
// Get properties of Isobutane
- pMC->Gfmate((*fIdmate)[9], namate, agm[1], zgm[1], d, radl, absl, buf, nbuf);
+ gMC->Gfmate((*fIdmate)[9], namate, agm[1], zgm[1], d, radl, absl, buf, nbuf);
// Create gas mixture
wgm[0] = fxi;
wgm[1] = 1. - fxi;
Int_t *idtmed =fIdtmed->GetArray()-1299;
- AliMC* pMC = AliMC::GetMC();
-
//////////////////////////////////////////////////////////////////////////
// Definition of Volumes
//////////////////////////////////////////////////////////////////////////
par_mo[7] = zmax1;
par_mo[8] = rmin;
par_mo[9] = rmax;
- pMC->Gsvolu("TRD ", "PGON", idtmed[1301-1], par_mo, nparmo);
- pMC->Gsdvn("UTRS", "TRD ", nsect, 2);
+ gMC->Gsvolu("TRD ", "PGON", idtmed[1301-1], par_mo, nparmo);
+ gMC->Gsdvn("UTRS", "TRD ", nsect, 2);
// The minimal width of a sector in rphi-direction
Float_t widmi = rmin * TMath::Tan(kPI/nsect);
par_fr[1] = widma - alframe / 2.;
par_fr[2] = zmax1;
par_fr[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
+ gMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
//
// The outer chambers
par_oc[8] = widma - frame;
par_oc[9] = widma - frame;
par_oc[10] = 0.;
- pMC->Gsvolu("UTCO", "TRAP", idtmed[1307-1], par_oc, nparoc);
+ gMC->Gsvolu("UTCO", "TRAP", idtmed[1307-1], par_oc, nparoc);
// The inner part (Air)
par_oc[3] -= ccframe;
par_oc[7] -= ccframe;
par_oc[8] -= ccframe;
par_oc[9] -= ccframe;
- pMC->Gsvolu("UTIO", "TRAP", idtmed[1302-1], par_oc, nparoc);
+ gMC->Gsvolu("UTIO", "TRAP", idtmed[1302-1], par_oc, nparoc);
// Definition of the six modules within each chamber
- pMC->Gsdvn("UTMO", "UTIO", nmodul, 3);
+ gMC->Gsdvn("UTMO", "UTIO", nmodul, 3);
// Definition of the layers of each chamber
par_oc[1] = theoc;
par_oc[10] = 0.;
// G10 layer (radiator layer)
par_oc[0] = sethick / 2;
- pMC->Gsvolu("UT0O", "TRAP", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT0O", "TRAP", idtmed[1313-1], par_oc, nparoc);
// CO2 layer (radiator)
par_oc[0] = rathick / 2;
- pMC->Gsvolu("UT1O", "TRAP", idtmed[1312-1], par_oc, nparoc);
+ gMC->Gsvolu("UT1O", "TRAP", idtmed[1312-1], par_oc, nparoc);
// PE layer (radiator)
par_oc[0] = pethick / 2;
- pMC->Gsvolu("UT2O", "TRAP", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT2O", "TRAP", idtmed[1303-1], par_oc, nparoc);
// Mylar layer (entrance window + HV cathode)
par_oc[0] = mythick / 2;
- pMC->Gsvolu("UT3O", "TRAP", idtmed[1308-1], par_oc, nparoc);
+ gMC->Gsvolu("UT3O", "TRAP", idtmed[1308-1], par_oc, nparoc);
// Xe/Isobutane layer (gasvolume)
par_oc[0] = xethick / 2;
- pMC->Gsvolu("UT4O", "TRAP", idtmed[1309-1], par_oc, nparoc);
+ gMC->Gsvolu("UT4O", "TRAP", idtmed[1309-1], par_oc, nparoc);
// Cu layer (pad plane)
par_oc[0] = cuthick / 2;
- pMC->Gsvolu("UT5O", "TRAP", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT5O", "TRAP", idtmed[1305-1], par_oc, nparoc);
// G10 layer (support structure)
par_oc[0] = suthick / 2;
- pMC->Gsvolu("UT6O", "TRAP", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT6O", "TRAP", idtmed[1313-1], par_oc, nparoc);
// Cu layer (FEE + signal lines)
par_oc[0] = fethick / 2;
- pMC->Gsvolu("UT7O", "TRAP", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT7O", "TRAP", idtmed[1305-1], par_oc, nparoc);
// PE layer (cooling devices)
par_oc[0] = cothick / 2;
- pMC->Gsvolu("UT8O", "TRAP", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT8O", "TRAP", idtmed[1303-1], par_oc, nparoc);
// Water layer (cooling)
par_oc[0] = wathick / 2;
- pMC->Gsvolu("UT9O", "TRAP", idtmed[1314-1], par_oc, nparoc);
+ gMC->Gsvolu("UT9O", "TRAP", idtmed[1314-1], par_oc, nparoc);
//
// The neighbouring chambers
par_nc[1] = widma - frame;
par_nc[2] = zlenn / 2;
par_nc[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTCN", "TRD1", idtmed[1307-1], par_nc, nparnc);
+ gMC->Gsvolu("UTCN", "TRD1", idtmed[1307-1], par_nc, nparnc);
// The inner part (Air)
par_nc[0] -= ccframe;
par_nc[1] -= ccframe;
par_nc[2] -= ccframe;
- pMC->Gsvolu("UTIN", "TRD1", idtmed[1302-1], par_nc, nparnc);
+ gMC->Gsvolu("UTIN", "TRD1", idtmed[1302-1], par_nc, nparnc);
// Definition of the six modules within each outer chamber
- pMC->Gsdvn("UTMN", "UTIN", nmodul, 3);
+ gMC->Gsdvn("UTMN", "UTIN", nmodul, 3);
// Definition of the layers of each chamber
par_nc[0] = -1.;
par_nc[2] = -1.;
// G10 layer (radiator layer)
par_nc[3] = sethick / 2;
- pMC->Gsvolu("UT0N", "TRD1", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT0N", "TRD1", idtmed[1313-1], par_nc, nparnc);
// CO2 layer (radiator)
par_nc[3] = rathick / 2;
- pMC->Gsvolu("UT1N", "TRD1", idtmed[1312-1], par_nc, nparnc);
+ gMC->Gsvolu("UT1N", "TRD1", idtmed[1312-1], par_nc, nparnc);
// PE layer (radiator)
par_nc[3] = pethick / 2;
- pMC->Gsvolu("UT2N", "TRD1", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT2N", "TRD1", idtmed[1303-1], par_nc, nparnc);
// Mylar layer (entrance window + HV cathode)
par_nc[3] = mythick / 2;
- pMC->Gsvolu("UT3N", "TRD1", idtmed[1308-1], par_nc, nparnc);
+ gMC->Gsvolu("UT3N", "TRD1", idtmed[1308-1], par_nc, nparnc);
// Xe/Isobutane layer (gasvolume)
par_nc[3] = xethick / 2;
- pMC->Gsvolu("UT4N", "TRD1", idtmed[1309-1], par_nc, nparnc);
+ gMC->Gsvolu("UT4N", "TRD1", idtmed[1309-1], par_nc, nparnc);
// Cu layer (pad plane)
par_nc[3] = cuthick / 2;
- pMC->Gsvolu("UT5N", "TRD1", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT5N", "TRD1", idtmed[1305-1], par_nc, nparnc);
// G10 layer (support structure)
par_nc[3] = suthick / 2;
- pMC->Gsvolu("UT6N", "TRD1", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT6N", "TRD1", idtmed[1313-1], par_nc, nparnc);
// Cu layer (FEE + signal lines)
par_nc[3] = fethick / 2;
- pMC->Gsvolu("UT7N", "TRD1", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT7N", "TRD1", idtmed[1305-1], par_nc, nparnc);
// PE layer (cooling devices)
par_nc[3] = cothick / 2;
- pMC->Gsvolu("UT8N", "TRD1", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT8N", "TRD1", idtmed[1303-1], par_nc, nparnc);
// Water layer (cooling)
par_nc[3] = wathick / 2;
- pMC->Gsvolu("UT9N", "TRD1", idtmed[1314-1], par_nc, nparnc);
+ gMC->Gsvolu("UT9N", "TRD1", idtmed[1314-1], par_nc, nparnc);
//
// The inner chamber
par_ic[1] = widma - frame;
par_ic[2] = zleni / 2;
par_ic[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTCI", "TRD1", idtmed[1307-1], par_ic, nparic);
+ gMC->Gsvolu("UTCI", "TRD1", idtmed[1307-1], par_ic, nparic);
// The inner part (Air)
par_ic[0] -= ccframe;
par_ic[1] -= ccframe;
par_ic[2] -= ccframe;
- pMC->Gsvolu("UTII", "TRD1", idtmed[1302-1], par_ic, nparic);
+ gMC->Gsvolu("UTII", "TRD1", idtmed[1302-1], par_ic, nparic);
// Definition of the six modules within each outer chamber
- pMC->Gsdvn("UTMI", "UTII", nmodul, 3);
+ gMC->Gsdvn("UTMI", "UTII", nmodul, 3);
// Definition of the layers of each inner chamber
par_ic[0] = -1.;
par_ic[2] = -1.;
// G10 layer (radiator layer)
par_ic[3] = sethick / 2;
- pMC->Gsvolu("UT0I", "TRD1", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT0I", "TRD1", idtmed[1313-1], par_ic, nparic);
// CO2 layer (radiator)
par_ic[3] = rathick / 2;
- pMC->Gsvolu("UT1I", "TRD1", idtmed[1312-1], par_ic, nparic);
+ gMC->Gsvolu("UT1I", "TRD1", idtmed[1312-1], par_ic, nparic);
// PE layer (radiator)
par_ic[3] = pethick / 2;
- pMC->Gsvolu("UT2I", "TRD1", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT2I", "TRD1", idtmed[1303-1], par_ic, nparic);
// Mylar layer (entrance window + HV cathode)
par_ic[3] = mythick / 2;
- pMC->Gsvolu("UT3I", "TRD1", idtmed[1308-1], par_ic, nparic);
+ gMC->Gsvolu("UT3I", "TRD1", idtmed[1308-1], par_ic, nparic);
// Xe/Isobutane layer (gasvolume)
par_ic[3] = xethick / 2;
- pMC->Gsvolu("UT4I", "TRD1", idtmed[1309-1], par_ic, nparic);
+ gMC->Gsvolu("UT4I", "TRD1", idtmed[1309-1], par_ic, nparic);
// Cu layer (pad plane)
par_ic[3] = cuthick / 2;
- pMC->Gsvolu("UT5I", "TRD1", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT5I", "TRD1", idtmed[1305-1], par_ic, nparic);
// G10 layer (support structure)
par_ic[3] = suthick / 2;
- pMC->Gsvolu("UT6I", "TRD1", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT6I", "TRD1", idtmed[1313-1], par_ic, nparic);
// Cu layer (FEE + signal lines)
par_ic[3] = fethick / 2;
- pMC->Gsvolu("UT7I", "TRD1", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT7I", "TRD1", idtmed[1305-1], par_ic, nparic);
// PE layer (cooling devices)
par_ic[3] = cothick / 2;
- pMC->Gsvolu("UT8I", "TRD1", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT8I", "TRD1", idtmed[1303-1], par_ic, nparic);
// Water layer (cooling)
par_ic[3] = wathick / 2;
- pMC->Gsvolu("UT9I", "TRD1", idtmed[1314-1], par_ic, nparic);
+ gMC->Gsvolu("UT9I", "TRD1", idtmed[1314-1], par_ic, nparic);
//////////////////////////////////////////////////////////////////////////
// Positioning of Volumes
// Position of the layers in a TRD module
f = TMath::Tan(theoc * kDegrad);
- pMC->Gspos("UT9O", 1, "UTMO", 0., f*wazpos, wazpos, 0, "ONLY");
- pMC->Gspos("UT8O", 1, "UTMO", 0., f*cozpos, cozpos, 0, "ONLY");
- pMC->Gspos("UT7O", 1, "UTMO", 0., f*fezpos, fezpos, 0, "ONLY");
- pMC->Gspos("UT6O", 1, "UTMO", 0., f*suzpos, suzpos, 0, "ONLY");
- pMC->Gspos("UT5O", 1, "UTMO", 0., f*cuzpos, cuzpos, 0, "ONLY");
- pMC->Gspos("UT4O", 1, "UTMO", 0., f*xezpos, xezpos, 0, "ONLY");
- pMC->Gspos("UT3O", 1, "UTMO", 0., f*myzpos, myzpos, 0, "ONLY");
- pMC->Gspos("UT1O", 1, "UTMO", 0., f*razpos, razpos, 0, "ONLY");
- pMC->Gspos("UT0O", 1, "UTMO", 0., f*sezpos, sezpos, 0, "ONLY");
- pMC->Gspos("UT2O", 1, "UT1O", 0., f*pezpos, pezpos, 0, "ONLY");
-
- pMC->Gspos("UT9N", 1, "UTMN", 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8N", 1, "UTMN", 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7N", 1, "UTMN", 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6N", 1, "UTMN", 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5N", 1, "UTMN", 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos("UT4N", 1, "UTMN", 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3N", 1, "UTMN", 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1N", 1, "UTMN", 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0N", 1, "UTMN", 0., 0., sezpos, 0, "ONLY");
- pMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
-
- pMC->Gspos("UT9I", 1, "UTMI", 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8I", 1, "UTMI", 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7I", 1, "UTMI", 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6I", 1, "UTMI", 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5I", 1, "UTMI", 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos("UT4I", 1, "UTMI", 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3I", 1, "UTMI", 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1I", 1, "UTMI", 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0I", 1, "UTMI", 0., 0., sezpos, 0, "ONLY");
- pMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
+ gMC->Gspos("UT9O", 1, "UTMO", 0., f*wazpos, wazpos, 0, "ONLY");
+ gMC->Gspos("UT8O", 1, "UTMO", 0., f*cozpos, cozpos, 0, "ONLY");
+ gMC->Gspos("UT7O", 1, "UTMO", 0., f*fezpos, fezpos, 0, "ONLY");
+ gMC->Gspos("UT6O", 1, "UTMO", 0., f*suzpos, suzpos, 0, "ONLY");
+ gMC->Gspos("UT5O", 1, "UTMO", 0., f*cuzpos, cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4O", 1, "UTMO", 0., f*xezpos, xezpos, 0, "ONLY");
+ gMC->Gspos("UT3O", 1, "UTMO", 0., f*myzpos, myzpos, 0, "ONLY");
+ gMC->Gspos("UT1O", 1, "UTMO", 0., f*razpos, razpos, 0, "ONLY");
+ gMC->Gspos("UT0O", 1, "UTMO", 0., f*sezpos, sezpos, 0, "ONLY");
+ gMC->Gspos("UT2O", 1, "UT1O", 0., f*pezpos, pezpos, 0, "ONLY");
+
+ gMC->Gspos("UT9N", 1, "UTMN", 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8N", 1, "UTMN", 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7N", 1, "UTMN", 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6N", 1, "UTMN", 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5N", 1, "UTMN", 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4N", 1, "UTMN", 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3N", 1, "UTMN", 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1N", 1, "UTMN", 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0N", 1, "UTMN", 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
+
+ gMC->Gspos("UT9I", 1, "UTMI", 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8I", 1, "UTMI", 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7I", 1, "UTMI", 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6I", 1, "UTMI", 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5I", 1, "UTMI", 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4I", 1, "UTMI", 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3I", 1, "UTMI", 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1I", 1, "UTMI", 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0I", 1, "UTMI", 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
// Position of the inner part of the chambers
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTII", 1, "UTCI", xpos, ypos, zpos, 0, "ONLY");
- pMC->Gspos("UTIN", 1, "UTCN", xpos, ypos, zpos, 0, "ONLY");
- pMC->Gspos("UTIO", 1, "UTCO", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTII", 1, "UTCI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTIN", 1, "UTCN", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTIO", 1, "UTCO", xpos, ypos, zpos, 0, "ONLY");
// Position of the chambers in the support frame
xpos = 0.;
ypos = ((zmax1 + zmax2) / 2 + zlenn + zleni / 2) / 2;
zpos = 0.;
- pMC->Gspos("UTCO", 1, "UTRI", xpos, ypos, zpos, idmat[1], "ONLY");
- pMC->Gspos("UTCO", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCO", 1, "UTRI", xpos, ypos, zpos, idmat[1], "ONLY");
+ gMC->Gspos("UTCO", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
xpos = 0.;
ypos = (zlenn + zleni) / 2;
zpos = 0.;
- pMC->Gspos("UTCN", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
- pMC->Gspos("UTCN", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCN", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCN", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTCI", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCI", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
// Position of the inner part of the detector frame
xpos = (rmax + rmin) / 2;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[0], "ONLY");
+ gMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[0], "ONLY");
// Position of the TRD mother volume in the ALICE experiment
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
}
// Draw a shaded view of the Transition Radiation Detector 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("TRD" ,"SEEN",0);
- pMC->Gsatt("UTRS","SEEN",0);
- pMC->Gsatt("UTRI","SEEN",0);
- pMC->Gsatt("UTCO","SEEN",0);
- pMC->Gsatt("UTIO","SEEN",0);
- pMC->Gsatt("UTMO","SEEN",0);
- pMC->Gsatt("UTCN","SEEN",0);
- pMC->Gsatt("UTIN","SEEN",0);
- pMC->Gsatt("UTMN","SEEN",0);
- pMC->Gsatt("UTCI","SEEN",0);
- pMC->Gsatt("UTII","SEEN",0);
- pMC->Gsatt("UTMI","SEEN",0);
- pMC->Gsatt("UT1O","SEEN",1);
- pMC->Gsatt("UT4O","SEEN",1);
- pMC->Gsatt("UT1N","SEEN",1);
- pMC->Gsatt("UT4N","SEEN",1);
- pMC->Gsatt("UT1I","SEEN",1);
- pMC->Gsatt("UT4I","SEEN",1);
+ gMC->Gsatt("TRD" ,"SEEN",0);
+ gMC->Gsatt("UTRS","SEEN",0);
+ gMC->Gsatt("UTRI","SEEN",0);
+ gMC->Gsatt("UTCO","SEEN",0);
+ gMC->Gsatt("UTIO","SEEN",0);
+ gMC->Gsatt("UTMO","SEEN",0);
+ gMC->Gsatt("UTCN","SEEN",0);
+ gMC->Gsatt("UTIN","SEEN",0);
+ gMC->Gsatt("UTMN","SEEN",0);
+ gMC->Gsatt("UTCI","SEEN",0);
+ gMC->Gsatt("UTII","SEEN",0);
+ gMC->Gsatt("UTMI","SEEN",0);
+ gMC->Gsatt("UT1O","SEEN",1);
+ gMC->Gsatt("UT4O","SEEN",1);
+ gMC->Gsatt("UT1N","SEEN",1);
+ gMC->Gsatt("UT4N","SEEN",1);
+ gMC->Gsatt("UT1I","SEEN",1);
+ gMC->Gsatt("UT4I","SEEN",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
- pMC->Gdhead(1111, "Transition Radiation Detector Version 0");
- pMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
+ gMC->Gdhead(1111, "Transition Radiation Detector Version 0");
+ gMC->Gdman(18, 4, "MAN");
}
// Initialise Transition Radiation Detector after geometry is built
//
AliTRD::Init();
- AliMC* pMC = AliMC::GetMC();
//
// Retrieve the numeric identifier of the sensitive volumes (gas volume)
- fIdSens1 = pMC->VolId("UT4I");
- fIdSens2 = pMC->VolId("UT4N");
- fIdSens3 = pMC->VolId("UT4O");
+ fIdSens1 = gMC->VolId("UT4I");
+ fIdSens2 = gMC->VolId("UT4N");
+ fIdSens3 = gMC->VolId("UT4O");
}
//_____________________________________________________________________________
TClonesArray &lhits = *fHits;
- AliMC* pMC = AliMC::GetMC();
-
// Use only charged tracks and count them only once per volume
- if (pMC->TrackCharge() && pMC->TrackExiting()) {
+ if (gMC->TrackCharge() && gMC->TrackExiting()) {
// Check on sensitive volume
- idSens = pMC->CurrentVol(0,icSens);
+ idSens = gMC->CurrentVol(0,icSens);
if ((idSens == fIdSens1) ||
(idSens == fIdSens2) ||
(idSens == fIdSens3)) {
// The sector number
- pMC->CurrentVolOff(5,0,icopy);
+ gMC->CurrentVolOff(5,0,icopy);
vol[0] = icopy;
// The chamber number
// 3: inner
// 4: neighbouring right
// 5: outer right
- pMC->CurrentVolOff(3,0,icopy);
+ gMC->CurrentVolOff(3,0,icopy);
if (idSens == fIdSens3)
vol[1] = 4 * icopy - 3;
else if (idSens == fIdSens2)
vol[1] = 3;
// The plane number
- pMC->CurrentVolOff(1,0,icopy);
+ gMC->CurrentVolOff(1,0,icopy);
vol[2] = icopy;
if (fSensSelect) {
if ((fSensChamber) && (vol[1] != fSensChamber)) addthishit = 0;
if ((fSensSector) && (vol[0] != fSensSector )) addthishit = 0;
if (addthishit) {
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3] = 0;
new(lhits[fNhits++]) AliTRDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
else {
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3] = 0;
new(lhits[fNhits++]) AliTRDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
Int_t *idtmed = fIdtmed->GetArray()-1299;
- AliMC* pMC = AliMC::GetMC();
-
//////////////////////////////////////////////////////////////////////////
// Definition of Volumes
//////////////////////////////////////////////////////////////////////////
par_mo[7] = zmax1;
par_mo[8] = rmin;
par_mo[9] = rmax;
- pMC->Gsvolu("TRD ", "PGON", idtmed[1302-1], par_mo, nparmo);
+ gMC->Gsvolu("TRD ", "PGON", idtmed[1302-1], par_mo, nparmo);
Float_t phisec = 360. / nsect;
// Definition of the two detector arms (Al)
par_ar[7] = zmax1;
par_ar[8] = rmin;
par_ar[9] = rmax;
- pMC->Gsvolu("UTRD", "PGON", idtmed[1301-1], par_ar, nparar);
- pMC->Gsdvn("UTRS", "UTRD", narmsec, 2);
+ gMC->Gsvolu("UTRD", "PGON", idtmed[1301-1], par_ar, nparar);
+ gMC->Gsdvn("UTRS", "UTRD", narmsec, 2);
// The minimal width of a sector in rphi-direction
Float_t widmi = rmin * TMath::Tan(kPI/nsect);
par_fr[1] = widma - alframe / 2;
par_fr[2] = zmax1;
par_fr[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
+ gMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
//
// The outer chambers
par_oc[8] = widma - frame;
par_oc[9] = widma - frame;
par_oc[10] = 0.;
- pMC->Gsvolu("UTCO", "TRAP", idtmed[1307-1], par_oc, nparoc);
+ gMC->Gsvolu("UTCO", "TRAP", idtmed[1307-1], par_oc, nparoc);
// The inner part (Air)
par_oc[3] -= ccframe;
par_oc[7] -= ccframe;
par_oc[8] -= ccframe;
par_oc[9] -= ccframe;
- pMC->Gsvolu("UTIO", "TRAP", idtmed[1302-1], par_oc, nparoc);
+ gMC->Gsvolu("UTIO", "TRAP", idtmed[1302-1], par_oc, nparoc);
// Definition of the six modules within each chamber
- pMC->Gsdvn("UTMO", "UTIO", nmodul, 3);
+ gMC->Gsdvn("UTMO", "UTIO", nmodul, 3);
// Definition of the layers of each chamber
par_oc[1] = theoc;
par_oc[10] = 0.;
// G10 layer (radiator layer)
par_oc[0] = sethick / 2;
- pMC->Gsvolu("UT0O", "TRAP", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT0O", "TRAP", idtmed[1313-1], par_oc, nparoc);
// CO2 layer (radiator)
par_oc[0] = rathick / 2;
- pMC->Gsvolu("UT1O", "TRAP", idtmed[1312-1], par_oc, nparoc);
+ gMC->Gsvolu("UT1O", "TRAP", idtmed[1312-1], par_oc, nparoc);
// PE layer (radiator)
par_oc[0] = pethick / 2;
- pMC->Gsvolu("UT2O", "TRAP", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT2O", "TRAP", idtmed[1303-1], par_oc, nparoc);
// Mylar layer (entrance window + HV cathode)
par_oc[0] = mythick / 2;
- pMC->Gsvolu("UT3O", "TRAP", idtmed[1308-1], par_oc, nparoc);
+ gMC->Gsvolu("UT3O", "TRAP", idtmed[1308-1], par_oc, nparoc);
// Xe/Isobutane layer (gasvolume)
par_oc[0] = xethick / 2;
- pMC->Gsvolu("UT4O", "TRAP", idtmed[1309-1], par_oc, nparoc);
+ gMC->Gsvolu("UT4O", "TRAP", idtmed[1309-1], par_oc, nparoc);
// Cu layer (pad plane)
par_oc[0] = cuthick / 2;
- pMC->Gsvolu("UT5O", "TRAP", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT5O", "TRAP", idtmed[1305-1], par_oc, nparoc);
// G10 layer (support structure)
par_oc[0] = suthick / 2;
- pMC->Gsvolu("UT6O", "TRAP", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT6O", "TRAP", idtmed[1313-1], par_oc, nparoc);
// Cu layer (FEE + signal lines)
par_oc[0] = fethick / 2;
- pMC->Gsvolu("UT7O", "TRAP", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT7O", "TRAP", idtmed[1305-1], par_oc, nparoc);
// PE layer (cooling devices)
par_oc[0] = cothick / 2;
- pMC->Gsvolu("UT8O", "TRAP", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT8O", "TRAP", idtmed[1303-1], par_oc, nparoc);
// Water layer (cooling)
par_oc[0] = wathick / 2;
- pMC->Gsvolu("UT9O", "TRAP", idtmed[1314-1], par_oc, nparoc);
+ gMC->Gsvolu("UT9O", "TRAP", idtmed[1314-1], par_oc, nparoc);
//
// The neighbouring chambers
par_nc[1] = widma - frame;
par_nc[2] = zlenn / 2;
par_nc[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTCN", "TRD1", idtmed[1307-1], par_nc, nparnc);
+ gMC->Gsvolu("UTCN", "TRD1", idtmed[1307-1], par_nc, nparnc);
// The inner part (Air)
par_nc[0] -= ccframe;
par_nc[1] -= ccframe;
par_nc[2] -= ccframe;
- pMC->Gsvolu("UTIN", "TRD1", idtmed[1302-1], par_nc, nparnc);
+ gMC->Gsvolu("UTIN", "TRD1", idtmed[1302-1], par_nc, nparnc);
// Definition of the six modules within each outer chamber
- pMC->Gsdvn("UTMN", "UTIN", nmodul, 3);
+ gMC->Gsdvn("UTMN", "UTIN", nmodul, 3);
// Definition of the layers of each chamber
par_nc[0] = -1.;
par_nc[2] = -1.;
// G10 layer (radiator layer)
par_nc[3] = sethick / 2;
- pMC->Gsvolu("UT0N", "TRD1", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT0N", "TRD1", idtmed[1313-1], par_nc, nparnc);
// CO2 layer (radiator)
par_nc[3] = rathick / 2;
- pMC->Gsvolu("UT1N", "TRD1", idtmed[1312-1], par_nc, nparnc);
+ gMC->Gsvolu("UT1N", "TRD1", idtmed[1312-1], par_nc, nparnc);
// PE layer (radiator)
par_nc[3] = pethick / 2;
- pMC->Gsvolu("UT2N", "TRD1", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT2N", "TRD1", idtmed[1303-1], par_nc, nparnc);
// Mylar layer (entrance window + HV cathode)
par_nc[3] = mythick / 2;
- pMC->Gsvolu("UT3N", "TRD1", idtmed[1308-1], par_nc, nparnc);
+ gMC->Gsvolu("UT3N", "TRD1", idtmed[1308-1], par_nc, nparnc);
// Xe/Isobutane layer (gasvolume)
par_nc[3] = xethick / 2;
- pMC->Gsvolu("UT4N", "TRD1", idtmed[1309-1], par_nc, nparnc);
+ gMC->Gsvolu("UT4N", "TRD1", idtmed[1309-1], par_nc, nparnc);
// Cu layer (pad plane)
par_nc[3] = cuthick / 2;
- pMC->Gsvolu("UT5N", "TRD1", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT5N", "TRD1", idtmed[1305-1], par_nc, nparnc);
// G10 layer (support structure)
par_nc[3] = suthick / 2;
- pMC->Gsvolu("UT6N", "TRD1", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT6N", "TRD1", idtmed[1313-1], par_nc, nparnc);
// Cu layer (FEE + signal lines)
par_nc[3] = fethick / 2;
- pMC->Gsvolu("UT7N", "TRD1", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT7N", "TRD1", idtmed[1305-1], par_nc, nparnc);
// PE layer (cooling devices)
par_nc[3] = cothick / 2;
- pMC->Gsvolu("UT8N", "TRD1", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT8N", "TRD1", idtmed[1303-1], par_nc, nparnc);
// Water layer (cooling)
par_nc[3] = wathick / 2;
- pMC->Gsvolu("UT9N", "TRD1", idtmed[1314-1], par_nc, nparnc);
+ gMC->Gsvolu("UT9N", "TRD1", idtmed[1314-1], par_nc, nparnc);
//
// The inner chamber
par_ic[1] = widma - frame;
par_ic[2] = zleni / 2;
par_ic[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTCI", "TRD1", idtmed[1307-1], par_ic, nparic);
+ gMC->Gsvolu("UTCI", "TRD1", idtmed[1307-1], par_ic, nparic);
// The inner part (Air)
par_ic[0] -= ccframe;
par_ic[1] -= ccframe;
par_ic[2] -= ccframe;
- pMC->Gsvolu("UTII", "TRD1", idtmed[1302-1], par_ic, nparic);
+ gMC->Gsvolu("UTII", "TRD1", idtmed[1302-1], par_ic, nparic);
// Definition of the six modules within each outer chamber
- pMC->Gsdvn("UTMI", "UTII", nmodul, 3);
+ gMC->Gsdvn("UTMI", "UTII", nmodul, 3);
// Definition of the layers of each inner chamber
par_ic[0] = -1.;
par_ic[2] = -1.;
// G10 layer (radiator layer)
par_ic[3] = sethick / 2;
- pMC->Gsvolu("UT0I", "TRD1", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT0I", "TRD1", idtmed[1313-1], par_ic, nparic);
// CO2 layer (radiator)
par_ic[3] = rathick / 2;
- pMC->Gsvolu("UT1I", "TRD1", idtmed[1312-1], par_ic, nparic);
+ gMC->Gsvolu("UT1I", "TRD1", idtmed[1312-1], par_ic, nparic);
// PE layer (radiator)
par_ic[3] = pethick / 2;
- pMC->Gsvolu("UT2I", "TRD1", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT2I", "TRD1", idtmed[1303-1], par_ic, nparic);
// Mylar layer (entrance window + HV cathode)
par_ic[3] = mythick / 2;
- pMC->Gsvolu("UT3I", "TRD1", idtmed[1308-1], par_ic, nparic);
+ gMC->Gsvolu("UT3I", "TRD1", idtmed[1308-1], par_ic, nparic);
// Xe/Isobutane layer (gasvolume)
par_ic[3] = xethick / 2;
- pMC->Gsvolu("UT4I", "TRD1", idtmed[1309-1], par_ic, nparic);
+ gMC->Gsvolu("UT4I", "TRD1", idtmed[1309-1], par_ic, nparic);
// Cu layer (pad plane)
par_ic[3] = cuthick / 2;
- pMC->Gsvolu("UT5I", "TRD1", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT5I", "TRD1", idtmed[1305-1], par_ic, nparic);
// G10 layer (support structure)
par_ic[3] = suthick / 2;
- pMC->Gsvolu("UT6I", "TRD1", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT6I", "TRD1", idtmed[1313-1], par_ic, nparic);
// Cu layer (FEE + signal lines)
par_ic[3] = fethick / 2;
- pMC->Gsvolu("UT7I", "TRD1", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT7I", "TRD1", idtmed[1305-1], par_ic, nparic);
// PE layer (cooling devices)
par_ic[3] = cothick / 2;
- pMC->Gsvolu("UT8I", "TRD1", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT8I", "TRD1", idtmed[1303-1], par_ic, nparic);
// Water layer (cooling)
par_ic[3] = wathick / 2;
- pMC->Gsvolu("UT9I", "TRD1", idtmed[1314-1], par_ic, nparic);
+ gMC->Gsvolu("UT9I", "TRD1", idtmed[1314-1], par_ic, nparic);
//////////////////////////////////////////////////////////////////////////
// Positioning of Volumes
// Position of the layers in a TRD module
f = TMath::Tan(theoc * kDegrad);
- pMC->Gspos("UT9O", 1, "UTMO", 0., f*wazpos, wazpos, 0, "ONLY");
- pMC->Gspos("UT8O", 1, "UTMO", 0., f*cozpos, cozpos, 0, "ONLY");
- pMC->Gspos("UT7O", 1, "UTMO", 0., f*fezpos, fezpos, 0, "ONLY");
- pMC->Gspos("UT6O", 1, "UTMO", 0., f*suzpos, suzpos, 0, "ONLY");
- pMC->Gspos("UT5O", 1, "UTMO", 0., f*cuzpos, cuzpos, 0, "ONLY");
- pMC->Gspos("UT4O", 1, "UTMO", 0., f*xezpos, xezpos, 0, "ONLY");
- pMC->Gspos("UT3O", 1, "UTMO", 0., f*myzpos, myzpos, 0, "ONLY");
- pMC->Gspos("UT1O", 1, "UTMO", 0., f*razpos, razpos, 0, "ONLY");
- pMC->Gspos("UT0O", 1, "UTMO", 0., f*sezpos, sezpos, 0, "ONLY");
- pMC->Gspos("UT2O", 1, "UT1O", 0., f*pezpos, pezpos, 0, "ONLY");
-
- pMC->Gspos("UT9N", 1, "UTMN", 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8N", 1, "UTMN", 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7N", 1, "UTMN", 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6N", 1, "UTMN", 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5N", 1, "UTMN", 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos("UT4N", 1, "UTMN", 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3N", 1, "UTMN", 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1N", 1, "UTMN", 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0N", 1, "UTMN", 0., 0., sezpos, 0, "ONLY");
- pMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
-
- pMC->Gspos("UT9I", 1, "UTMI", 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8I", 1, "UTMI", 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7I", 1, "UTMI", 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6I", 1, "UTMI", 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5I", 1, "UTMI", 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos("UT4I", 1, "UTMI", 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3I", 1, "UTMI", 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1I", 1, "UTMI", 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0I", 1, "UTMI", 0., 0., sezpos, 0, "ONLY");
- pMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
+ gMC->Gspos("UT9O", 1, "UTMO", 0., f*wazpos, wazpos, 0, "ONLY");
+ gMC->Gspos("UT8O", 1, "UTMO", 0., f*cozpos, cozpos, 0, "ONLY");
+ gMC->Gspos("UT7O", 1, "UTMO", 0., f*fezpos, fezpos, 0, "ONLY");
+ gMC->Gspos("UT6O", 1, "UTMO", 0., f*suzpos, suzpos, 0, "ONLY");
+ gMC->Gspos("UT5O", 1, "UTMO", 0., f*cuzpos, cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4O", 1, "UTMO", 0., f*xezpos, xezpos, 0, "ONLY");
+ gMC->Gspos("UT3O", 1, "UTMO", 0., f*myzpos, myzpos, 0, "ONLY");
+ gMC->Gspos("UT1O", 1, "UTMO", 0., f*razpos, razpos, 0, "ONLY");
+ gMC->Gspos("UT0O", 1, "UTMO", 0., f*sezpos, sezpos, 0, "ONLY");
+ gMC->Gspos("UT2O", 1, "UT1O", 0., f*pezpos, pezpos, 0, "ONLY");
+
+ gMC->Gspos("UT9N", 1, "UTMN", 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8N", 1, "UTMN", 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7N", 1, "UTMN", 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6N", 1, "UTMN", 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5N", 1, "UTMN", 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4N", 1, "UTMN", 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3N", 1, "UTMN", 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1N", 1, "UTMN", 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0N", 1, "UTMN", 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
+
+ gMC->Gspos("UT9I", 1, "UTMI", 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8I", 1, "UTMI", 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7I", 1, "UTMI", 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6I", 1, "UTMI", 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5I", 1, "UTMI", 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos("UT4I", 1, "UTMI", 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3I", 1, "UTMI", 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1I", 1, "UTMI", 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0I", 1, "UTMI", 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
// Position of the inner part of the chambers
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTII", 1, "UTCI", xpos, ypos, zpos, 0, "ONLY");
- pMC->Gspos("UTIN", 1, "UTCN", xpos, ypos, zpos, 0, "ONLY");
- pMC->Gspos("UTIO", 1, "UTCO", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTII", 1, "UTCI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTIN", 1, "UTCN", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTIO", 1, "UTCO", xpos, ypos, zpos, 0, "ONLY");
// Position of the chambers in the support frame
xpos = 0.;
ypos = ((zmax1 + zmax2) / 2 + zlenn + zleni / 2) / 2;
zpos = 0.;
- pMC->Gspos("UTCO", 1, "UTRI", xpos, ypos, zpos, idmat[2], "ONLY");
- pMC->Gspos("UTCO", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCO", 1, "UTRI", xpos, ypos, zpos, idmat[2], "ONLY");
+ gMC->Gspos("UTCO", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
xpos = 0.;
ypos = (zlenn + zleni) / 2;
zpos = 0.;
- pMC->Gspos("UTCN", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
- pMC->Gspos("UTCN", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCN", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCN", 2, "UTRI", xpos,-ypos, zpos, 0 , "ONLY");
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTCI", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
+ gMC->Gspos("UTCI", 1, "UTRI", xpos, ypos, zpos, 0 , "ONLY");
// Position of the inner part of the detector frame
xpos = (rmax + rmin) / 2;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[1], "ONLY");
+ gMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[1], "ONLY");
// Position of the two arms of the detector
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTRD", 1, "TRD ", xpos, ypos, zpos, 0, "ONLY");
- pMC->Gspos("UTRD", 2, "TRD ", xpos, ypos, zpos, idmat[0], "ONLY");
+ gMC->Gspos("UTRD", 1, "TRD ", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("UTRD", 2, "TRD ", xpos, ypos, zpos, idmat[0], "ONLY");
// Position of TRD mother volume in ALICE experiment
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
}
// Draw a shaded view of the Transition Radiation Detector 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("TRD" ,"SEEN",0);
- pMC->Gsatt("UTRD","SEEN",0);
- pMC->Gsatt("UTRS","SEEN",0);
- pMC->Gsatt("UTRI","SEEN",0);
- pMC->Gsatt("UTCO","SEEN",0);
- pMC->Gsatt("UTIO","SEEN",0);
- pMC->Gsatt("UTMO","SEEN",0);
- pMC->Gsatt("UTCN","SEEN",0);
- pMC->Gsatt("UTIN","SEEN",0);
- pMC->Gsatt("UTMN","SEEN",0);
- pMC->Gsatt("UTCI","SEEN",0);
- pMC->Gsatt("UTII","SEEN",0);
- pMC->Gsatt("UTMI","SEEN",0);
- pMC->Gsatt("UT1O","SEEN",1);
- pMC->Gsatt("UT4O","SEEN",1);
- pMC->Gsatt("UT1N","SEEN",1);
- pMC->Gsatt("UT4N","SEEN",1);
- pMC->Gsatt("UT1I","SEEN",1);
- pMC->Gsatt("UT4I","SEEN",1);
+ gMC->Gsatt("TRD" ,"SEEN",0);
+ gMC->Gsatt("UTRD","SEEN",0);
+ gMC->Gsatt("UTRS","SEEN",0);
+ gMC->Gsatt("UTRI","SEEN",0);
+ gMC->Gsatt("UTCO","SEEN",0);
+ gMC->Gsatt("UTIO","SEEN",0);
+ gMC->Gsatt("UTMO","SEEN",0);
+ gMC->Gsatt("UTCN","SEEN",0);
+ gMC->Gsatt("UTIN","SEEN",0);
+ gMC->Gsatt("UTMN","SEEN",0);
+ gMC->Gsatt("UTCI","SEEN",0);
+ gMC->Gsatt("UTII","SEEN",0);
+ gMC->Gsatt("UTMI","SEEN",0);
+ gMC->Gsatt("UT1O","SEEN",1);
+ gMC->Gsatt("UT4O","SEEN",1);
+ gMC->Gsatt("UT1N","SEEN",1);
+ gMC->Gsatt("UT4N","SEEN",1);
+ gMC->Gsatt("UT1I","SEEN",1);
+ gMC->Gsatt("UT4I","SEEN",1);
//
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
- pMC->Gdhead(1111, "Transition Radiation Detector Version 1");
- pMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
+ gMC->Gdhead(1111, "Transition Radiation Detector Version 1");
+ gMC->Gdman(18, 4, "MAN");
}
//_____________________________________________________________________________
// Initialise the Transition Radiation Detector after the geometry is built
//
AliTRD::Init();
- AliMC* pMC = AliMC::GetMC();
-
// Retrieve the numeric identifier of the sensitive volumes (gas volume)
- fIdSens1 = pMC->VolId("UT4I");
- fIdSens2 = pMC->VolId("UT4N");
- fIdSens3 = pMC->VolId("UT4O");
+ fIdSens1 = gMC->VolId("UT4I");
+ fIdSens2 = gMC->VolId("UT4N");
+ fIdSens3 = gMC->VolId("UT4O");
}
//_____________________________________________________________________________
TClonesArray &lhits = *fHits;
- AliMC* pMC = AliMC::GetMC();
-
// Use only charged tracks and count them only once per volume
- if (pMC->TrackCharge() && pMC->TrackExiting()) {
+ if (gMC->TrackCharge() && gMC->TrackExiting()) {
// Check on sensitive volume
- idSens = pMC->CurrentVol(0,icSens);
+ idSens = gMC->CurrentVol(0,icSens);
// Check on sensitive volume
- idSens = pMC->CurrentVol(0,icSens);
+ idSens = gMC->CurrentVol(0,icSens);
if ((idSens == fIdSens1) ||
(idSens == fIdSens2) ||
(idSens == fIdSens3)) {
// The sector number
- pMC->CurrentVolOff(5,0,icopy1);
- pMC->CurrentVolOff(6,0,icopy2);
+ gMC->CurrentVolOff(5,0,icopy1);
+ gMC->CurrentVolOff(6,0,icopy2);
if (icopy2 == 1)
vol[0] = icopy1;
else
// 3: inner
// 4: neighbouring right
// 5: outer right
- pMC->CurrentVolOff(3,0,icopy1);
+ gMC->CurrentVolOff(3,0,icopy1);
if (idSens == fIdSens3)
vol[1] = 4 * icopy1 - 3;
else if (idSens == fIdSens2)
vol[1] = 3;
// The plane number
- pMC->CurrentVolOff(1,0,icopy1);
+ gMC->CurrentVolOff(1,0,icopy1);
vol[2] = icopy1;
if (fSensSelect) {
if ((fSensChamber) && (vol[1] != fSensChamber)) addthishit = 0;
if ((fSensSector) && (vol[0] != fSensSector )) addthishit = 0;
if (addthishit) {
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3] = 0;
new(lhits[fNhits++]) AliTRDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
}
else {
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3] = 0;
new(lhits[fNhits++]) AliTRDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
}
Int_t *idtmed = fIdtmed->GetArray()-1299;
- AliMC* pMC = AliMC::GetMC();
-
//////////////////////////////////////////////////////////////////////////
// Definition of Volumes
//////////////////////////////////////////////////////////////////////////
par_mo[7] = zmax1;
par_mo[8] = rmin;
par_mo[9] = rmax;
- pMC->Gsvolu("TRD ", "PGON", idtmed[1301-1], par_mo, nparmo);
- pMC->Gsdvn("UTRS", "TRD ", nsect, 2);
+ gMC->Gsvolu("TRD ", "PGON", idtmed[1301-1], par_mo, nparmo);
+ gMC->Gsdvn("UTRS", "TRD ", nsect, 2);
// The minimal width of a sector in rphi-direction
Float_t widmi = rmin * TMath::Tan(kPI/nsect);
par_fr[1] = widma - alframe / 2.;
par_fr[2] = zmax1;
par_fr[3] = (rmax - rmin) / 2;
- pMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
+ gMC->Gsvolu("UTRI", "TRD1", idtmed[1302-1], par_fr, nparfr);
// Some parameter for the chambers
Float_t lendifc = (zmax1 - zmax2) / nmodul;
par_ch[1] = zleni / 2.;
par_ch[2] = heightc / 2.;
sprintf(ctagc,"UCI%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
// Inner part of the inner chambers (Air)
par_ch[0] -= ccframe;
par_ch[1] -= ccframe;
sprintf(ctagc,"UII%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
// Carbon frame of the neighbouring chambers (C)
par_ch[0] = widmi + (icham-1) * widdifc - frame;
par_ch[1] = zlenn / 2.;
par_ch[2] = heightc / 2.;
sprintf(ctagc,"UCN%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
// Inner part of the neighbouring chambers (Air)
par_ch[0] -= ccframe;
par_ch[1] -= ccframe;
sprintf(ctagc,"UIN%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
// Carbon frame of the outer chambers (C)
par_ch[0] = widmi + (icham-1) * widdifc - frame;
par_ch[1] = (icham - 6) * lendifc / 2. + zleno / 2.;
par_ch[2] = heightc / 2.;
sprintf(ctagc,"UCO%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1307-1], par_ch, nparch);
// Inner part of the outer chambers (Air)
par_ch[0] -= ccframe;
par_ch[1] -= ccframe;
sprintf(ctagc,"UIO%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1302-1], par_ch, nparch);
}
par_ic[1] = -1.;
// G10 layer (radiator layer)
par_ic[2] = sethick / 2;
- pMC->Gsvolu("UT0I", "BOX ", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT0I", "BOX ", idtmed[1313-1], par_ic, nparic);
// CO2 layer (radiator)
par_ic[2] = rathick / 2;
- pMC->Gsvolu("UT1I", "BOX ", idtmed[1312-1], par_ic, nparic);
+ gMC->Gsvolu("UT1I", "BOX ", idtmed[1312-1], par_ic, nparic);
// PE layer (radiator)
par_ic[2] = pethick / 2;
- pMC->Gsvolu("UT2I", "BOX ", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT2I", "BOX ", idtmed[1303-1], par_ic, nparic);
// Mylar layer (entrance window + HV cathode)
par_ic[2] = mythick / 2;
- pMC->Gsvolu("UT3I", "BOX ", idtmed[1308-1], par_ic, nparic);
+ gMC->Gsvolu("UT3I", "BOX ", idtmed[1308-1], par_ic, nparic);
// Xe/Isobutane layer (gasvolume)
par_ic[2] = xethick / 2.;
for (icham = 1; icham <= 6; ++icham) {
sprintf(ctagc,"UXI%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_ic, nparic);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_ic, nparic);
}
// Cu layer (pad plane)
par_ic[2] = cuthick / 2;
- pMC->Gsvolu("UT5I", "BOX ", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT5I", "BOX ", idtmed[1305-1], par_ic, nparic);
// G10 layer (support structure)
par_ic[2] = suthick / 2;
- pMC->Gsvolu("UT6I", "BOX ", idtmed[1313-1], par_ic, nparic);
+ gMC->Gsvolu("UT6I", "BOX ", idtmed[1313-1], par_ic, nparic);
// Cu layer (FEE + signal lines)
par_ic[2] = fethick / 2;
- pMC->Gsvolu("UT7I", "BOX ", idtmed[1305-1], par_ic, nparic);
+ gMC->Gsvolu("UT7I", "BOX ", idtmed[1305-1], par_ic, nparic);
// PE layer (cooling devices)
par_ic[2] = cothick / 2;
- pMC->Gsvolu("UT8I", "BOX ", idtmed[1303-1], par_ic, nparic);
+ gMC->Gsvolu("UT8I", "BOX ", idtmed[1303-1], par_ic, nparic);
// Water layer (cooling)
par_ic[2] = wathick / 2;
- pMC->Gsvolu("UT9I", "BOX ", idtmed[1314-1], par_ic, nparic);
+ gMC->Gsvolu("UT9I", "BOX ", idtmed[1314-1], par_ic, nparic);
// Definition of the layers in each neighbouring chamber
par_nc[0] = -1.;
par_nc[1] = -1.;
// G10 layer (radiator layer)
par_nc[2] = sethick / 2;
- pMC->Gsvolu("UT0N", "BOX ", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT0N", "BOX ", idtmed[1313-1], par_nc, nparnc);
// CO2 layer (radiator)
par_nc[2] = rathick / 2;
- pMC->Gsvolu("UT1N", "BOX ", idtmed[1312-1], par_nc, nparnc);
+ gMC->Gsvolu("UT1N", "BOX ", idtmed[1312-1], par_nc, nparnc);
// PE layer (radiator)
par_nc[2] = pethick / 2;
- pMC->Gsvolu("UT2N", "BOX ", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT2N", "BOX ", idtmed[1303-1], par_nc, nparnc);
// Mylar layer (entrance window + HV cathode)
par_nc[2] = mythick / 2;
- pMC->Gsvolu("UT3N", "BOX ", idtmed[1308-1], par_nc, nparnc);
+ gMC->Gsvolu("UT3N", "BOX ", idtmed[1308-1], par_nc, nparnc);
// Xe/Isobutane layer (gasvolume)
par_nc[2] = xethick / 2.;
for (icham = 1; icham <= 6; ++icham) {
sprintf(ctagc,"UXN%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_nc, nparnc);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_nc, nparnc);
}
// Cu layer (pad plane)
par_nc[2] = cuthick / 2;
- pMC->Gsvolu("UT5N", "BOX ", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT5N", "BOX ", idtmed[1305-1], par_nc, nparnc);
// G10 layer (support structure)
par_nc[2] = suthick / 2;
- pMC->Gsvolu("UT6N", "BOX ", idtmed[1313-1], par_nc, nparnc);
+ gMC->Gsvolu("UT6N", "BOX ", idtmed[1313-1], par_nc, nparnc);
// Cu layer (FEE + signal lines)
par_nc[2] = fethick / 2;
- pMC->Gsvolu("UT7N", "BOX ", idtmed[1305-1], par_nc, nparnc);
+ gMC->Gsvolu("UT7N", "BOX ", idtmed[1305-1], par_nc, nparnc);
// PE layer (cooling devices)
par_nc[2] = cothick / 2;
- pMC->Gsvolu("UT8N", "BOX ", idtmed[1303-1], par_nc, nparnc);
+ gMC->Gsvolu("UT8N", "BOX ", idtmed[1303-1], par_nc, nparnc);
// Water layer (cooling)
par_nc[2] = wathick / 2;
- pMC->Gsvolu("UT9N", "BOX ", idtmed[1314-1], par_nc, nparnc);
+ gMC->Gsvolu("UT9N", "BOX ", idtmed[1314-1], par_nc, nparnc);
// Definition of the layers in each outer chamber
par_oc[0] = -1.;
par_oc[1] = -1.;
// G10 layer (radiator layer)
par_oc[2] = sethick / 2;
- pMC->Gsvolu("UT0O", "BOX ", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT0O", "BOX ", idtmed[1313-1], par_oc, nparoc);
// CO2 layer (radiator)
par_oc[2] = rathick / 2;
- pMC->Gsvolu("UT1O", "BOX ", idtmed[1312-1], par_oc, nparoc);
+ gMC->Gsvolu("UT1O", "BOX ", idtmed[1312-1], par_oc, nparoc);
// PE layer (radiator)
par_oc[2] = pethick / 2;
- pMC->Gsvolu("UT2O", "BOX ", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT2O", "BOX ", idtmed[1303-1], par_oc, nparoc);
// Mylar layer (entrance window + HV cathode)
par_oc[2] = mythick / 2;
- pMC->Gsvolu("UT3O", "BOX ", idtmed[1308-1], par_oc, nparoc);
+ gMC->Gsvolu("UT3O", "BOX ", idtmed[1308-1], par_oc, nparoc);
// Xe/Isobutane layer (gasvolume)
par_oc[2] = xethick / 2.;
for (icham = 1; icham <= 6; ++icham) {
sprintf(ctagc,"UXO%1d",icham);
- pMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_oc, nparoc);
+ gMC->Gsvolu(ctagc, "BOX ", idtmed[1309-1], par_oc, nparoc);
}
// Cu layer (pad plane)
par_oc[2] = cuthick / 2;
- pMC->Gsvolu("UT5O", "BOX ", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT5O", "BOX ", idtmed[1305-1], par_oc, nparoc);
// G10 layer (support structure)
par_oc[2] = suthick / 2;
- pMC->Gsvolu("UT6O", "BOX ", idtmed[1313-1], par_oc, nparoc);
+ gMC->Gsvolu("UT6O", "BOX ", idtmed[1313-1], par_oc, nparoc);
// Cu layer (FEE + signal lines)
par_oc[2] = fethick / 2;
- pMC->Gsvolu("UT7O", "BOX ", idtmed[1305-1], par_oc, nparoc);
+ gMC->Gsvolu("UT7O", "BOX ", idtmed[1305-1], par_oc, nparoc);
// PE layer (cooling devices)
par_oc[2] = cothick / 2;
- pMC->Gsvolu("UT8O", "BOX ", idtmed[1303-1], par_oc, nparoc);
+ gMC->Gsvolu("UT8O", "BOX ", idtmed[1303-1], par_oc, nparoc);
// Water layer (cooling)
par_oc[2] = wathick / 2;
- pMC->Gsvolu("UT9O", "BOX ", idtmed[1314-1], par_oc, nparoc);
+ gMC->Gsvolu("UT9O", "BOX ", idtmed[1314-1], par_oc, nparoc);
//////////////////////////////////////////////////////////////////////////
// Positioning of Volumes
AliMatrix(idmat[1], 90., 90., 0., 0., 90., 0.);
// Position of the layers in a chamber
- pMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
- pMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
- pMC->Gspos("UT2O", 1, "UT1O", 0., 0., pezpos, 0, "ONLY");
+ gMC->Gspos("UT2I", 1, "UT1I", 0., 0., pezpos, 0, "ONLY");
+ gMC->Gspos("UT2N", 1, "UT1N", 0., 0., pezpos, 0, "ONLY");
+ gMC->Gspos("UT2O", 1, "UT1O", 0., 0., pezpos, 0, "ONLY");
for (icham = 1; icham <= ncham; ++icham) {
// The inner chambers
sprintf(ctagi,"UII%1d",icham);
sprintf(ctagc,"UXI%1d",icham);
- pMC->Gspos("UT9I", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8I", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7I", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6I", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5I", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3I", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1I", icham, ctagi, 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0I", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT9I", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8I", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7I", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6I", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5I", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3I", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1I", icham, ctagi, 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0I", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
// The neighbouring chambers
sprintf(ctagi,"UIN%1d",icham);
sprintf(ctagc,"UXN%1d",icham);
- pMC->Gspos("UT9N", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8N", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7N", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6N", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5N", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3N", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1N", icham, ctagi, 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0N", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT9N", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8N", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7N", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6N", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5N", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3N", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1N", icham, ctagi, 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0N", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
// The outer chambers
sprintf(ctagi,"UIO%1d",icham);
sprintf(ctagc,"UXO%1d",icham);
- pMC->Gspos("UT9O", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
- pMC->Gspos("UT8O", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
- pMC->Gspos("UT7O", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
- pMC->Gspos("UT6O", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
- pMC->Gspos("UT5O", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
- pMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
- pMC->Gspos("UT3O", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
- pMC->Gspos("UT1O", icham, ctagi, 0., 0., razpos, 0, "ONLY");
- pMC->Gspos("UT0O", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
+ gMC->Gspos("UT9O", icham, ctagi, 0., 0., wazpos, 0, "ONLY");
+ gMC->Gspos("UT8O", icham, ctagi, 0., 0., cozpos, 0, "ONLY");
+ gMC->Gspos("UT7O", icham, ctagi, 0., 0., fezpos, 0, "ONLY");
+ gMC->Gspos("UT6O", icham, ctagi, 0., 0., suzpos, 0, "ONLY");
+ gMC->Gspos("UT5O", icham, ctagi, 0., 0., cuzpos, 0, "ONLY");
+ gMC->Gspos(ctagc , 1, ctagi, 0., 0., xezpos, 0, "ONLY");
+ gMC->Gspos("UT3O", icham, ctagi, 0., 0., myzpos, 0, "ONLY");
+ gMC->Gspos("UT1O", icham, ctagi, 0., 0., razpos, 0, "ONLY");
+ gMC->Gspos("UT0O", icham, ctagi, 0., 0., sezpos, 0, "ONLY");
}
// Position of the inner part of the chambers in the carbon-frames
// The inner chambers
sprintf(ctagi,"UII%1d",icham);
sprintf(ctagc,"UCI%1d",icham);
- pMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
// The neighbouring chambers
sprintf(ctagi,"UIN%1d",icham);
sprintf(ctagc,"UCN%1d",icham);
- pMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
// The outer chambers
sprintf(ctagi,"UIO%1d",icham);
sprintf(ctagc,"UCO%1d",icham);
- pMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagi, 1, ctagc, xpos, ypos, zpos, 0, "ONLY");
}
// Position of the chambers in the full TRD-setup
ypos = 0.;
zpos = (icham-0.5) * heightc - (rmax - rmin) / 2;
sprintf(ctagc,"UCI%1d",icham);
- pMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
// The neighbouring chambers
xpos = 0.;
ypos = (zleni + zlenn) / 2.;
zpos = (icham-0.5) * heightc - (rmax - rmin) / 2;
sprintf(ctagc,"UCN%1d",icham);
- pMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
ypos = -ypos;
sprintf(ctagc,"UCN%1d",icham);
- pMC->Gspos(ctagc, 2, "UTRI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagc, 2, "UTRI", xpos, ypos, zpos, 0, "ONLY");
// The outer chambers
xpos = 0.;
ypos = (zleni / 2. + zlenn + zmax2 + (icham-1) * lendifc) / 2.;
zpos = (icham-0.5) * heightc - (rmax-rmin)/2;
sprintf(ctagc,"UCO%1d",icham);
- pMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagc, 1, "UTRI", xpos, ypos, zpos, 0, "ONLY");
ypos = -ypos;
sprintf(ctagc,"UCO%1d",icham);
- pMC->Gspos(ctagc, 2, "UTRI", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos(ctagc, 2, "UTRI", xpos, ypos, zpos, 0, "ONLY");
}
// Position of the inner part of the detector frame
xpos = (rmax + rmin) / 2;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[0], "ONLY");
+ gMC->Gspos("UTRI", 1, "UTRS", xpos, ypos, zpos, idmat[0], "ONLY");
// Position of the TRD mother volume in the ALICE experiment
xpos = 0.;
ypos = 0.;
zpos = 0.;
- pMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
+ gMC->Gspos("TRD ", 1, "ALIC", xpos, ypos, zpos, 0, "ONLY");
}
// Draw a shaded view of the Transition Radiation Detector 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("TRD ","SEEN",0);
- pMC->Gsatt("UTRS","SEEN",0);
- pMC->Gsatt("UTRI","SEEN",0);
+ gMC->Gsatt("TRD ","SEEN",0);
+ gMC->Gsatt("UTRS","SEEN",0);
+ gMC->Gsatt("UTRI","SEEN",0);
Char_t ctag[5];
for (Int_t icham = 0; icham < ncham; ++icham) {
sprintf(ctag,"UCI%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UCN%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UCO%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UII%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UIN%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UIO%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",0);
+ gMC->Gsatt(ctag,"SEEN",0);
sprintf(ctag,"UXI%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",1);
+ gMC->Gsatt(ctag,"SEEN",1);
sprintf(ctag,"UXN%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",1);
+ gMC->Gsatt(ctag,"SEEN",1);
sprintf(ctag,"UXO%1d",icham+1);
- pMC->Gsatt(ctag,"SEEN",1);
+ gMC->Gsatt(ctag,"SEEN",1);
}
- pMC->Gsatt("UT1I","SEEN",1);
- pMC->Gsatt("UT1N","SEEN",1);
- pMC->Gsatt("UT1O","SEEN",1);
-
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
- pMC->Gdhead(1111, "Transition Radiation Detector Version 2");
- pMC->Gdman(18, 4, "MAN");
- pMC->Gdopt("hide", "off");
+ gMC->Gsatt("UT1I","SEEN",1);
+ gMC->Gsatt("UT1N","SEEN",1);
+ gMC->Gsatt("UT1O","SEEN",1);
+
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 2000, -2000, 2000, -2000, 2000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 12, 9.4, .021, .021);
+ gMC->Gdhead(1111, "Transition Radiation Detector Version 2");
+ gMC->Gdman(18, 4, "MAN");
+ gMC->Gdopt("hide", "off");
}
//_____________________________________________________________________________
AliTRD::Init();
- AliMC* pMC = AliMC::GetMC();
-
// Get the sensitive volumes
Char_t ctag[5];
for (Int_t icham = 0; icham < ncham; ++icham) {
sprintf(ctag,"UXI%1d",icham+1);
- fIdSensI[icham] = pMC->VolId(ctag);
+ fIdSensI[icham] = gMC->VolId(ctag);
sprintf(ctag,"UXN%1d",icham+1);
- fIdSensN[icham] = pMC->VolId(ctag);
+ fIdSensN[icham] = gMC->VolId(ctag);
sprintf(ctag,"UXO%1d",icham+1);
- fIdSensO[icham] = pMC->VolId(ctag);
+ fIdSensO[icham] = gMC->VolId(ctag);
}
Float_t Poti = TMath::Log(kPoti);
TClonesArray &lhits = *fHits;
- AliMC* pMC = AliMC::GetMC();
-
// Ionization energy
const Float_t kWion = 22.04;
// Maximum energy for e+ e- g for the step-size calculation
// Set the maximum step size to a very large number for all
// neutral particles and those outside the driftvolume
- pMC->SetMaxStep(kBig);
+ gMC->SetMaxStep(kBig);
// Use only charged tracks
- if (( pMC->TrackCharge() ) &&
- (!pMC->TrackStop() ) &&
- (!pMC->TrackDisappear())) {
+ if (( gMC->TrackCharge() ) &&
+ (!gMC->TrackStop() ) &&
+ (!gMC->TrackDisappear())) {
// Find the sensitive volume
- idSens = pMC->CurrentVol(0,icSens);
+ idSens = gMC->CurrentVol(0,icSens);
iPla = 0;
iOut = 0;
for (Int_t icham = 0; icham < ncham; ++icham) {
qTot = (Double_t) ((Int_t) (eDelta / kWion) + 1);
// The sector number
- id = pMC->CurrentVolOff(4,0,iSec);
+ id = gMC->CurrentVolOff(4,0,iSec);
// The chamber number
// 1: outer left
// 3: inner
// 4: neighbouring right
// 5: outer right
- id = pMC->CurrentVolOff(2,0,iCha);
+ id = gMC->CurrentVolOff(2,0,iCha);
if (iCha == 1)
iCha = 3 + iOut;
else
if (addthishit) {
// Add this hit
- pMC->TrackPosition(hits);
+ gMC->TrackPosition(hits);
hits[3] = qTot;
new(lhits[fNhits++]) AliTRDhit(fIshunt,gAlice->CurrentTrack(),vol,hits);
// The energy loss according to Bethe Bloch
- pMC->TrackMomentum(mom);
+ gMC->TrackMomentum(mom);
pTot = mom[3];
- iPid = pMC->TrackPid();
+ iPid = gMC->TrackPid();
if ( (iPid > 3) ||
((iPid <= 3) && (pTot < kPTotMax))) {
- aMass = pMC->TrackMass();
+ aMass = gMC->TrackMass();
betaGamma = pTot / aMass;
pp = kPrim * BetheBloch(betaGamma);
// Take charge > 1 into account
- charge = pMC->TrackCharge();
+ charge = gMC->TrackCharge();
if (TMath::Abs(charge) > 1) pp = pp * charge*charge;
}
// Electrons above 20 Mev/c are at the plateau
// Calculate the maximum step size for the next tracking step
if (pp > 0) {
do
- pMC->Rndm(random,1);
+ gMC->Rndm(random,1);
while ((random[0] == 1.) || (random[0] == 0.));
- pMC->SetMaxStep( - TMath::Log(random[0]) / pp);
+ gMC->SetMaxStep( - TMath::Log(random[0]) / pp);
}
}
else {
// set step size to maximal value
- pMC->SetMaxStep(kBig);
+ gMC->SetMaxStep(kBig);
}
}
//* Initialize COMMON block ZDC_CGEOM
//*
- AliMC* pMC = AliMC::GetMC();
-
const Int_t NZPTX=4;
const Int_t NZPTY=1;
const Int_t NZNTX=2;
conpar[6] = 13060.;
conpar[7] = 0.;
conpar[8] = 55.;
- pMC->Gsvolu("ZDC ", "PCON", idtmed[891], conpar, 9);
- pMC->Gspos("ZDC ", 1, "ALIC", 0., 0., 0., 0, "ONLY");
+ gMC->Gsvolu("ZDC ", "PCON", idtmed[891], conpar, 9);
+ gMC->Gspos("ZDC ", 1, "ALIC", 0., 0., 0., 0, "ONLY");
// -- FIRST SECTION OF THE BEAM PIPE (from compensator dipole to
// beginning of D1)
tubpar[0] = 2.3;
tubpar[1] = 2.5;
tubpar[2] = 1961.75;
- pMC->Gsvolu("P001", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P001", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P001", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P001", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
//-- SECOND SECTION OF THE BEAM PIPE (FROM THE END OF D1 TO THE BEGINNING OF
// D2)
tubpar[0] = 7.3/2.;
tubpar[1] = 7.7/2.;
tubpar[2] = 90.*0.5;
- pMC->Gsvolu("P002", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P002", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P002", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P002", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 7.3/2.;
tubpar[1] = 7.7/2.;
tubpar[2] = 10.*0.5;
- pMC->Gsvolu("P003", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P003", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P003", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P003", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 7.7/2.;
conpar[3] = 9.8/2.;
conpar[4] = 10.0/2.;
- pMC->Gsvolu("P004", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P004", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P004", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P004", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 9.8/2.;
tubpar[1] = 10.0/2;
tubpar[2] = 490./2.;
- pMC->Gsvolu("P005", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P005", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P005", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P005", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 10.0/2.;
conpar[3] = 20.4/2.;
conpar[4] = 20.6/2.;
- pMC->Gsvolu("P006", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P006", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P006", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P006", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 20.4/2.;
tubpar[1] = 20.6/2.;
tubpar[2] = 150./2.;
- pMC->Gsvolu("P007", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P007", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P007", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P007", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 20.6/2.;
conpar[3] = 25.2/2.;
conpar[4] = 25.4/2.;
- pMC->Gsvolu("P008", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P008", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P008", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P008", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 25.2/2.;
tubpar[1] = 25.4/2.;
tubpar[2] = 205.8/2.;
- pMC->Gsvolu("P009", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P009", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P009", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P009", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 43.8/2.;
tubpar[1] = 44.0/2.;
tubpar[2] = 500./2.;
- pMC->Gsvolu("P010", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P010", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P010", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P010", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 31.8/2.;
tubpar[1] = 32.0/2.;
tubpar[2] = 757.5/2.;
- pMC->Gsvolu("P011", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P011", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P011", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P011", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 32.0/2.;
conpar[3] = 39.8/2.;
conpar[4] = 40.0/2.;
- pMC->Gsvolu("P012", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P012", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P012", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P012", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 39.8/2.;
tubpar[1] = 40.0/2.;
tubpar[2] = 100./2.;
- pMC->Gsvolu("P013", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P013", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P013", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P013", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 39.8/2.;
tubpar[1] = 40.0/2.;
tubpar[2] = 600./2.;
- pMC->Gsvolu("P014", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P014", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P014", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P014", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 40.0/2.;
conpar[3] = 49.8/2.;
conpar[4] = 50.0/2.;
- pMC->Gsvolu("P015", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P015", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P015", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P015", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 49.8/2.;
tubpar[1] = 50.0/2.;
tubpar[2] = 100./2.;
- pMC->Gsvolu("P016", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P016", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P016", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P016", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 49.8/2.;
tubpar[1] = 50.0/2.;
tubpar[2] = 600./2.;
- pMC->Gsvolu("P017", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P017", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P017", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P017", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
conpar[2] = 50.0/2.;
conpar[3] = 59.8/2.;
conpar[4] = 60.0/2.;
- pMC->Gsvolu("P018", "CONE", idtmed[851], conpar, 5);
- pMC->Gspos("P018", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P018", "CONE", idtmed[851], conpar, 5);
+ gMC->Gspos("P018", 1, "ZDC ", 0., 0., conpar[0] + zd1, 0, "ONLY");
zd1 += conpar[0] * 2.;
tubpar[0] = 59.8/2.;
tubpar[1] = 60.0/2.;
tubpar[2] = 50./2.;
- pMC->Gsvolu("P019", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P019", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P019", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P019", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 59.8/2.;
tubpar[1] = 60.0/2.;
tubpar[2] = 800./2.;
- pMC->Gsvolu("P020", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P020", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P020", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P020", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 0.;
tubpar[1] = 60.0/2.;
tubpar[2] = 0.2/2.;
- pMC->Gsvolu("P021", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("P021", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gsvolu("P021", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("P021", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
zd1 += tubpar[2] * 2.;
tubpar[0] = 0.;
tubpar[1] = 4.4/2.;
tubpar[2] = 0.2/2.;
- pMC->Gsvolu("Q021", "TUBE", idtmed[889], tubpar, 3);
+ gMC->Gsvolu("Q021", "TUBE", idtmed[889], tubpar, 3);
tubpar[0] = 0.;
tubpar[1] = 7.0/2.;
tubpar[2] = 0.2/2.;
- pMC->Gsvolu("R021", "TUBE", idtmed[889], tubpar, 3);
+ gMC->Gsvolu("R021", "TUBE", idtmed[889], tubpar, 3);
// -- POSITION Q021 INSIDE P021
- pMC->Gspos("Q021", 1, "P021", -7.7, 0., 0., 0, "ONLY");
+ gMC->Gspos("Q021", 1, "P021", -7.7, 0., 0., 0, "ONLY");
// -- POSITION R020 INSIDE P020
- pMC->Gspos("R021", 1, "P021", 7.7, 0., 0., 0, "ONLY");
+ gMC->Gspos("R021", 1, "P021", 7.7, 0., 0., 0, "ONLY");
// -- BEAM PIPES BETWEEN END OF CONICAL PIPE AND BEGINNING OF D2
tubpar[0] = 4.0/2.;
tubpar[1] = 4.4/2.;
tubpar[2] = 645.*0.5;
- pMC->Gsvolu("P022", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("P022", "TUBE", idtmed[851], tubpar, 3);
tubpar[0] = 7.0/2.;
tubpar[1] = 7.4/2.;
tubpar[2] = 645.*0.5;
- pMC->Gsvolu("P023", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("P023", "TUBE", idtmed[851], tubpar, 3);
// -- ROTATE PIPES
AliMatrix(im1, 90.-0.071, 0., 90., 90., .071, 180.);
angle = .071*kDegrad;
- pMC->Gspos("P022", 1, "ZDC ", TMath::Sin(angle) * 322.5 - 9.7 +
+ gMC->Gspos("P022", 1, "ZDC ", TMath::Sin(angle) * 322.5 - 9.7 +
TMath::Sin(angle) * 472.5, 0., tubpar[2] + zd1, im1, "ONLY");
AliMatrix(im2, 90.+0.071, 0., 90., 90., .071, 0.);
- pMC->Gspos("P023", 1, "ZDC ", 9.7 - TMath::Sin(angle) * 322.5, 0.,
+ gMC->Gspos("P023", 1, "ZDC ", 9.7 - TMath::Sin(angle) * 322.5, 0.,
tubpar[2] + zd1, im2, "ONLY");
// -- END OF BEAM PIPE VOLUME DEFINITION. MAGNET DEFINITION FOLLOWS
tubpar[0] = 0.;
tubpar[1] = 4.5;
tubpar[2] = 190./2.;
- pMC->Gsvolu("MCBW", "TUBE", idtmed[890], tubpar, 3);
- pMC->Gspos("MCBW", 1, "ZDC ", 0., 0., tubpar[2] + 1920., 0, "ONLY");
+ gMC->Gsvolu("MCBW", "TUBE", idtmed[890], tubpar, 3);
+ gMC->Gspos("MCBW", 1, "ZDC ", 0., 0., tubpar[2] + 1920., 0, "ONLY");
// -- YOKE (IRON WITHOUT MAGNETIC FIELD)
tubpar[0] = 4.5;
tubpar[1] = 55.;
tubpar[2] = 190./2.;
- pMC->Gsvolu("YMCB", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("YMCB", 1, "ZDC ", 0., 0., tubpar[2] + 1920., 0, "ONLY");
+ gMC->Gsvolu("YMCB", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gspos("YMCB", 1, "ZDC ", 0., 0., tubpar[2] + 1920., 0, "ONLY");
// -- INNER TRIPLET
tubpar[0] = 0.;
tubpar[1] = 3.5;
tubpar[2] = 630./2.;
- pMC->Gsvolu("MQXL", "TUBE", idtmed[890], tubpar, 3);
+ gMC->Gsvolu("MQXL", "TUBE", idtmed[890], tubpar, 3);
// -- YOKE
tubpar[0] = 3.5;
tubpar[1] = 22.;
tubpar[2] = 630./2.;
- pMC->Gsvolu("YMQL", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("YMQL", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("MQXL", 1, "ZDC ", 0., 0., tubpar[2] + zq, 0, "ONLY");
- pMC->Gspos("YMQL", 1, "ZDC ", 0., 0., tubpar[2] + zq, 0, "ONLY");
+ gMC->Gspos("MQXL", 1, "ZDC ", 0., 0., tubpar[2] + zq, 0, "ONLY");
+ gMC->Gspos("YMQL", 1, "ZDC ", 0., 0., tubpar[2] + zq, 0, "ONLY");
- pMC->Gspos("MQXL", 2, "ZDC ", 0., 0., tubpar[2] + zq + 2430., 0, "ONLY");
- pMC->Gspos("YMQL", 2, "ZDC ", 0., 0., tubpar[2] + zq + 2430., 0, "ONLY");
+ gMC->Gspos("MQXL", 2, "ZDC ", 0., 0., tubpar[2] + zq + 2430., 0, "ONLY");
+ gMC->Gspos("YMQL", 2, "ZDC ", 0., 0., tubpar[2] + zq + 2430., 0, "ONLY");
// -- MQX
// -- GAP (VACUUM WITH MAGNETIC FIELD)
tubpar[0] = 0.;
tubpar[1] = 3.5;
tubpar[2] = 550./2.;
- pMC->Gsvolu("MQX ", "TUBE", idtmed[890], tubpar, 3);
+ gMC->Gsvolu("MQX ", "TUBE", idtmed[890], tubpar, 3);
// -- YOKE
tubpar[0] = 3.5;
tubpar[1] = 22.;
tubpar[2] = 550./2.;
- pMC->Gsvolu("YMQ ", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("YMQ ", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("MQX ", 1, "ZDC ", 0., 0., tubpar[2] + zq + 880., 0, "ONLY");
- pMC->Gspos("YMQ ", 1, "ZDC ", 0., 0., tubpar[2] + zq + 880., 0, "ONLY");
+ gMC->Gspos("MQX ", 1, "ZDC ", 0., 0., tubpar[2] + zq + 880., 0, "ONLY");
+ gMC->Gspos("YMQ ", 1, "ZDC ", 0., 0., tubpar[2] + zq + 880., 0, "ONLY");
- pMC->Gspos("MQX ", 2, "ZDC ", 0., 0., tubpar[2] + zq + 1530., 0, "ONLY");
- pMC->Gspos("YMQ ", 2, "ZDC ", 0., 0., tubpar[2] + zq + 1530., 0, "ONLY");
+ gMC->Gspos("MQX ", 2, "ZDC ", 0., 0., tubpar[2] + zq + 1530., 0, "ONLY");
+ gMC->Gspos("YMQ ", 2, "ZDC ", 0., 0., tubpar[2] + zq + 1530., 0, "ONLY");
// -- SEPARATOR DIPOLE D1
tubpar[0] = 0.;
tubpar[1] = 4.5;
tubpar[2] = 945/2.;
- pMC->Gsvolu("D1 ", "TUBE", idtmed[890], tubpar, 3);
+ gMC->Gsvolu("D1 ", "TUBE", idtmed[890], tubpar, 3);
// -- YOKE
tubpar[0] = 0.;
tubpar[1] = 55.;
tubpar[2] = 945/2.;
- pMC->Gsvolu("YD1 ", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("YD1 ", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("YD1 ", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
- pMC->Gspos("D1 ", 1, "YD1 ", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("YD1 ", 1, "ZDC ", 0., 0., tubpar[2] + zd1, 0, "ONLY");
+ gMC->Gspos("D1 ", 1, "YD1 ", 0., 0., 0., 0, "ONLY");
// -- DIPOLE D2
tubpar[0] = 0.;
tubpar[1] = 4.5;
tubpar[2] = 945./2.;
- pMC->Gsvolu("D2 ", "TUBE", idtmed[890], tubpar, 3);
+ gMC->Gsvolu("D2 ", "TUBE", idtmed[890], tubpar, 3);
// -- YOKE
tubpar[0] = 0.;
tubpar[1] = 55.;
tubpar[2] = 945./2.;
- pMC->Gsvolu("YD2 ", "TUBE", idtmed[851], tubpar, 3);
+ gMC->Gsvolu("YD2 ", "TUBE", idtmed[851], tubpar, 3);
- pMC->Gspos("YD2 ", 1, "ZDC ", 0., 0., tubpar[2] + zd2, 0, "ONLY");
+ gMC->Gspos("YD2 ", 1, "ZDC ", 0., 0., tubpar[2] + zd2, 0, "ONLY");
- pMC->Gspos("D2 ", 1, "YD2 ", -9.7, 0., 0., 0, "ONLY");
- pMC->Gspos("D2 ", 2, "YD2 ", 9.7, 0., 0., 0, "ONLY");
+ gMC->Gspos("D2 ", 1, "YD2 ", -9.7, 0., 0., 0, "ONLY");
+ gMC->Gspos("D2 ", 2, "YD2 ", 9.7, 0., 0., 0, "ONLY");
// -- END OF MAGNET DEFINITION
// Neutron calorimeter
- pMC->Gsvolu("ZNEU", "BOX ", idtmed[800], HDZN, 3); // Passive material
- pMC->Gsvolu("ZNFI", "TUBE", idtmed[802], FIZN, 3); // Active material
- pMC->Gsvolu("ZNGR", "BOX ", idtmed[889], GRZN, 3); // Empty grooves
+ gMC->Gsvolu("ZNEU", "BOX ", idtmed[800], HDZN, 3); // Passive material
+ gMC->Gsvolu("ZNFI", "TUBE", idtmed[802], FIZN, 3); // Active material
+ gMC->Gsvolu("ZNGR", "BOX ", idtmed[889], GRZN, 3); // Empty grooves
// Divide ZNEU in towers
// (for hits purposes)
- pMC->Gsdvn("ZNTX", "ZNEU", NZNTX, 1); // x-tower
- pMC->Gsdvn("ZN1 ", "ZNTX", NZNTY, 2); // y-tower
+ gMC->Gsdvn("ZNTX", "ZNEU", NZNTX, 1); // x-tower
+ gMC->Gsdvn("ZN1 ", "ZNTX", NZNTY, 2); // y-tower
// Divide ZNEU in minitowers
// (NCEN(1)= NUMBER OF FIBERS PER TOWER ALONG X-AXIS,
// NCEN(2)= NUMBER OF FIBERS PER TOWER ALONG Y-AXIS)
// (one fiber per minitower)
- pMC->Gsdvn("ZNSL", "ZN1 ", NCEN[1], 2); // Slices
- pMC->Gsdvn("ZNST", "ZNSL", NCEN[0], 1); // Sticks
+ gMC->Gsdvn("ZNSL", "ZN1 ", NCEN[1], 2); // Slices
+ gMC->Gsdvn("ZNST", "ZNSL", NCEN[0], 1); // Sticks
// --- Position the empty grooves in the sticks
- pMC->Gspos("ZNGR", 1, "ZNST", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("ZNGR", 1, "ZNST", 0., 0., 0., 0, "ONLY");
// --- Position the fibers in the grooves
- pMC->Gspos("ZNFI", 1, "ZNGR", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("ZNFI", 1, "ZNGR", 0., 0., 0., 0, "ONLY");
// --- Position the neutron calorimeter in ZDC
- pMC->Gspos("ZNEU", 1, "ZDC ", ZNPOS[0], ZNPOS[1], ZNPOS[2] + HDZN[2], 0, "ONLY");
+ gMC->Gspos("ZNEU", 1, "ZDC ", ZNPOS[0], ZNPOS[1], ZNPOS[2] + HDZN[2], 0, "ONLY");
// Proton calorimeter
- pMC->Gsvolu("ZPRO", "BOX ", idtmed[801], HDZP, 3); // Passive material
- pMC->Gsvolu("ZPFI", "TUBE", idtmed[802], FIZP, 3); // Active material
- pMC->Gsvolu("ZPGR", "BOX ", idtmed[889], GRZP, 3); // Empty grooves
+ gMC->Gsvolu("ZPRO", "BOX ", idtmed[801], HDZP, 3); // Passive material
+ gMC->Gsvolu("ZPFI", "TUBE", idtmed[802], FIZP, 3); // Active material
+ gMC->Gsvolu("ZPGR", "BOX ", idtmed[889], GRZP, 3); // Empty grooves
// Divide ZPRO in towers
// (for hits purposes)
- pMC->Gsdvn("ZPTX", "ZPRO", NZPTX, 1); // x-tower
- pMC->Gsdvn("ZP1 ", "ZPTX", NZPTY, 2); // y-tower
+ gMC->Gsdvn("ZPTX", "ZPRO", NZPTX, 1); // x-tower
+ gMC->Gsdvn("ZP1 ", "ZPTX", NZPTY, 2); // y-tower
// Divide ZPRO in minitowers
// NCEP[1]= NUMBER OF FIBERS ALONG Y-AXIS PER MINITOWER)
// (one fiber per minitower)
- pMC->Gsdvn("ZPSL", "ZP1 ", NCEP[1], 2); // Slices
- pMC->Gsdvn("ZPST", "ZPSL", NCEP[0], 1); // Sticks
+ gMC->Gsdvn("ZPSL", "ZP1 ", NCEP[1], 2); // Slices
+ gMC->Gsdvn("ZPST", "ZPSL", NCEP[0], 1); // Sticks
// --- Position the empty grooves in the sticks
- pMC->Gspos("ZPGR", 1, "ZPST", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("ZPGR", 1, "ZPST", 0., 0., 0., 0, "ONLY");
// --- Position the fibers in the grooves
- pMC->Gspos("ZPFI", 1, "ZPGR", 0., 0., 0., 0, "ONLY");
+ gMC->Gspos("ZPFI", 1, "ZPGR", 0., 0., 0., 0, "ONLY");
// --- Position the proton calorimeter in ZDC
- pMC->Gspos("ZPRO", 1, "ZDC ", ZPPOS[0], ZPPOS[1], ZPPOS[2] + HDZP[2], 0, "ONLY");
+ gMC->Gspos("ZPRO", 1, "ZDC ", ZPPOS[0], ZPPOS[1], ZPPOS[2] + HDZP[2], 0, "ONLY");
}
// Draw a shaded view of the Zero Degree Calorimeter 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("ZDC","SEEN",0);
- pMC->Gsatt("P001","SEEN",1);
- pMC->Gsatt("P002","SEEN",1);
- pMC->Gsatt("P003","SEEN",1);
- pMC->Gsatt("P004","SEEN",1);
- pMC->Gsatt("P005","SEEN",1);
- pMC->Gsatt("P006","SEEN",1);
- pMC->Gsatt("P007","SEEN",1);
- pMC->Gsatt("P008","SEEN",1);
- pMC->Gsatt("P009","SEEN",1);
- pMC->Gsatt("P010","SEEN",1);
- pMC->Gsatt("P011","SEEN",1);
- pMC->Gsatt("P012","SEEN",1);
- pMC->Gsatt("P013","SEEN",1);
- pMC->Gsatt("P014","SEEN",1);
- pMC->Gsatt("P015","SEEN",1);
- pMC->Gsatt("P016","SEEN",1);
- pMC->Gsatt("P017","SEEN",1);
- pMC->Gsatt("P018","SEEN",1);
- pMC->Gsatt("P019","SEEN",1);
- pMC->Gsatt("P020","SEEN",1);
- pMC->Gsatt("P021","SEEN",1);
- pMC->Gsatt("Q021","SEEN",1);
- pMC->Gsatt("R021","SEEN",1);
- pMC->Gsatt("P022","SEEN",1);
- pMC->Gsatt("P023","SEEN",1);
- pMC->Gsatt("D1 ","SEEN",1);
- pMC->Gsatt("YD1 ","SEEN",1);
- pMC->Gsatt("D2 ","SEEN",1);
- pMC->Gsatt("YD2 ","SEEN",1);
- pMC->Gsatt("MCBW","SEEN",1);
- pMC->Gsatt("YMCB","SEEN",1);
- pMC->Gsatt("MQXL","SEEN",1);
- pMC->Gsatt("YMQL","SEEN",1);
- pMC->Gsatt("MQX","SEEN",1);
- pMC->Gsatt("YMQ","SEEN",1);
- pMC->Gsatt("D1","SEEN",1);
- pMC->Gsatt("YD1","SEEN",1);
- pMC->Gsatt("D2","SEEN",1);
- pMC->Gsatt("YD2","SEEN",1);
- pMC->Gsatt("ZNEU","SEEN",0);
- pMC->Gsatt("ZNFI","SEEN",0);
- pMC->Gsatt("ZNGR","SEEN",0);
- pMC->Gsatt("ZNTX","SEEN",0);
- pMC->Gsatt("ZN1 ","COLO",2);
- pMC->Gsatt("ZN1 ","SEEN",1);
- pMC->Gsatt("ZNSL","SEEN",0);
- pMC->Gsatt("ZNST","SEEN",0);
- pMC->Gsatt("ZPRO","SEEN",0);
- pMC->Gsatt("ZPFI","SEEN",0);
- pMC->Gsatt("ZPGR","SEEN",0);
- pMC->Gsatt("ZPTX","SEEN",0);
- pMC->Gsatt("ZP1 ","SEEN",1);
- pMC->Gsatt("ZPSL","SEEN",0);
- pMC->Gsatt("ZPST","SEEN",0);
-
- //
- pMC->Gdopt("hide", "on");
- pMC->Gdopt("shad", "on");
- pMC->Gsatt("*", "fill", 7);
- pMC->SetClipBox(".");
- pMC->SetClipBox("*", 0, 100, -100, 100, 12000, 16000);
- pMC->DefaultRange();
- pMC->Gdraw("alic", 40, 30, 0, 488, 220, .07, .07);
- pMC->Gdhead(1111, "Zero Degree Calorimeter Version 1");
- pMC->Gdman(18, 4, "MAN");
+ gMC->Gsatt("ZDC","SEEN",0);
+ gMC->Gsatt("P001","SEEN",1);
+ gMC->Gsatt("P002","SEEN",1);
+ gMC->Gsatt("P003","SEEN",1);
+ gMC->Gsatt("P004","SEEN",1);
+ gMC->Gsatt("P005","SEEN",1);
+ gMC->Gsatt("P006","SEEN",1);
+ gMC->Gsatt("P007","SEEN",1);
+ gMC->Gsatt("P008","SEEN",1);
+ gMC->Gsatt("P009","SEEN",1);
+ gMC->Gsatt("P010","SEEN",1);
+ gMC->Gsatt("P011","SEEN",1);
+ gMC->Gsatt("P012","SEEN",1);
+ gMC->Gsatt("P013","SEEN",1);
+ gMC->Gsatt("P014","SEEN",1);
+ gMC->Gsatt("P015","SEEN",1);
+ gMC->Gsatt("P016","SEEN",1);
+ gMC->Gsatt("P017","SEEN",1);
+ gMC->Gsatt("P018","SEEN",1);
+ gMC->Gsatt("P019","SEEN",1);
+ gMC->Gsatt("P020","SEEN",1);
+ gMC->Gsatt("P021","SEEN",1);
+ gMC->Gsatt("Q021","SEEN",1);
+ gMC->Gsatt("R021","SEEN",1);
+ gMC->Gsatt("P022","SEEN",1);
+ gMC->Gsatt("P023","SEEN",1);
+ gMC->Gsatt("D1 ","SEEN",1);
+ gMC->Gsatt("YD1 ","SEEN",1);
+ gMC->Gsatt("D2 ","SEEN",1);
+ gMC->Gsatt("YD2 ","SEEN",1);
+ gMC->Gsatt("MCBW","SEEN",1);
+ gMC->Gsatt("YMCB","SEEN",1);
+ gMC->Gsatt("MQXL","SEEN",1);
+ gMC->Gsatt("YMQL","SEEN",1);
+ gMC->Gsatt("MQX","SEEN",1);
+ gMC->Gsatt("YMQ","SEEN",1);
+ gMC->Gsatt("D1","SEEN",1);
+ gMC->Gsatt("YD1","SEEN",1);
+ gMC->Gsatt("D2","SEEN",1);
+ gMC->Gsatt("YD2","SEEN",1);
+ gMC->Gsatt("ZNEU","SEEN",0);
+ gMC->Gsatt("ZNFI","SEEN",0);
+ gMC->Gsatt("ZNGR","SEEN",0);
+ gMC->Gsatt("ZNTX","SEEN",0);
+ gMC->Gsatt("ZN1 ","COLO",2);
+ gMC->Gsatt("ZN1 ","SEEN",1);
+ gMC->Gsatt("ZNSL","SEEN",0);
+ gMC->Gsatt("ZNST","SEEN",0);
+ gMC->Gsatt("ZPRO","SEEN",0);
+ gMC->Gsatt("ZPFI","SEEN",0);
+ gMC->Gsatt("ZPGR","SEEN",0);
+ gMC->Gsatt("ZPTX","SEEN",0);
+ gMC->Gsatt("ZP1 ","SEEN",1);
+ gMC->Gsatt("ZPSL","SEEN",0);
+ gMC->Gsatt("ZPST","SEEN",0);
+
+ //
+ gMC->Gdopt("hide", "on");
+ gMC->Gdopt("shad", "on");
+ gMC->Gsatt("*", "fill", 7);
+ gMC->SetClipBox(".");
+ gMC->SetClipBox("*", 0, 100, -100, 100, 12000, 16000);
+ gMC->DefaultRange();
+ gMC->Gdraw("alic", 40, 30, 0, 488, 220, .07, .07);
+ gMC->Gdhead(1111, "Zero Degree Calorimeter Version 1");
+ gMC->Gdman(18, 4, "MAN");
}
//_____________________________________________________________________________
//
// Origin : E. Scomparin
- AliMC* pMC = AliMC::GetMC();
-
Int_t *idtmed = fIdtmed->GetArray()-799;
Float_t dens, ubuf[1], wmat[2];
// Thresholds for showering in the ZDCs
i = 801;
- pMC->Gstpar(idtmed[i-1], "CUTGAM", .01);
- pMC->Gstpar(idtmed[i-1], "CUTELE", .01);
- pMC->Gstpar(idtmed[i-1], "CUTNEU", .1);
- pMC->Gstpar(idtmed[i-1], "CUTHAD", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTGAM", .01);
+ gMC->Gstpar(idtmed[i-1], "CUTELE", .01);
+ gMC->Gstpar(idtmed[i-1], "CUTNEU", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTHAD", .1);
i = 802;
- pMC->Gstpar(idtmed[i-1], "CUTGAM", .01);
- pMC->Gstpar(idtmed[i-1], "CUTELE", .01);
- pMC->Gstpar(idtmed[i-1], "CUTNEU", .1);
- pMC->Gstpar(idtmed[i-1], "CUTHAD", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTGAM", .01);
+ gMC->Gstpar(idtmed[i-1], "CUTELE", .01);
+ gMC->Gstpar(idtmed[i-1], "CUTNEU", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTHAD", .1);
// Avoid too detailed showering along the beam line
i = 852;
- pMC->Gstpar(idtmed[i-1], "CUTGAM", .1);
- pMC->Gstpar(idtmed[i-1], "CUTELE", .1);
- pMC->Gstpar(idtmed[i-1], "CUTNEU", 1.);
- pMC->Gstpar(idtmed[i-1], "CUTHAD", 1.);
+ gMC->Gstpar(idtmed[i-1], "CUTGAM", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTELE", .1);
+ gMC->Gstpar(idtmed[i-1], "CUTNEU", 1.);
+ gMC->Gstpar(idtmed[i-1], "CUTHAD", 1.);
// Avoid interaction in fibers (only energy loss allowed)
i = 803;
- pMC->Gstpar(idtmed[i-1], "DCAY", 0.);
- pMC->Gstpar(idtmed[i-1], "MULS", 0.);
- pMC->Gstpar(idtmed[i-1], "PFIS", 0.);
- pMC->Gstpar(idtmed[i-1], "MUNU", 0.);
- pMC->Gstpar(idtmed[i-1], "LOSS", 1.);
- pMC->Gstpar(idtmed[i-1], "PHOT", 0.);
- pMC->Gstpar(idtmed[i-1], "COMP", 0.);
- pMC->Gstpar(idtmed[i-1], "PAIR", 0.);
- pMC->Gstpar(idtmed[i-1], "BREM", 0.);
- pMC->Gstpar(idtmed[i-1], "DRAY", 0.);
- pMC->Gstpar(idtmed[i-1], "ANNI", 0.);
- pMC->Gstpar(idtmed[i-1], "HADR", 0.);
+ gMC->Gstpar(idtmed[i-1], "DCAY", 0.);
+ gMC->Gstpar(idtmed[i-1], "MULS", 0.);
+ gMC->Gstpar(idtmed[i-1], "PFIS", 0.);
+ gMC->Gstpar(idtmed[i-1], "MUNU", 0.);
+ gMC->Gstpar(idtmed[i-1], "LOSS", 1.);
+ gMC->Gstpar(idtmed[i-1], "PHOT", 0.);
+ gMC->Gstpar(idtmed[i-1], "COMP", 0.);
+ gMC->Gstpar(idtmed[i-1], "PAIR", 0.);
+ gMC->Gstpar(idtmed[i-1], "BREM", 0.);
+ gMC->Gstpar(idtmed[i-1], "DRAY", 0.);
+ gMC->Gstpar(idtmed[i-1], "ANNI", 0.);
+ gMC->Gstpar(idtmed[i-1], "HADR", 0.);
}
ClassImp(AliZDChit)