#include "AliSimDigits.h"
#include "AliTPCParam.h"
#include "AliTPC.h"
+#include "AliTPCLoader.h"
#include "AliDetector.h"
#include "AliTrackReference.h"
#include "AliRun.h"
#include "AliTPCParamSR.h"
#include "AliTracker.h"
#include "AliComplexCluster.h"
-#include "AliTPCComparisonMI.h"
+#include "AliMagF.h"
#endif
+#include "AliTPCComparisonMI.h"
{
fMCInfo = new AliTPCGenInfo;
fMCInfo->fReferences = new TClonesArray("AliTrackReference");
+
Reset();
}
fEventNr = nall-firstEvent;
cerr<<"restricted number of events availaible"<<endl;
}
+ AliMagF * magf = gAlice->Field();
+ AliTracker::SetFieldMap(magf);
}
////////////////////////////////////////////////////////////////////////
//
CreateTreeGenTracks();
if (!fTreeGenTracks) return 1;
- AliTracker::SetFieldFactor();
+ // AliTracker::SetFieldFactor();
+
fParamTPC = GetTPCParam();
//
return 0;
fEventNr = nall-firstEvent;
cerr<<"restricted number of events availaible"<<endl;
}
+ AliMagF * magf = gAlice->Field();
+ AliTracker::SetFieldMap(magf);
+
}
//
CreateTreeCmp();
if (!fTreeCmp) return 1;
- AliTracker::SetFieldFactor();
fParamTPC = GetTPCParam();
//
if (!ConnectGenTree()) {
Double_t localX = local.X();
fTPCTrack->GetExternalParameters(localX,par);
fRecInfo->fRecPhi=TMath::ASin(par[2]) + fTPCTrack->GetAlpha();
- if (fRecInfo->fRecPhi<0) fRecInfo->fRecPhi+=2*kPI;
- if (fRecInfo->fRecPhi>=2*kPI) fRecInfo->fRecPhi-=2*kPI;
+ if (fRecInfo->fRecPhi<0) fRecInfo->fRecPhi+=2*TMath::Pi();
+ if (fRecInfo->fRecPhi>=2*TMath::Pi()) fRecInfo->fRecPhi-=2*TMath::Pi();
// fRecInfo->fRecPhi = (fRecInfo->fRecPhi)*kRaddeg;
fRecInfo->fLambda = TMath::ATan(par[3]);
fRecInfo->fRecPt_1 = TMath::Abs(par[4]);
p2->cd();
p2->Draw();
TH1F* his2 = new TH1F("Ptresolution","Ptresolution",40,-5.,5.);
- fTree->Draw("100.*(abs(1./fTPCTrack.Get1Pt())-MC.fTrackRef.Pt())/MC.fTrackRef.Pt()>>Ptresolution","MC.fRowsWithDigits>100&&RC.fTPCTrack.fN>50&&RC.fMultiple==1"+cteta1+cpos1+cprim);
+ fTree->Draw("100.*(fTPCTrack.Pt()-MC.fTrackRef.Pt())/MC.fTrackRef.Pt()>>Ptresolution","MC.fRowsWithDigits>100&&RC.fTPCTrack.fN>50&&RC.fMultiple==1"+cteta1+cpos1+cprim);
AliLabelAxes(his2, "#Delta p_{t} / p_{t} [%]", "entries");
his2->Fit("gaus");
his2->Draw();
Double_t maxRes = 10.;
TH2F* hRes2 = new TH2F("hRes2", "residuals", nBins, bins, nBinsRes, -maxRes, maxRes);
- fTree->Draw("100.*(abs(1./fTPCTrack.Get1Pt())-MC.fTrackRef.Pt())/MC.fTrackRef.Pt():MC.fTrackRef.Pt()>>hRes2", selection, "groff");
+ fTree->Draw("100.*(fTPCTrack.Pt()-MC.fTrackRef.Pt())/MC.fTrackRef.Pt():MC.fTrackRef.Pt()>>hRes2", selection, "groff");
TH1F* hMean=0;
TH1F* hRes = CreateResHisto(hRes2, &hMean);
Double_t maxRes = 10.;
TH2F* hRes2 = new TH2F("hRes2", "residuals", nBins, bins, nBinsRes, -maxRes, maxRes);
- fTree->Draw("100.*(1./fTPCTrack.Get1Pt()-MC.fTrackRef.Pt())/MC.fTrackRef.Pt():MC.fTrackRef.Pt()>>hRes2", selection, "groff");
+ fTree->Draw("100.*(fTPCTrack.Pt()-MC.fTrackRef.Pt())/MC.fTrackRef.Pt():MC.fTrackRef.Pt()>>hRes2", selection, "groff");
TH1F* hMean=0;
TH1F* hRes = CreateResHisto(hRes2, &hMean);
if (drawBinFits) canBinFits->cd(bin + dBin);
TH1D* hBin = hRes2->ProjectionY("hBin", bin, bin);
//
- if (hBin->GetEntries() > 10) {
+ if (hBin->GetEntries() > 5) {
fitFunc->SetParameters(hBin->GetMaximum(),hBin->GetMean(),hBin->GetRMS());
hBin->Fit(fitFunc,"s");
Double_t sigma = TMath::Abs(fitFunc->GetParameter(2));