fLowRunN =136851;
fHighRunN=139517;
- for (Int_t i=0; i<(fHighRunN-fLowRunN); i++) {
+ for (Int_t i=0; i < 2667; i++) {
V0MScaleFactor[i]=0.0;
SPDScaleFactor[i]=0.0;
TPCScaleFactor[i]=0.0;
AliInfo("Centrality Selection enabled.");
DefineOutput(1, TList::Class());
- for (Int_t i=0; i<(fHighRunN-fLowRunN); i++) {
+ for (Int_t i=0; i<2667; i++) {
V0MScaleFactor[i]=0.0;
SPDScaleFactor[i]=0.0;
TPCScaleFactor[i]=0.0;
fHOutVertex(ana.fHOutVertex)
{
// Copy Constructor
+ for (Int_t i=0; i<2667; i++) {
+ V0MScaleFactor[i]=0.0;
+ SPDScaleFactor[i]=0.0;
+ TPCScaleFactor[i]=0.0;
+ V0MScaleFactorMC[i]=0.0;
+ }
+
}
//________________________________________________________________________
if(fHtempV0MvsFMD) fCentV0MvsFMD = fHtempV0MvsFMD->GetBinContent(fHtempV0MvsFMD->FindBin((multV0A+multV0C)));
if(fHtempTKLvsV0M) fCentTKLvsV0M = fHtempTKLvsV0M->GetBinContent(fHtempTKLvsV0M->FindBin(nTracklets));
- if(fHtempZEMvsZDC) fCentZEMvsZDC = fHtempZEMvsZDC->GetBinContent(fHtempZEMvsZDC->FindBin((zem1Energy+zem2Energy)/1000.));
-
+ if(fHtempZEMvsZDC) fCentZEMvsZDC = fHtempZEMvsZDC->GetBinContent(fHtempZEMvsZDC->FindBin(zem1Energy+zem2Energy,zncEnergy+znaEnergy+zpcEnergy+zpaEnergy));
// ***** Cleaning
fQuality=0;
if (IsOutlierV0MTPC(nTracks, v0Corr, int(fCentV0M))) fQuality += 4;
// ***** V0 vs ZDC
if (IsOutlierV0MZDC((zncEnergy+znaEnergy+zpcEnergy+zpaEnergy), v0Corr) &&
- (zdcEnergyCal=kFALSE)) fQuality += 8;
+ (zdcEnergyCal==kFALSE)) fQuality += 8;
if (esdCent) {
esdCent->SetQuality(fQuality);
owd->cd();
fHtempV0MvsFMD = (TH1F*) (fFile2->Get("hmultV0vsmultFMD_all_percentile"));
fHtempTKLvsV0M = (TH1F*) (fFile2->Get("hNtrackletsvsmultV0_all_percentile"));
- fHtempZEMvsZDC = (TH1F*) (fFile2->Get("hEzemvsEzdc_all_percentile"));
+ fHtempZEMvsZDC = (TH2F*) (fFile2->Get("hEzemvsEzdc_all_percentile"));
if (!fHtempV0MvsFMD) AliWarning(Form("Calibration for V0MvsFMD does not exist in %s", path.Data()));
if (!fHtempTKLvsV0M) AliWarning(Form("Calibration for TKLvsV0M does not exist in %s", path.Data()));
//________________________________________________________________________
Bool_t AliCentralitySelectionTask::IsOutlierV0MSPD(Float_t spd, Float_t v0, Int_t cent)
{
- TF1 *V0MSPDfun = new TF1("V0MSPDfun","-0.143789+ 0.288874*x",0,25000);
+ Float_t val= -0.143789 + 0.288874 * v0;
Float_t SPDsigma[100]={231.483, 189.446, 183.359, 179.923, 174.229, 170.309, 165.021,
160.84, 159.33, 154.453, 151.644, 148.337, 145.215, 142.353,
139.351, 136, 133.838, 129.885, 127.36, 125.032, 122.21, 120.3,
15.7185, 15.3006, 14.7432, 14.4174, 14.0805, 13.7638, 13.7638,
13.7638, 13.7638, 13.7638, 13.7638, 13.7638, 13.7638, 13.7638, 18.0803};
- if ( TMath::Abs(spd-V0MSPDfun->Eval(v0)) > fOutliersCut*SPDsigma[cent] )
+ if ( TMath::Abs(spd-val) > fOutliersCut*SPDsigma[cent] )
return kTRUE;
else
return kFALSE;
//________________________________________________________________________
Bool_t AliCentralitySelectionTask::IsOutlierV0MTPC(Int_t tracks, Float_t v0, Int_t cent)
{
- TF1 *V0MTPCfun = new TF1("V0MTPCfun","-0.540691+0.128358*x",0,25000);
+ Float_t val = -0.540691 + 0.128358 * v0;
Float_t TPCsigma[100]={106.439, 89.2834, 86.7568, 85.3641, 83.379, 81.6093, 79.3189,
78.0616, 77.2167, 75.0021, 73.9957, 72.0926, 71.0442, 69.8395,
68.1169, 66.6676, 66.0038, 64.2284, 63.3845, 61.7439, 60.642,
8.67375, 8.43029, 8.34818, 8.33484, 8.40709, 8.3974, 8.32814,
8.32814, 8.32814, 8.32814, 8.32814, 8.32814, 8.32814, 8.32814, 8.32814, 12.351};
- if ( TMath::Abs(tracks-V0MTPCfun->Eval(v0)) > fOutliersCut*TPCsigma[cent] )
+ if ( TMath::Abs(tracks-val) > fOutliersCut*TPCsigma[cent] )
return kTRUE;
else
return kFALSE;
//________________________________________________________________________
Bool_t AliCentralitySelectionTask::IsOutlierV0MZDC(Float_t zdc, Float_t v0)
{
- TF1 *fun1 = new TF1("fun1","6350-0.26*x",0,25000);
- TF1 *fun2 = new TF1("fun2","5580",0,25000);
-
- if ( (zdc > fun1->Eval(v0)) || (zdc > fun2->Eval(v0)) )
+ Float_t val1 = 6350. - 0.26 * v0;
+ Float_t val2 = 5580.;
+ if ((zdc > val1) || (zdc > val2))
return kTRUE;
else
return kFALSE;