if (IsVersion()==7) {
- xTof = fTOFGeometry->StripLength()+2.*0.3; // cm, x-dimension of FTOA volume
+ xTof = fTOFGeometry->StripLength()+2.*(0.3+0.03); // cm, x-dimension of FTOA volume
yTof = fTOFGeometry->Rmax()-fTOFGeometry->Rmin(); // cm, y-dimension of FTOA volume
Float_t zTof = fTOFGeometry->ZlenA(); // cm, z-dimension of FTOA volume
/*
$Log$
+Revision 1.11 2005/12/15 14:17:29 decaro
+Correction of some parameter values
+
Revision 1.10 2005/12/15 08:55:32 decaro
New TOF geometry description (V5) -G. Cara Romeo and A. De Caro
const Float_t AliTOFGeometry::fgkXPad = 2.5; // Pad size in the x direction (cm)
const Float_t AliTOFGeometry::fgkZPad = 3.5; // Pad size in the z direction (cm)
+const Float_t AliTOFGeometry::fgkStripLength = 122.;// Strip Length (rho X phi direction) (cm)
+
const Float_t AliTOFGeometry::fgkSigmaForTail1= 2.; //Sig1 for simulation of TDC tails
const Float_t AliTOFGeometry::fgkSigmaForTail2= 0.5;//Sig2 for simulation of TDC tails
//
kNStripC = 20; // number of strips in C type module
- kMaxNstrip = 20; // Max. number of strips
kZlenA = 106.0; // length (cm) of the A module
kZlenB = 141.0; // length (cm) of the B module
kZlenC = 177.5; // length (cm) of the C module
kMaxhZtof = 371.5; // Max half z-size of TOF (cm)
- kStripLength = 122.;// Strip Length (rho X phi direction) (cm)
fgkxTOF = 371.; // Inner radius of the TOF for Reconstruction (cm)
fgkRmin = 370.; // Inner radius of the TOF (cm)
fPhiSec = 360./kNSectors;
+ Float_t const kangles[kNPlates][kMaxNstrip] ={
+
+ {44.494, 43.725, 42.946, 42.156, 41.357, 40.548, 39.729, 38.899,
+ 38.060, 37.211, 36.353, 35.484, 34.606, 33.719, 32.822, 31.916,
+ 31.001, 30.077, 29.144, 28.202 },
+
+ {26.884, 25.922, 24.952, 23.975, 22.989, 22.320, 21.016, 20.309,
+ 19.015, 18.270, 16.989, 16.205, 14.941, 14.117, 12.871, 12.008,
+ 10.784, 9.8807, 8.681, 0.0 },
+
+ { 7.5835, 6.4124, 5.4058, 4.2809, 3.2448, 2.1424, 1.078, -0., -1.078,
+ -2.1424, -3.2448, -4.2809, -5.4058, -6.4124, -7.5835, 0.0, 0.0, 0.0,
+ 0.0, 0.0 },
+
+ {-8.681, -9.8807, -10.784, -12.008, -12.871, -14.117, -14.941, -16.205,
+ -16.989, -18.27, -19.015, -20.309, -21.016, -22.32, -22.989,
+ -23.975, -24.952, -25.922, -26.884, 0. },
+
+ {-28.202, -29.144, -30.077, -31.001, -31.916, -32.822, -33.719, -34.606,
+ -35.484, -36.353, -37.211, -38.06, -38.899, -39.729, -40.548,
+ -41.357, -42.156, -42.946, -43.725, -44.494 }};
+
+
+ //Strips Heights
+
+ Float_t const kheights[kNPlates][kMaxNstrip]= {
+
+ {-5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5,
+ -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5 },
+
+ {-6.3, -7.1, -7.9, -8.7, -9.5, -3, -9.5, -3, -9.5, -3,
+ -9.5, -3.0, -9.5, -3.0, -9.5, -3, -9.5, -3, -9 , 0.},
+
+ { -3, -9, -4.5, -9, -4.5, -9, -4.5, -9, -4.5, -9,
+ -4.5, -9, -4.5, -9, -3, 0.0, 0.0, 0.0, 0.0, 0.0 },
+
+ { -9, -3, -9.5, -3, -9.5, -3, -9.5, -3, -9.5, -3, -9.5,
+ -3, -9.5, -3, -9.5, -8.7, -7.9, -7.1, -6.3, 0. },
+
+ {-5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5,
+ -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5, -5.5 }};
+
+ for (Int_t iplate = 0; iplate < kNPlates; iplate++) {
+ for (Int_t istrip = 0; istrip < kMaxNstrip; istrip++) {
+ fAngles[iplate][istrip] = kangles[iplate][istrip];
+ fHeights[iplate][istrip] = kheights[iplate][istrip];
+ }
+ }
+
}
//_____________________________________________________________________________
static Int_t NStripA() { return kNStripA;};
static Int_t NStripB() { return kNStripB;};
virtual Int_t NStripC() { return kNStripC;};
- virtual Int_t NMaxNstrip() { return kMaxNstrip;};
+ static Int_t NMaxNstrip() { return kMaxNstrip;};
static Int_t NpadX() { return kNpadX;};
static Int_t NpadZ() { return kNpadZ;};
static Int_t NpadXStrip() { return kNpadX*kNpadZ;};
static Float_t XPad() { return fgkXPad;};
static Float_t ZPad() { return fgkZPad;};
+ static Float_t StripLength() { return fgkStripLength;};
+
static Int_t TimeDiff() { return fgkTimeDiff;};
static Int_t MaxTOFTree() { return kMaxTOFTree;};
virtual Float_t ZlenB() { return kZlenB;};
virtual Float_t ZlenC() { return kZlenC;};
virtual Float_t MaxhZtof() { return kMaxhZtof;};
- virtual Float_t StripLength() { return kStripLength;};
static Float_t SigmaForTail1() { return fgkSigmaForTail1;};
static Float_t SigmaForTail2() { return fgkSigmaForTail2;};
kNpadZ = 2, // Number of pads along Z
kNSectors = 18, // Number of Sectors
kNPlates = 5, // Number of Plates
- kMaxTOFTree = 5 // numer of geom. levels:
+ kMaxTOFTree = 5, // numer of geom. levels:
+ kMaxNstrip = 20 // Max. number of strips
};
// DAQ characteristics
static const Int_t fgkTimeDiff; // Min signal separation (ps)
mutable Int_t kNStripC; // number of strips in C type module
- mutable Int_t kMaxNstrip; // Max. number of strips
mutable Float_t kZlenA; // length (cm) of the A module
mutable Float_t kZlenB; // length (cm) of the B module
mutable Float_t kZlenC; // length (cm) of the C module
mutable Float_t kMaxhZtof; // Max half z-size of TOF (cm)
- mutable Float_t kStripLength; // Strip Length (rho X phi direction) (cm)
mutable Float_t fgkRmin; // Inner radius of the TOF (cm)
mutable Float_t fgkRmax; // Outer radius of the TOF (cm)
mutable Float_t fgkxTOF; // Inner TOF Radius used in Reconstruction (cm)
+ static const Float_t fgkStripLength; // Strip Length (rho X phi direction) (cm)
+
static const Float_t fgkXPad; // Pad size in the x direction (cm)
static const Float_t fgkZPad; // Pad size in the z direction (cm)
Bool_t fHoles; //logical for geometry version (w/wo holes)
- Float_t *fAngles[kNPlates]; //Strip Tilt Angles
- Float_t *fHeights[kNPlates];//Strip heights
- Float_t *fDistances[kNPlates];//Strip distances
+ Float_t fAngles[kNPlates][kMaxNstrip]; //Strip Tilt Angles
+ Float_t fHeights[kNPlates][kMaxNstrip]; //Strip heights
+ Float_t fDistances[kNPlates][kMaxNstrip];//Strip distances
Float_t fPhiSec; //sector Phi width (deg)
static const Float_t fgkTdcBin; // time-window for the TDC bins [ps]
- ClassDef(AliTOFGeometry,2) // TOF Geometry base class
+ ClassDef(AliTOFGeometry,3) // TOF Geometry base class
};
#endif
/*
$Log$
+Revision 1.1 2005/12/15 08:55:33 decaro
+New TOF geometry description (V5) -G. Cara Romeo and A. De Caro
+
Revision 0.1 2005/07/19 A. De Caro
Modify Global methods IsInsideThePad & DistanceToPad
according to the PPR TOF geometry
ClassImp(AliTOFGeometryV4)
const Int_t AliTOFGeometryV4::kNStripC = 20; // number of strips in C type module
-const Int_t AliTOFGeometryV4::kMaxNstrip = 20; // Max. number of strips
const Float_t AliTOFGeometryV4::fgkZlenA = 106.0; // length (cm) of the A module
const Float_t AliTOFGeometryV4::fgkZlenB = 141.0; // length (cm) of the B module
const Float_t AliTOFGeometryV4::fgkZlenC = 177.5; // length (cm) of the C module
const Float_t AliTOFGeometryV4::fgkMaxhZtof = 371.5; // Max half z-size of TOF (cm)
-const Float_t AliTOFGeometryV4::fgkStripLength = 122.; // Strip Length (rho X phi direction) (cm)
const Float_t AliTOFGeometryV4::fgkDeadBndX = 1.0; // Dead Boundaries of a Strip along X direction (length) (cm)
const Float_t AliTOFGeometryV4::fgkDeadBndZ = 1.5; // Dead Boundaries of a Strip along Z direction (width) (cm)
//
AliTOFGeometry::kNStripC = kNStripC; // number of strips in C type module
- AliTOFGeometry::kMaxNstrip = kMaxNstrip; // Max. number of strips
AliTOFGeometry::kZlenA = fgkZlenA; // length (cm) of the A module
AliTOFGeometry::kZlenB = fgkZlenB; // length (cm) of the B module
AliTOFGeometry::kZlenC = fgkZlenC; // length (cm) of the C module
AliTOFGeometry::kMaxhZtof = fgkMaxhZtof; // Max half z-size of TOF (cm)
- AliTOFGeometry::kStripLength = fgkStripLength; // Strip Length (rho X phi direction) (cm)
AliTOFGeometry::fgkxTOF = fgkxTOF; // Inner radius of the TOF for Reconstruction (cm)
AliTOFGeometry::fgkRmin = fgkRmin; // Inner radius of the TOF (cm)
// Deposit in fAngles, fHeights
- for (Int_t iplate = 0; iplate < kNPlates; iplate++) AliTOFGeometry::fAngles[iplate] = new Float_t[kMaxNstrip];
- for (Int_t iplate = 0; iplate < kNPlates; iplate++) AliTOFGeometry::fHeights[iplate] = new Float_t[kMaxNstrip];
-
for (Int_t iplate = 0; iplate < kNPlates; iplate++) {
for (Int_t istrip = 0; istrip < kMaxNstrip; istrip++) {
AliTOFGeometry::fAngles[iplate][istrip] = kangles[iplate][istrip];
Float_t GetMinStripTheta(Int_t iPlate, Int_t iStrip);
Float_t GetMaxStripTheta(Int_t iPlate, Int_t iStrip);
Float_t GetStripTheta(Int_t iPlate, Int_t iStrip);
- //Float_t GetAngles(Int_t iplate, Int_t istrip) const {return fAngles[iplate][istrip];};
- //Float_t GetHeights(Int_t iplate, Int_t istrip) const {return fHeights[iplate][istrip];};
Float_t NStirpC() { return kNStripC;};
- Int_t NMaxNstrip() { return kMaxNstrip;};
Int_t NPadXSector() { return (AliTOFGeometry::kNStripA + 2*AliTOFGeometry::kNStripB +
2*kNStripC)*AliTOFGeometry::kNpadX*AliTOFGeometry::kNpadZ;};
Float_t ZlenB() { return fgkZlenB;};
Float_t ZlenC() { return fgkZlenC;};
Float_t MaxhZtof() { return fgkMaxhZtof;};
- Float_t StripLength() { return fgkStripLength;};
static Float_t DeadBndX() { return fgkDeadBndX;};
static Float_t DeadBndZ() { return fgkDeadBndZ;};
//private:
static const Int_t kNStripC; // number of strips in C type module
- static const Int_t kMaxNstrip; // Max. number of strips
static const Float_t fgkZlenA; // length (cm) of the A module
static const Float_t fgkZlenB; // length (cm) of the B module
static const Float_t fgkZlenC; // length (cm) of the C module
static const Float_t fgkMaxhZtof; // Max half z-size of TOF (cm)
- static const Float_t fgkStripLength; // Strip Length (rho X phi direction) (cm)
static const Float_t fgkRmin; // Inner radius of the TOF (cm)
static const Float_t fgkRmax; // Outer radius of the TOF (cm)
static const Float_t fgkDprecMax;//num.prec.tolerance on Thma
static const Float_t fgkDprecCen;//num.prec.tolerance on <Theta>
- //Float_t *fAngles[kNPlates]; //Strip Tilt Angles
- //Float_t *fHeights[kNPlates];//Strip heights
-
- ClassDef(AliTOFGeometryV4,0) // TOF Geometry class
+ ClassDef(AliTOFGeometryV4,1) // TOF Geometry class
};
#endif
/*
$Log$
+Revision 1.1 2005/12/15 08:55:33 decaro
+New TOF geometry description (V5) -G. Cara Romeo and A. De Caro
+
Revision 0.1 2005/07/19 G. Cara Romeo and A. De Caro
Modify Global methods IsInsideThePad & DistanceToPad
according to the new TOF geometry
ClassImp(AliTOFGeometryV5)
const Int_t AliTOFGeometryV5::kNStripC = 19; // number of strips in C type module
-const Int_t AliTOFGeometryV5::kMaxNstrip = 19; // Max. number of strips
const Float_t AliTOFGeometryV5::fgkZlenA = 370.6*2.; // length (cm) of the A module
const Float_t AliTOFGeometryV5::fgkZlenB = 146.5; // length (cm) of the B module
const Float_t AliTOFGeometryV5::fgkZlenC = 170.45; // length (cm) of the C module
const Float_t AliTOFGeometryV5::fgkMaxhZtof = 370.6; // Max half z-size of TOF (cm)
-const Float_t AliTOFGeometryV5::fgkStripLength = 124.; // Strip Length (rho X phi direction) (cm)
const Float_t AliTOFGeometryV5::fgkxTOF = 371.-0.01;// Inner radius of the TOF for Reconstruction (cm)
const Float_t AliTOFGeometryV5::fgkRmin = 370.-0.01;// Inner radius of the TOF (cm)
//
AliTOFGeometry::kNStripC = kNStripC; // number of strips in C type module
- AliTOFGeometry::kMaxNstrip = kMaxNstrip; // Max. number of strips
AliTOFGeometry::kZlenA = fgkZlenA; // length of the TOF supermodule (cm)
AliTOFGeometry::kZlenB = fgkZlenB; // length of the B module (cm)
AliTOFGeometry::kZlenC = fgkZlenC; // length of the C module (cm)
AliTOFGeometry::kMaxhZtof = fgkMaxhZtof; // Max half z-size of TOF supermodule (cm)
- AliTOFGeometry::kStripLength = fgkStripLength; // Strip Length (rho X phi direction) (cm)
AliTOFGeometry::fgkxTOF = fgkxTOF; // Inner radius of the TOF for Reconstruction (cm)
AliTOFGeometry::fgkRmin = fgkRmin; // Inner radius of the TOF (cm)
Float_t const kangles[kNPlates][kMaxNstrip] ={
{ 43.99, 43.20, 42.40, 41.59, 40.77, 39.94, 39.11, 38.25, 37.40, 36.53,
- 35.65, 34.76, 33.87, 32.96, 32.05, 31.13, 30.19, 29.24, 12.33},
+ 35.65, 34.76, 33.87, 32.96, 32.05, 31.13, 30.19, 29.24, 12.33, 0.00},
{ 27.26, 26.28, 25.30, 24.31, 23.31, 22.31, 21.30, 20.29, 19.26, 18.24,
- 17.20, 16.16, 15.11, 14.05, 13.00, 11.93, 10.87, 9.80, 8.74},
+ 17.20, 16.16, 15.11, 14.05, 13.00, 11.93, 10.87, 9.80, 8.74, 0.00},
{ 0.00, 6.30, 5.31, 4.25, 3.19, 2.12, 1.06, 0.00, -1.06, -2.12,
- -3.19, -4.25, -5.31, -6.30, 0.00, 0.00, 0.00, 0.00, 0.00},
+ -3.19, -4.25, -5.31, -6.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00},
{ -8.74, -9.80, -10.87, -11.93, -13.00, -14.05, -15.11, -16.16, -17.20, -18.24,
- -19.26, -20.29, -21.30, -22.31, -23.31, -24.31, -25.30, -26.28, -27.26},
+ -19.26, -20.29, -21.30, -22.31, -23.31, -24.31, -25.30, -26.28, -27.26, 0.00},
{-12.33, -29.24, -30.19, -31.13, -32.05, -32.96, -33.87, -34.76, -35.65, -36.53,
- -37.40, -38.25, -39.11, -39.94, -40.77, -41.59, -42.40, -43.20, -43.99}
+ -37.40, -38.25, -39.11, -39.94, -40.77, -41.59, -42.40, -43.20, -43.99, 0.00}
};
Float_t const kheights[kNPlates][kMaxNstrip]= {
{-8.2, -7.5, -8.2, -7.7, -8.1, -7.6, -7.7, -7.7, -7.7, -7.7,
- -7.5, -7.2, -7.3, -7.5, -7.6, -7.8, -8.3, -9.3, -3.1},
+ -7.5, -7.2, -7.3, -7.5, -7.6, -7.8, -8.3, -9.3, -3.1, 0.0},
{-7.9, -8.1, -8.5, -9.0, -10.1, -3.9, -5.9, -7.7, -10.1, -3.6,
- -5.8, -8.0, -10.4, -4.4, -7.2, -10.2, -4.6, -7.4, -10.4},
+ -5.8, -8.0, -10.4, -4.4, -7.2, -10.2, -4.6, -7.4, -10.4, 0.0},
{-2.5, -10.4, -5.0, -9.9, -4.8, -9.9, -4.7, -10.2, -4.7, -9.9,
- -4.8, -9.9, -5.0, -10.4, -2.5, 0.0, 0.0, 0.0, 0.0},
+ -4.8, -9.9, -5.0, -10.4, -2.5, 0.0, 0.0, 0.0, 0.0, 0.0},
{-10.4, -7.4, -4.6, -10.2, -7.2, -4.4, -10.4, -8.0, -5.8, -3.6,
- -10.1, -7.7, -5.9, -3.9, -10.1, -9.0, -8.5, -8.1, -7.9},
+ -10.1, -7.7, -5.9, -3.9, -10.1, -9.0, -8.5, -8.1, -7.9, 0.0},
{ -3.1, -9.3, -8.3, -7.8, -7.6, -7.5, -7.3, -7.2, -7.5, -7.7,
- -7.7, -7.7, -7.7, -7.6, -8.1, -7.7, -8.2, -7.5, -8.2}
+ -7.7, -7.7, -7.7, -7.6, -8.1, -7.7, -8.2, -7.5, -8.2, 0.0}
};
Float_t const kdistances[kNPlates][kMaxNstrip]= {
{ 364.1, 354.9, 344.5, 335.4, 325.5, 316.6, 307.2, 298.0, 288.9, 280.0,
- 271.3, 262.7, 254.0, 244.8, 236.1, 227.7, 219.1, 210.3, 205.7},
+ 271.3, 262.7, 254.0, 244.8, 236.1, 227.7, 219.1, 210.3, 205.7, 0.0},
{ 194.2, 186.1, 177.9, 169.8, 161.5, 156.3, 147.8, 139.4, 130.9, 125.6,
- 117.3, 109.2, 101.1, 95.3, 87.1, 79.2, 73.0, 65.1, 57.6},
+ 117.3, 109.2, 101.1, 95.3, 87.1, 79.2, 73.0, 65.1, 57.6, 0.0},
{ 49.5, 41.3, 35.3, 27.8, 21.2, 13.9, 7.0, 0.0, -7.0, -13.9,
- -21.2, -27.8, -35.3, -41.3, -49.5, 0.0, 0.0, 0.0, 0.0},
+ -21.2, -27.8, -35.3, -41.3, -49.5, 0.0, 0.0, 0.0, 0.0, 0.0},
{ -57.6, -65.1, -73.0, -79.2, -87.1, -95.3, -101.1, -109.2, -117.3, -125.6,
- -130.9, -139.4, -147.8, -156.3, -161.5, -169.8, -177.9, -186.1, -194.2},
+ -130.9, -139.4, -147.8, -156.3, -161.5, -169.8, -177.9, -186.1, -194.2, 0.0},
{-205.7, -210.3, -219.1, -227.7, -236.1, -244.8, -254.0, -262.7, -271.3, -280.0,
- -288.9, -298.0, -307.2, -316.6, -325.5, -335.4, -344.5, -354.9, -364.1}
+ -288.9, -298.0, -307.2, -316.6, -325.5, -335.4, -344.5, -354.9, -364.1, 0.0}
};
- for (Int_t iplate = 0; iplate < kNPlates; iplate++) AliTOFGeometry::fAngles[iplate] = new Float_t[kMaxNstrip];
- for (Int_t iplate = 0; iplate < kNPlates; iplate++) AliTOFGeometry::fHeights[iplate] = new Float_t[kMaxNstrip];
- for (Int_t iplate = 0; iplate < kNPlates; iplate++) AliTOFGeometry::fDistances[iplate] = new Float_t[kMaxNstrip];
-
for (Int_t iplate = 0; iplate < kNPlates; iplate++) {
for (Int_t istrip = 0; istrip < kMaxNstrip; istrip++) {
AliTOFGeometry::fAngles[iplate][istrip] = kangles[iplate][istrip];
Float_t GetPadDx(Float_t *pos);
Float_t GetPadDy(Float_t *pos);
Float_t GetPadDz(Float_t *pos);
- //Float_t GetAngles(Int_t iplate, Int_t istrip) const {return fAngles[iplate][istrip];};
- //Float_t GetHeights(Int_t iplate, Int_t istrip) const {return fHeights[iplate][istrip];};
- //Float_t GetDistances(Int_t iplate, Int_t istrip) const {return fDistances[iplate][istrip];};
Float_t NStirpC() { return kNStripC;};
- Int_t NMaxNstrip() { return kMaxNstrip;};
Int_t NPadXSector() { return (AliTOFGeometry::kNStripA + 2*AliTOFGeometry::kNStripB +
2*kNStripC)*AliTOFGeometry::kNpadX*AliTOFGeometry::kNpadZ;};
Float_t ZlenB() { return fgkZlenB;};
Float_t ZlenC() { return fgkZlenC;};
Float_t MaxhZtof() { return fgkMaxhZtof;};
- Float_t StripLength() { return fgkStripLength;};
void Translation(Float_t *xyz, Float_t translationVector[3]);
void Rotation(Float_t *xyz, Double_t rotationAngles[6]);
//private:
static const Int_t kNStripC; // number of strips in C type module
- static const Int_t kMaxNstrip; // Max. number of strips
static const Float_t fgkZlenA; // length (cm) of the A module
static const Float_t fgkZlenB; // length (cm) of the B module
static const Float_t fgkZlenC; // length (cm) of the C module
static const Float_t fgkMaxhZtof; // Max half z-size of TOF (cm)
- static const Float_t fgkStripLength; // Strip Length (rho X phi direction) (cm)
static const Float_t fgkRmin; // Inner radius of the TOF (cm)
static const Float_t fgkRmax; // Outer radius of the TOF (cm)
static const Float_t fgkxTOF; // Inner TOF Radius used in Reconstruction (cm)
- Bool_t fHoles; //logical for geometry version (w/wo holes)
-
- //Float_t *fAngles[kNPlates];//Strip tilt angles
- //Float_t *fHeights[kNPlates];//Strip heights
- //Float_t *fDistances[kNPlates];//Strip distances
-
- ClassDef(AliTOFGeometryV5,0) // TOF Geometry class
+ ClassDef(AliTOFGeometryV5,1) // TOF Geometry class
};
#endif
/*
$Log$
+Revision 1.2 2006/02/27 18:12:14 decaro
+Remove in StepManager the dependence of hit indexes from parametrized TOF position
+
Revision 1.1 2005/12/15 08:55:33 decaro
New TOF geometry description (V5) -G. Cara Romeo and A. De Caro
if(
gMC->IsTrackEntering()
&& gMC->TrackCharge()
- && gMC->GetMedium()==idtmed[508]
+ //&& gMC->GetMedium()==idtmed[508]
+ && gMC->CurrentMedium()==idtmed[508]
&& gMC->CurrentVolID(copy)==fIdSens
)
{