fPhiModuleSize = 12.26 - fPhiGapForSM / Float_t(fNPhi); // first assumption
fEtaModuleSize = fPhiModuleSize;
+ fZLength = 700.; // Z coverage (cm)
+
+
//needs to be called for each geometry and before setting geometry
//parameters which can depend on the outcome
CheckAdditionalOptions();
fLongModuleSize = fNECLayers*(fECScintThick + fECPbRadThickness);
f2Trd1Dx2 = fEtaModuleSize + 2.*fLongModuleSize*TMath::Tan(fTrd1Angle*TMath::DegToRad()/2.);
if(!fGeoName.Contains("WSUC")) fShellThickness = TMath::Sqrt(fLongModuleSize*fLongModuleSize + f2Trd1Dx2*f2Trd1Dx2);
-
- fZLength = 2.*ZFromEtaR(fIPDistance+fShellThickness,fArm1EtaMax); // Z coverage
- fEnvelop[0] = fIPDistance; // mother volume inner radius
- fEnvelop[1] = fIPDistance + fShellThickness; // mother volume outer r.
- fEnvelop[2] = 1.00001*fZLength; // add some padding for mother volume.
+
+ //These parameters are used to create the mother volume to hold the supermodules
+ //2cm padding added to allow for misalignments - JLK 30-May-2008
+ fEnvelop[0] = fIPDistance - 1.; // mother volume inner radius
+ fEnvelop[1] = fIPDistance + fShellThickness + 1.; // mother volume outer r.
+ fEnvelop[2] = fZLength + 2.; //mother volume length
// Local coordinates
fParSM[0] = GetShellThickness()/2.;
fParSM[1] = GetPhiModuleSize() * GetNPhi()/2.;
- fParSM[2] = 350./2.;
+ fParSM[2] = fZLength/4.; //divide by 4 to get half-length of SM
// SM phi boundaries - (0,1),(2,3) .. (10,11) - has the same boundaries; Nov 7, 2006
fPhiBoundariesOfSM.Set(fNumberOfSuperModules);
fEnvelop1[1] = geom->GetArm1PhiMax() - geom->GetArm1PhiMin(); // angular range in phi
fEnvelop1[2] = geom->GetNPhiSuperModule();
fEnvelop1[3] = 2; // 2 z coordinates
- fEnvelop1[4] = -350.;
+ fEnvelop1[4] = -geom->GetEnvelop(2)/2.; //zmin
fEnvelop1[5] = geom->GetEnvelop(0) ; // rmin at z1
fEnvelop1[6] = geom->GetEnvelop(1) ; // rmax at z1
- fEnvelop1[7] = 350.;
+ fEnvelop1[7] = geom->GetEnvelop(2)/2.; //zmax
fEnvelop1[8] = fEnvelop1[5] ; // radii are the same.
fEnvelop1[9] = fEnvelop1[6] ; // radii are the same.
}
envelopA[1] = geom->GetArm1PhiMax() - geom->GetArm1PhiMin(); // angular range in phi
envelopA[2] = geom->GetNPhiSuperModule(); // number of sections in phi
envelopA[3] = 2; // 2 z coordinates
- // envelopA[4] = geom->ZFromEtaR(geom->GetEnvelop(1),
- //geom->GetArm1EtaMin()); // z coordinate 1
- envelopA[4] = -350.; // AM 30/5/2006
-
- //add some padding for mother volume
- envelopA[5] = geom->GetEnvelop(0) ; // rmin at z1
- envelopA[6] = geom->GetEnvelop(1) ; // rmax at z1
- // envelopA[7] = geom->ZFromEtaR(geom->GetEnvelop(1),
- // geom->GetArm1EtaMax()); // z coordinate 2
- envelopA[7] = 350.; // AM 30/5/2006
+ envelopA[4] = -geom->GetEnvelop(2)/2.; // zmin - includes padding
+ envelopA[5] = geom->GetEnvelop(0) ; // rmin at z1 - includes padding
+ envelopA[6] = geom->GetEnvelop(1) ; // rmax at z1 - includes padding
+ envelopA[7] = geom->GetEnvelop(2)/2.; // zmax includes padding
envelopA[8] = envelopA[5] ; // radii are the same.
envelopA[9] = envelopA[6] ; // radii are the same.