break;
}
+ case kSDMv6:
+ {
+ //Based on fit to the MC/data using kNoCorrection on the data
+ // - utilizes symmetric decay method and kPi0MCv6(MC) - 09 Dec 2014
+ // - parameters constrained by the test beam data as well
+ // described in the note: https://aliceinfo.cern.ch/Notes/node/211 - Sec 3.1.2 (Test Beam Constrained SDM).
+ //fNonLinearityParams[0] = 1.0;
+ //fNonLinearityParams[1] = 0.237767;
+ //fNonLinearityParams[2] = 0.651203;
+ //fNonLinearityParams[3] = 0.183741;
+ //fNonLinearityParams[4] = 155.427;
+ //fNonLinearityParams[5] = 17.0335;
+ //fNonLinearityParams[6] = 0.987054;
+ energy *= fNonLinearityParams[6]/(fNonLinearityParams[0]*(1./(1.+fNonLinearityParams[1]*exp(-energy/fNonLinearityParams[2]))*1./(1.+fNonLinearityParams[3]*exp((energy-fNonLinearityParams[4])/fNonLinearityParams[5]))));
+
+ break;
+ }
+
+ case kPi0MCv6:
+ {
+ //Based on comparing MC truth information to the reconstructed energy of clusters.
+ // described in the note: https://aliceinfo.cern.ch/Notes/node/211 - Sec 3.1.2 (Test Beam Constrained SDM).
+ //fNonLinearityParams[0] = 1.0;
+ //fNonLinearityParams[1] = 0.0797873;
+ //fNonLinearityParams[2] = 1.68322;
+ //fNonLinearityParams[3] = 0.0806098;
+ //fNonLinearityParams[4] = 244.586;
+ //fNonLinearityParams[5] = 116.938;
+ //fNonLinearityParams[6] = 1.00437;
+ energy *= fNonLinearityParams[6]/(fNonLinearityParams[0]*(1./(1.+fNonLinearityParams[1]*exp(-energy/fNonLinearityParams[2]))*1./(1.+fNonLinearityParams[3]*exp((energy-fNonLinearityParams[4])/fNonLinearityParams[5]))));
+
+ break;
+ }
+
case kNoCorrection:
AliDebug(2,"No correction on the energy\n");
break;
fNonLinearityParams[6] = 1.01286;
}
+ if (fNonLinearityFunction == kSDMv6) {
+ fNonLinearityParams[0] = 1.0;
+ fNonLinearityParams[1] = 0.237767;
+ fNonLinearityParams[2] = 0.651203;
+ fNonLinearityParams[3] = 0.183741;
+ fNonLinearityParams[4] = 155.427;
+ fNonLinearityParams[5] = 17.0335;
+ fNonLinearityParams[6] = 0.987054;
+ }
+
+ if (fNonLinearityFunction == kPi0MCv6) {
+ fNonLinearityParams[0] = 1.0;
+ fNonLinearityParams[1] = 0.0797873;
+ fNonLinearityParams[2] = 1.68322;
+ fNonLinearityParams[3] = 0.0806098;
+ fNonLinearityParams[4] = 244.586;
+ fNonLinearityParams[5] = 116.938;
+ fNonLinearityParams[6] = 1.00437;
+ }
+
}
//_________________________________________________________
void Print(const Option_t*) const;
//enums
- enum NonlinearityFunctions{kPi0MC=0,kPi0GammaGamma=1,kPi0GammaConversion=2,kNoCorrection=3,kBeamTest=4,kBeamTestCorrected=5,kPi0MCv2=6,kPi0MCv3=7,kBeamTestCorrectedv2=8,kSDMv5=9,kPi0MCv5=10};
+ enum NonlinearityFunctions{ kPi0MC = 0, kPi0GammaGamma = 1,
+ kPi0GammaConversion = 2, kNoCorrection = 3,
+ kBeamTest= 4, kBeamTestCorrected = 5,
+ kPi0MCv2 = 6, kPi0MCv3 = 7,
+ kBeamTestCorrectedv2 = 8,
+ kSDMv5 = 9, kPi0MCv5 = 10,
+ kSDMv6 =11, kPi0MCv6 = 12};
+
enum PositionAlgorithms{kUnchanged=-1,kPosTowerIndex=0, kPosTowerGlobal=1};
enum ParticleType{kPhoton=0, kElectron=1,kHadron =2, kUnknown=-1};
enum { kNCuts = 12 }; //track matching Marcel