Float_t sxmgmx = gAlice->Field()->Max() ;
// Air -> idtmed[1599]
- AliMedium(0, "Air $", 0, 0,
+ AliMedium(0, "Air$", 0, 0,
isxfld, sxmgmx, 10.0, 1.0, 0.1, 0.1, 10.0, 0, 0) ;
// The Lead -> idtmed[1600]
- AliMedium(1, "Lead $", 1, 0,
+ AliMedium(1, "Lead$", 1, 0,
isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
// The scintillator of the CPV made of Polystyrene scintillator -> idtmed[1601]
- AliMedium(2, "CPV scint. $", 2, 1,
+ AliMedium(2, "Scintillator$", 2, 1,
isxfld, sxmgmx, 10.0, 0.001, 0.1, 0.001, 0.001, 0, 0) ;
// Various Aluminium parts made of Al -> idtmed[1602]
- AliMedium(3, "Al parts $", 3, 0,
+ AliMedium(3, "Al$", 3, 0,
isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.001, 0.001, 0, 0) ;
// 25-aug-04 by PAI : see PMD/AliPMDv0.cxx for STEEL definition -> idtmed[1603]
// --- Set decent energy thresholds for gamma and electron tracking
// Tracking threshold for photons and electrons in Lead
- gMC->Gstpar(idtmed[1600],"CUTGAM",0.00008) ;
- gMC->Gstpar(idtmed[1600],"CUTELE",0.001) ;
- gMC->Gstpar(idtmed[1600],"BCUTE",0.0001) ;
+ Float_t cutgam=10.e-5; // 100 kev;
+ Float_t cutele=10.e-5; // 100 kev;
+ TString ntmp(GetTitle());
+ ntmp.ToUpper();
+ if(ntmp.Contains("10KEV")) {
+ cutele = cutgam = 1.e-5;
+ } else if(ntmp.Contains("50KEV")) {
+ cutele = cutgam = 5.e-5;
+ } else if(ntmp.Contains("100KEV")) {
+ cutele = cutgam = 1.e-4;
+ } else if(ntmp.Contains("200KEV")) {
+ cutele = cutgam = 2.e-4;
+ } else if(ntmp.Contains("500KEV")) {
+ cutele = cutgam = 5.e-4;
+ }
+ gMC->Gstpar(idtmed[1600],"CUTGAM", cutgam);
+ gMC->Gstpar(idtmed[1600],"CUTELE", cutele); // 1MEV -> 0.1MEV; 15-aug-05
+ gMC->Gstpar(idtmed[1600],"BCUTE", cutgam); // BCUTE and BCUTM start from GUTGUM
+ gMC->Gstpar(idtmed[1600],"BCUTM", cutgam); // BCUTE and BCUTM start from GUTGUM
// --- Generate explicitly delta rays in Lead ---
gMC->Gstpar(idtmed[1600], "LOSS",3.) ;
gMC->Gstpar(idtmed[1600], "DRAY",1.) ;
- gMC->Gstpar(idtmed[1600], "DCUTE",0.00001) ;
- gMC->Gstpar(idtmed[1600], "DCUTM",0.00001) ;
+ gMC->Gstpar(idtmed[1600], "DCUTE", cutele) ;
+ gMC->Gstpar(idtmed[1600], "DCUTM", cutele) ;
// --- in aluminium parts ---
+ gMC->Gstpar(idtmed[1602],"CUTGAM", cutgam) ;
+ gMC->Gstpar(idtmed[1602],"CUTELE", cutele) ;
+ gMC->Gstpar(idtmed[1602],"BCUTE", cutgam); // BCUTE and BCUTM start from GUTGUM
+ gMC->Gstpar(idtmed[1602],"BCUTM", cutgam); // BCUTE and BCUTM start from GUTGUM
gMC->Gstpar(idtmed[1602], "LOSS",3.) ;
gMC->Gstpar(idtmed[1602], "DRAY",1.) ;
- gMC->Gstpar(idtmed[1602], "DCUTE",0.00001) ;
- gMC->Gstpar(idtmed[1602], "DCUTM",0.00001) ;
+ gMC->Gstpar(idtmed[1602], "DCUTE", cutele) ;
+ gMC->Gstpar(idtmed[1602], "DCUTM", cutele) ;
// --- and finally thresholds for photons and electrons in the scintillator ---
- gMC->Gstpar(idtmed[1601],"CUTGAM",0.00008) ;
- gMC->Gstpar(idtmed[1601],"CUTELE",0.001) ;
- gMC->Gstpar(idtmed[1601],"BCUTE",0.0001) ;
-
- // the same parameters as for Pb - 10-sep-04
- gMC->Gstpar(idtmed[1603],"CUTGAM",0.00008) ;
- gMC->Gstpar(idtmed[1603],"CUTELE",0.001) ;
- gMC->Gstpar(idtmed[1603],"BCUTE", 0.0001);
- // --- Generate explicitly delta rays in Lead ---
+ gMC->Gstpar(idtmed[1601],"CUTGAM", cutgam) ;
+ gMC->Gstpar(idtmed[1601],"CUTELE", cutele) ;// 1MEV -> 0.1MEV; 15-aug-05
+ gMC->Gstpar(idtmed[1601],"BCUTE", cutgam); // BCUTE and BCUTM start from GUTGUM
+ gMC->Gstpar(idtmed[1601],"BCUTM", cutgam); // BCUTE and BCUTM start from GUTGUM
+ gMC->Gstpar(idtmed[1601], "LOSS",3.) ; // generate delta rays
+ gMC->Gstpar(idtmed[1601], "DRAY",1.) ;
+ gMC->Gstpar(idtmed[1601], "DCUTE", cutele) ;
+ gMC->Gstpar(idtmed[1601], "DCUTM", cutele) ;
+
+ // S steel -
+ gMC->Gstpar(idtmed[1603],"CUTGAM", cutgam);
+ gMC->Gstpar(idtmed[1603],"CUTELE", cutele);
+ gMC->Gstpar(idtmed[1603],"BCUTE", cutgam); // BCUTE and BCUTM start from GUTGUM
+ gMC->Gstpar(idtmed[1603],"BCUTM", cutgam); // BCUTE and BCUTM start from GUTGUM
+ // --- Generate explicitly delta rays
gMC->Gstpar(idtmed[1603], "LOSS",3.);
gMC->Gstpar(idtmed[1603], "DRAY",1.);
- gMC->Gstpar(idtmed[1603], "DCUTE",0.00001);
- gMC->Gstpar(idtmed[1603], "DCUTM",0.00001);
+ gMC->Gstpar(idtmed[1603], "DCUTE", cutele) ;
+ gMC->Gstpar(idtmed[1603], "DCUTM", cutele) ;
//set constants for Birk's Law implentation
fBirkC0 = 1;
fArm1EtaMin = -0.7; // pseudorapidity, Starting EMCAL Eta position
fArm1EtaMax = +0.7; // pseudorapidity, Ending EMCAL Eta position
fIPDistance = 454.0; // cm, Radial distance to inner surface of EMCAL
+ fPhiGapForSM = 0.; // cm, only for final TRD1 geometry
// geometry
if (name == "EMCAL_55_25") {
Fatal("Init", "%s is an old geometry! Please update your Config file", name.Data()) ;
}
else if(name.Contains("SHISH")){
- fNumberOfSuperModules = 12; // 12 = 6 * 2 (6 in phi, 2 in Z);
+ // 7-sep-05; integration issue
+ fArm1PhiMin = 80.0; // 60 -> 80
+ fArm1PhiMax = 180.0; // 180 -> 200
+
+ fNumberOfSuperModules = 10; // 12 = 6 * 2 (6 in phi, 2 in Z);
fSteelFrontThick = 2.54; // 9-sep-04
fIPDistance = 460.0;
fFrontSteelStrip = fPassiveScintThick = 0.0; // 13-may-05
// http://pdsfweb01.nersc.gov/~pavlinov/ALICE/SHISHKEBAB/RES/linearityAndResolutionForTRD1.html
if(name.Contains("TRD1")) { // 30-jan-05
// for final design
- if(name.Contains("MAY05") || name.Contains("WSUC")){
+ fPhiGapForSM = 2.; // cm, only for final TRD1 geometry
+ if(name.Contains("MAY05") || name.Contains("WSUC") || name.Contains("FINAL")){
fNumberOfSuperModules = 12; // 20-may-05
if(name.Contains("WSUC")) fNumberOfSuperModules = 1; // 27-may-05
fNECLayers = 77; // (13-may-05 from V.Petrov)
fPassiveScintThick = 0.8; // 0.8cm = 8mm (13-may-05 from V.Petrov)
fNZ = 24;
fTrd1Angle = 1.5; // 1.3 or 1.5
+
+ if(name.Contains("FINAL")) { // 9-sep-05
+ fNumberOfSuperModules = 10;
+ fPhiModuleSize = 12.26 - fPhiGapForSM / Float_t(fNPhi); // first assumption
+ fEtaModuleSize = fPhiModuleSize;
+ }
}
} else if(name.Contains("TRD2")) { // 30-jan-05
fSteelFrontThick = 0.0; // 11-mar-05
if (kTRUE) {
printf("Init: geometry of EMCAL named %s is as follows:\n", name.Data());
- printf( " ECAL : %d x (%f mm Pb, %f mm Sc) \n", GetNECLayers(), GetECPbRadThick(), GetECScintThick() ) ;
+ printf( " ECAL : %d x (%f cm Pb, %f cm Sc) \n", GetNECLayers(), GetECPbRadThick(), GetECScintThick() ) ;
if(name.Contains("SHISH")){
printf(" fIPDistance %6.3f cm \n", fIPDistance);
if(fSteelFrontThick>0.)
if(name.Contains("TRD2")) {
printf(" fTrd2AngleY %7.4f\n", fTrd2AngleY);
printf(" f2Trd2Dy2 %7.4f\n", f2Trd2Dy2);
- printf(" fTubsR %7.2f\n", fTubsR);
+ printf(" fTubsR %7.2f cm\n", fTubsR);
printf(" fTubsTurnAngle %7.4f\n", fTubsTurnAngle);
- printf(" fEmptySpace %7.4f\n", fEmptySpace);
+ printf(" fEmptySpace %7.4f cm\n", fEmptySpace);
+ } else if(name.Contains("TRD1") && name.Contains("FINAL")){
+ printf(" fPhiGapForSM %7.4f cm \n", fPhiGapForSM);
}
}
printf("Granularity: %d in eta and %d in phi\n", GetNZ(), GetNPhi()) ;