// default constructor
}
+//____________________________________________________________________
AliCorrectionMatrix::AliCorrectionMatrix(const Char_t* name, const Char_t* title) : TNamed(name, title),
fhMeas(0),
fhGene(0),
}
//____________________________________________________________________
-AliCorrectionMatrix::AliCorrectionMatrix(const AliCorrectionMatrix& c)
- : TNamed(c)
+AliCorrectionMatrix::AliCorrectionMatrix(const AliCorrectionMatrix& c) : TNamed(c),
+ fhMeas(0),
+ fhGene(0),
+ fhCorr(0)
{
// copy constructor
((AliCorrectionMatrix &)c).Copy(*this);
{
// assigment operator
- if (this != &c)
+ if (this != &c)
((AliCorrectionMatrix &) c).Copy(*this);
return *this;
AliCorrectionMatrix(const Char_t* name, const Char_t* title);
AliCorrectionMatrix(const AliCorrectionMatrix& c);
virtual ~AliCorrectionMatrix();
+ AliCorrectionMatrix& operator=(const AliCorrectionMatrix& corrMatrix);
public:
- AliCorrectionMatrix& operator=(const AliCorrectionMatrix& corrMatrix);
virtual void Copy(TObject& c) const;
virtual Long64_t Merge(TCollection* list);
((AliCorrectionMatrix2D &)c).Copy(*this);
}
+//____________________________________________________________________
+AliCorrectionMatrix2D &AliCorrectionMatrix2D::operator=(const AliCorrectionMatrix2D &c)
+{
+ // assigment operator
+
+ if (this != &c)
+ ((AliCorrectionMatrix2D &) c).Copy(*this);
+
+ return *this;
+}
+
//____________________________________________________________________
AliCorrectionMatrix2D::AliCorrectionMatrix2D(const Char_t* name, const Char_t* title,
Int_t nBinX, Float_t Xmin, Float_t Xmax,
virtual ~AliCorrectionMatrix2D();
+ AliCorrectionMatrix2D& operator= (const AliCorrectionMatrix2D& c);
+
TH2F* GetGeneratedHistogram() const;
TH2F* GetMeasuredHistogram() const;
protected:
ClassDef(AliCorrectionMatrix2D,1)
+
+private:
};
#endif
((AliCorrectionMatrix3D &)c).Copy(*this);
}
+//____________________________________________________________________
+AliCorrectionMatrix3D &AliCorrectionMatrix3D::operator=(const AliCorrectionMatrix3D &c)
+{
+ // assigment operator
+
+ if (this != &c)
+ ((AliCorrectionMatrix3D &) c).Copy(*this);
+
+ return *this;
+}
+
//____________________________________________________________________
AliCorrectionMatrix3D::AliCorrectionMatrix3D(const Char_t* name, const Char_t* title,
Int_t nBinX, Float_t Xmin, Float_t Xmax,
virtual ~AliCorrectionMatrix3D();
+ AliCorrectionMatrix3D& operator= (const AliCorrectionMatrix3D& c);
+
TH3F* GetGeneratedHistogram();
TH3F* GetMeasuredHistogram();
TH3F* GetCorrectionHistogram();
protected:
ClassDef(AliPWG0Helper, 0)
+
+ private:
+ AliPWG0Helper(const AliPWG0Helper&);
+ AliPWG0Helper& operator=(const AliPWG0Helper&);
};
#endif
#include "AliESDtrack.h"
-class AliRecoVsGeneCheck : public TObject
+class AliRecoVsGeneCheck : public TObject
{
public:
TH3F* fhDPtVsPtVsEta;
TH3F* fhDEtaVsPtVsEta;
-
+ private:
+ AliRecoVsGeneCheck(const AliRecoVsGeneCheck&);
+ AliRecoVsGeneCheck& operator=(const AliRecoVsGeneCheck&);
ClassDef(AliRecoVsGeneCheck, 1)
};
TFile* fKineFile; //! pointer to Kinematics.root if the file was opened
+ AliSelector(const AliSelector&);
+ AliSelector& operator=(const AliSelector&);
+
ClassDef(AliSelector,0);
};
Bool_t fKinematicsLoaded; // determines if the stack is properly loaded (AliRunLoader::LoadKinematics() succeeded), this is needed because the GetStack returnes a invalid stack object when the function failed
Bool_t fHeaderLoaded; // determines if the header is properly loaded
+ AliSelectorRL(const AliSelectorRL&);
+ AliSelectorRL& operator=(const AliSelectorRL&);
+
ClassDef(AliSelectorRL,0);
};
AliESDtrackCuts* fEsdTrackCuts; // Object containing the parameters of the esd track cuts
private:
+ AliMultiplicityESDSelector(const AliMultiplicityESDSelector&);
+ AliMultiplicityESDSelector& operator=(const AliMultiplicityESDSelector&);
ClassDef(AliMultiplicityESDSelector, 0);
};
AliESDtrackCuts* fEsdTrackCuts; // Object containing the parameters of the esd track cuts
private:
+ AliMultiplicityMCSelector(const AliMultiplicityMCSelector&);
+ AliMultiplicityMCSelector& operator=(const AliMultiplicityMCSelector&);
ClassDef(AliMultiplicityMCSelector, 0);
};
AlidNdEtaCorrection* fdNdEtaCorrection; // correction maps
private:
+ AlidNdEtaAnalysisESDSelector(const AlidNdEtaAnalysisESDSelector&);
+ AlidNdEtaAnalysisESDSelector& operator=(const AlidNdEtaAnalysisESDSelector&);
ClassDef(AlidNdEtaAnalysisESDSelector, 0);
};
TH1F* fPartEta; //! counted particles as function of eta
Int_t fEvents; //! number of processed events
+ AlidNdEtaAnalysisMCSelector(const AlidNdEtaAnalysisMCSelector&);
+ AlidNdEtaAnalysisMCSelector& operator=(const AlidNdEtaAnalysisMCSelector&);
+
ClassDef(AlidNdEtaAnalysisMCSelector, 0);
};
Long64_t fNEvents;
Long64_t fNTriggeredEvents;
+private:
+ AlidNdEtaCorrection(const AlidNdEtaCorrection&);
+ AlidNdEtaCorrection& operator=(const AlidNdEtaCorrection&);
+
ClassDef(AlidNdEtaCorrection, 1)
};
fdNdEtaCorrection(0),
fPIDParticles(0),
fPIDTracks(0),
+ fClustersITSPos(0),
+ fClustersTPCPos(0),
+ fClustersITSNeg(0),
+ fClustersTPCNeg(0),
fSignMode(0)
{
//
Int_t fSignMode; // if 0 process all particles, if +-1 process only particles with that sign
private:
+ AlidNdEtaCorrectionSelector(const AlidNdEtaCorrectionSelector&);
+ AlidNdEtaCorrectionSelector& operator=(const AlidNdEtaCorrectionSelector&);
ClassDef(AlidNdEtaCorrectionSelector, 0);
};
fSigmaVertex(0),
fEsdTrackCuts(0),
fOverallPrimaries(0),
- fOverallSecondaries(0)
+ fOverallSecondaries(0),
+ fPIDParticles(0),
+ fPIDTracks(0)
{
//
// Constructor. Initialization of pointers
fSigmaVertex = new TH1F("fSigmaVertex", "fSigmaVertex;Nsigma2vertex;NacceptedTracks", 10, 0.25, 5.25);
printf("WARNING: sigma-vertex analysis enabled. This will produce weird results in the AliESDtrackCuts histograms\n");
}
+
+ fPIDParticles = new TH1F("pid_particles", "PID of generated primary particles", 10001, -5000.5, 5000.5);
+ fPIDTracks = new TH1F("pid_tracks", "MC PID of reconstructed tracks", 10001, -5000.5, 5000.5);
}
Bool_t AlidNdEtaSystematicsSelector::Process(Long64_t entry)
case 211: id = 0; break;
case 321: id = 1; break;
case 2212: id = 2; break;
+ case 11:
+ {
+ if (pt < 0.1 && particle->GetMother(0) > -1)
+ {
+ TParticle* mother = stack->Particle(particle->GetMother(0));
+ printf("Mother pdg code is %d\n", mother->GetPdgCode());
+ }
+ //particle->Dump();
+ //if (particle->GetUniqueID() == 1)
+
+ //printf("Found illegal particle mc id = %d file = %s event = %d\n", iMc, fTree->GetCurrentFile()->GetName(), fTree->GetTree()->GetReadEntry());
+ }
default: id = 3; break;
}
if (vertexReconstructed)
+ {
fdNdEtaCorrection[id]->FillParticle(vtxMC[2], eta, pt);
+ if (pt < 0.1)
+ fPIDParticles->Fill(particle->GetPdgCode());
+ }
fdNdEtaCorrection[id]->FillParticleAllEvents(eta, pt);
if (eventTriggered)
}
if (vertexReconstructed)
+ {
fdNdEtaCorrection[id]->FillParticleWhenMeasuredTrack(vtxMC[2], particle->Eta(), particle->Pt());
+ if (particle->Pt() < 0.1)
+ fPIDTracks->Fill(particle->GetPdgCode());
+ }
} // end of track loop
delete iter;
fdNdEtaCorrection[i] = dynamic_cast<AlidNdEtaCorrection*> (fOutput->FindObject(Form("correction_%d", i)));
fSigmaVertex = dynamic_cast<TH1F*> (fOutput->FindObject("fSigmaVertex"));
+ TDatabasePDG* pdgDB = new TDatabasePDG;
+
+ for (Int_t i=0; i <= fPIDParticles->GetNbinsX()+1; ++i)
+ if (fPIDParticles->GetBinContent(i) > 0)
+ printf("PDG = %d (%s): generated: %d, reconstructed: %d, ratio: %f\n", (Int_t) fPIDParticles->GetBinCenter(i), pdgDB->GetParticle((Int_t) fPIDParticles->GetBinCenter(i))->GetName(), (Int_t) fPIDParticles->GetBinContent(i), (Int_t) fPIDTracks->GetBinContent(i), ((fPIDTracks->GetBinContent(i) > 0) ? fPIDParticles->GetBinContent(i) / fPIDTracks->GetBinContent(i) : -1));
+
+ delete pdgDB;
+ pdgDB = 0;
+
TFile* fout = TFile::Open("systematics.root", "RECREATE");
if (fEsdTrackCuts)
Long64_t fOverallPrimaries; // count of all primaries
Long64_t fOverallSecondaries; // count of all secondaries
+ TH1F* fPIDParticles; // pid of primary particles
+ TH1F* fPIDTracks; // pid of reconstructed tracks
+
private:
+ AlidNdEtaSystematicsSelector(const AlidNdEtaSystematicsSelector&);
+ AlidNdEtaSystematicsSelector& operator=(const AlidNdEtaSystematicsSelector&);
ClassDef(AlidNdEtaSystematicsSelector, 0);
};
TH1F* fVtxRec; //! generated vertex z of events with reconstructed vertex
private:
+ AlidNdEtaVertexRecEffSelector(const AlidNdEtaVertexRecEffSelector&);
+ AlidNdEtaVertexRecEffSelector& operator=(const AlidNdEtaVertexRecEffSelector&);
ClassDef(AlidNdEtaVertexRecEffSelector, 0);
};