baseAnalysis Class Reference

Base class for all HepMCanalysis classes to implement common functionality and interfaces. More...

#include <baseAnalysis.h>

Inheritance diagram for baseAnalysis:

DiJetAnalysis ElasScatAnalysis EtMissAnalysis JetFinder TauAnalysis TopAnalysis UEAnalysis UserAnalysis WplusJetAnalysis ZAnalysis List of all members.

Public Member Functions

 baseAnalysis ()
virtual ~baseAnalysis ()
virtual int Finalize ()
virtual int Finalize (TFile *output)
virtual TH1D * popHisto ()
virtual int Init (double maxeta=2.5, double minpt=0.5)
virtual int Process (HepMC::GenEvent *hepmcevt)
virtual std::vector< TH1D * > averagedHistograms ()
int InitJetFinder (double coneRadius, double overlapThreshold, double jet_ptmin, double lepton_ptmin, double DeltaR_lepton_track)
int FindJetableParticles (HepMC::GenEvent *hepmcevt)
int FindJet (HepMC::GenEvent *hepmcevt)
int DeleteJetObject (HepMC::GenEvent *hepmcevt)
std::vector< fastjet::PseudoJet > GetJet (HepMC::GenEvent *hepmcevt)
virtual void SetJet (std::vector< fastjet::PseudoJet > *inclusive_jets)
int FindMissingEt (HepMC::GenEvent *hepmcevt)
int ClearMissingEt (HepMC::GenEvent *hepmcevt)
int ClearEvent (HepMC::GenEvent *hepmcevt)
int setOutpuFileName (const char *filename)
int setOutpuRootDir (const char *dirname)
bool IsNeutrino (int pid)
bool IsGamma (int pid)
bool IsNeutron (int pid)
bool IsK0 (int pid)
bool IsPi0 (int pid)
bool IsElectron (int pid)
bool IsMuon (int pid)
bool IsGluon (int pid)
int chargedParticle (int pid)
virtual int IsFinalStateParticle (HepMC::GenParticle *p)
int setMaxEtaCut (double maxeta)
int setMinPtCut (double minpt)
TH1D * initHist (std::string name, std::string title, std::string xlabel, int nrBins=100, double xmin=0., double xmax=100.)
TH1D * initHistVariableBin (std::string name, std::string title, std::string xlabel, int nbin, double nbinRange[])
bool checkDaughter (HepMC::GenParticle *mother, HepMC::GenParticle *daughter, int maxGenerations=-1)
bool trackfromPID (int pid, HepMC::GenParticle *track, int maxGenerations=-1)
double getRapidity (HepMC::GenEvent::particle_const_iterator p)

Protected Attributes

fastjet::JetDefinition::Plugin * m_plugin
fastjet::JetDefinition * m_jetDef
std::vector< fastjet::PseudoJet > m_input_particles
std::vector< fastjet::PseudoJet > m_inclusive_jets
fastjet::ClusterSequence * m_clust_seq
std::map< std::string, int > m_histCounter
std::vector< TH1D * > m_histVector
std::vector< TH1D * > m_histVectorVariableBin
std::string m_outputFileName
std::string m_outputRootDir
double m_coneRadius
double m_overlapThreshold
double m_jet_ptmin
double m_lepton_ptmin
double m_DeltaR_lepton_track
bool m_Jetfinder_enabled
double m_max_eta
double m_min_pt
double exMissTruth
double eyMissTruth
double etMissTruth
double etsumMissTruth
const HepPDT::ParticleDataTable * m_particleTable

Detailed Description

Base class for all HepMCanalysis classes to implement common functionality and interfaces.

Author:
Cano Ay Dec 2008

Definition at line 33 of file baseAnalysis.h.


Constructor & Destructor Documentation

baseAnalysis::baseAnalysis (  ) 

Constructor

Definition at line 34 of file baseAnalysis.cc.

References m_Jetfinder_enabled.

baseAnalysis::~baseAnalysis (  )  [virtual]

Destructor: delete all the Pointer

Definition at line 42 of file baseAnalysis.cc.

References m_histVector, m_histVectorVariableBin, m_jetDef, and m_plugin.


Member Function Documentation

virtual std::vector<TH1D*> baseAnalysis::averagedHistograms (  )  [inline, virtual]

Reimplemented in UEAnalysis.

Definition at line 48 of file baseAnalysis.h.

References m_histVector.

int baseAnalysis::chargedParticle ( int  pid  )  [inline]

Check if neutral particle

Definition at line 83 of file baseAnalysis.h.

References IsGamma(), IsGluon(), IsK0(), IsNeutrino(), IsNeutron(), and IsPi0().

Referenced by ZAnalysis::Process(), WplusJetAnalysis::Process(), UEAnalysis::Process(), TopAnalysis::Process(), TauAnalysis::Process(), and DiJetAnalysis::Process().

bool baseAnalysis::checkDaughter ( HepMC::GenParticle *  mother,
HepMC::GenParticle *  daughter,
int  maxGenerations = -1 
)

check if mother decayed into daugther

Definition at line 470 of file baseAnalysis.cc.

int baseAnalysis::ClearEvent ( HepMC::GenEvent *  hepmcevt  ) 

Clear some values from the event

Definition at line 343 of file baseAnalysis.cc.

References ClearMissingEt(), and DeleteJetObject().

Referenced by main().

int baseAnalysis::ClearMissingEt ( HepMC::GenEvent *  hepmcevt  ) 

ClearMissingEt: setting the variables to calculate missing energy to zero

Definition at line 312 of file baseAnalysis.cc.

References etMissTruth, etsumMissTruth, exMissTruth, and eyMissTruth.

Referenced by ClearEvent().

int baseAnalysis::DeleteJetObject ( HepMC::GenEvent *  hepmcevt  ) 

DeleteJetObject: delete all the jet objects

Definition at line 255 of file baseAnalysis.cc.

References m_clust_seq, m_inclusive_jets, and m_input_particles.

Referenced by ClearEvent().

int baseAnalysis::Finalize ( TFile *  output  )  [virtual]

In the final step all the histogramms are stored in a rootfile. The name of the rootfile can be set with the function setOutpuFileName(const char* filename).

Reimplemented in UEAnalysis.

Definition at line 369 of file baseAnalysis.cc.

References m_histVector, and m_outputRootDir.

int baseAnalysis::Finalize (  )  [virtual]

In the final step all the histogramms are stored in a rootfile. The name of the rootfile can be set with the function setOutpuFileName(const char* filename).

Definition at line 355 of file baseAnalysis.cc.

References m_outputFileName.

Referenced by UEAnalysis::Finalize().

int baseAnalysis::FindJet ( HepMC::GenEvent *  hepmcevt  ) 

FindJet: run JetFinder

Definition at line 213 of file baseAnalysis.cc.

References FindJetableParticles(), m_clust_seq, m_inclusive_jets, m_input_particles, m_jet_ptmin, m_jetDef, and m_Jetfinder_enabled.

Referenced by GetJet().

int baseAnalysis::FindJetableParticles ( HepMC::GenEvent *  hepmcevt  ) 

FindJetableParticles

Definition at line 103 of file baseAnalysis.cc.

References IsElectron(), IsMuon(), IsNeutrino(), IsNeutron(), m_DeltaR_lepton_track, m_input_particles, m_jetDef, m_Jetfinder_enabled, m_lepton_ptmin, m_max_eta, m_min_pt, and q.

Referenced by FindJet().

int baseAnalysis::FindMissingEt ( HepMC::GenEvent *  hepmcevt  ) 

Calculate Missing Et

Definition at line 270 of file baseAnalysis.cc.

References etMissTruth, etsumMissTruth, exMissTruth, eyMissTruth, and IsNeutrino().

Referenced by EtMissAnalysis::Process().

vector< fastjet::PseudoJet > baseAnalysis::GetJet ( HepMC::GenEvent *  hepmcevt  ) 

Definition at line 241 of file baseAnalysis.cc.

References FindJet(), and m_inclusive_jets.

Referenced by main().

double baseAnalysis::getRapidity ( HepMC::GenEvent::particle_const_iterator  p  )  [inline]

calculate the rapidity of a particle

Definition at line 110 of file baseAnalysis.h.

References log.

Referenced by WplusJetAnalysis::Process().

virtual int baseAnalysis::Init ( double  maxeta = 2.5,
double  minpt = 0.5 
) [inline, virtual]

Reimplemented in DiJetAnalysis, ElasScatAnalysis, EtMissAnalysis, JetFinder, TauAnalysis, TopAnalysis, UEAnalysis, UserAnalysis, WplusJetAnalysis, and ZAnalysis.

Definition at line 45 of file baseAnalysis.h.

TH1D* baseAnalysis::initHist ( std::string  name,
std::string  title,
std::string  xlabel,
int  nrBins = 100,
double  xmin = 0.,
double  xmax = 100. 
)

Initialization of histograms

Referenced by ZAnalysis::Init(), WplusJetAnalysis::Init(), UserAnalysis::Init(), UEAnalysis::Init(), TopAnalysis::Init(), TauAnalysis::Init(), EtMissAnalysis::Init(), ElasScatAnalysis::Init(), and DiJetAnalysis::Init().

TH1D* baseAnalysis::initHistVariableBin ( std::string  name,
std::string  title,
std::string  xlabel,
int  nbin,
double  nbinRange[] 
)

Referenced by UEAnalysis::Init().

int baseAnalysis::InitJetFinder ( double  coneRadius,
double  overlapThreshold,
double  jet_ptmin,
double  lepton_ptmin,
double  DeltaR_lepton_track 
)

Initialize FastJet Algorithm

Definition at line 67 of file baseAnalysis.cc.

References m_coneRadius, m_DeltaR_lepton_track, m_jet_ptmin, m_jetDef, m_Jetfinder_enabled, m_lepton_ptmin, m_overlapThreshold, and m_plugin.

Referenced by main().

bool baseAnalysis::IsElectron ( int  pid  )  [inline]

Definition at line 77 of file baseAnalysis.h.

Referenced by FindJetableParticles().

int baseAnalysis::IsFinalStateParticle ( HepMC::GenParticle *  p  )  [virtual]

Check if final state particle

Definition at line 324 of file baseAnalysis.cc.

Referenced by ZAnalysis::Process(), WplusJetAnalysis::Process(), UEAnalysis::Process(), TopAnalysis::Process(), TauAnalysis::Process(), and DiJetAnalysis::Process().

bool baseAnalysis::IsGamma ( int  pid  )  [inline]

Definition at line 73 of file baseAnalysis.h.

Referenced by chargedParticle().

bool baseAnalysis::IsGluon ( int  pid  )  [inline]

Definition at line 79 of file baseAnalysis.h.

Referenced by chargedParticle().

bool baseAnalysis::IsK0 ( int  pid  )  [inline]

Definition at line 75 of file baseAnalysis.h.

Referenced by chargedParticle().

bool baseAnalysis::IsMuon ( int  pid  )  [inline]

Definition at line 78 of file baseAnalysis.h.

Referenced by FindJetableParticles().

bool baseAnalysis::IsNeutrino ( int  pid  )  [inline]

Check some special neutral Particles

Definition at line 72 of file baseAnalysis.h.

Referenced by chargedParticle(), FindJetableParticles(), and FindMissingEt().

bool baseAnalysis::IsNeutron ( int  pid  )  [inline]

Definition at line 74 of file baseAnalysis.h.

Referenced by chargedParticle(), and FindJetableParticles().

bool baseAnalysis::IsPi0 ( int  pid  )  [inline]

Definition at line 76 of file baseAnalysis.h.

Referenced by chargedParticle().

TH1D * baseAnalysis::popHisto (  )  [virtual]

return the last entry of the histogram vector, needed for ATHENA (ATLAS software) implementation

Definition at line 395 of file baseAnalysis.cc.

References m_histVector.

virtual int baseAnalysis::Process ( HepMC::GenEvent *  hepmcevt  )  [inline, virtual]

Reimplemented in DiJetAnalysis, ElasScatAnalysis, EtMissAnalysis, TauAnalysis, TopAnalysis, UEAnalysis, UserAnalysis, WplusJetAnalysis, and ZAnalysis.

Definition at line 46 of file baseAnalysis.h.

virtual void baseAnalysis::SetJet ( std::vector< fastjet::PseudoJet > *  inclusive_jets  )  [inline, virtual]

Definition at line 56 of file baseAnalysis.h.

References m_inclusive_jets.

int baseAnalysis::setMaxEtaCut ( double  maxeta  )  [inline]

Set the maximum allowed eta range

Definition at line 94 of file baseAnalysis.h.

References m_max_eta.

int baseAnalysis::setMinPtCut ( double  minpt  )  [inline]

Set maximum pt of tracks

Definition at line 97 of file baseAnalysis.h.

References m_min_pt.

int baseAnalysis::setOutpuFileName ( const char *  filename  )  [inline]

Set the Output filename

Definition at line 66 of file baseAnalysis.h.

References m_outputFileName.

int baseAnalysis::setOutpuRootDir ( const char *  dirname  )  [inline]

Set the directory name in Output root file

Definition at line 69 of file baseAnalysis.h.

References m_outputRootDir.

bool baseAnalysis::trackfromPID ( int  pid,
HepMC::GenParticle *  track,
int  maxGenerations = -1 
)

check if the track comes from a specific particle e.g. pid(W-Boson)=24

Definition at line 503 of file baseAnalysis.cc.


Member Data Documentation

double baseAnalysis::etMissTruth [protected]

Definition at line 148 of file baseAnalysis.h.

Referenced by ClearMissingEt(), FindMissingEt(), and EtMissAnalysis::Process().

double baseAnalysis::etsumMissTruth [protected]

Definition at line 149 of file baseAnalysis.h.

Referenced by ClearMissingEt(), FindMissingEt(), and EtMissAnalysis::Process().

double baseAnalysis::exMissTruth [protected]

Definition at line 146 of file baseAnalysis.h.

Referenced by ClearMissingEt(), FindMissingEt(), and EtMissAnalysis::Process().

double baseAnalysis::eyMissTruth [protected]

Definition at line 147 of file baseAnalysis.h.

Referenced by ClearMissingEt(), FindMissingEt(), and EtMissAnalysis::Process().

fastjet::ClusterSequence* baseAnalysis::m_clust_seq [protected]

Definition at line 125 of file baseAnalysis.h.

Referenced by DeleteJetObject(), and FindJet().

double baseAnalysis::m_coneRadius [protected]

Reimplemented in WplusJetAnalysis.

Definition at line 134 of file baseAnalysis.h.

Referenced by InitJetFinder().

double baseAnalysis::m_DeltaR_lepton_track [protected]

Reimplemented in WplusJetAnalysis.

Definition at line 138 of file baseAnalysis.h.

Referenced by FindJetableParticles(), and InitJetFinder().

std::map< std::string, int > baseAnalysis::m_histCounter [protected]

Definition at line 127 of file baseAnalysis.h.

std::vector<TH1D*> baseAnalysis::m_histVector [protected]

Definition at line 128 of file baseAnalysis.h.

Referenced by UEAnalysis::averagedHistograms(), averagedHistograms(), Finalize(), WplusJetAnalysis::Init(), popHisto(), and ~baseAnalysis().

std::vector<TH1D*> baseAnalysis::m_histVectorVariableBin [protected]

Definition at line 129 of file baseAnalysis.h.

Referenced by ~baseAnalysis().

std::vector<fastjet::PseudoJet> baseAnalysis::m_inclusive_jets [protected]

Definition at line 124 of file baseAnalysis.h.

Referenced by DeleteJetObject(), FindJet(), GetJet(), ZAnalysis::Process(), WplusJetAnalysis::Process(), UserAnalysis::Process(), UEAnalysis::Process(), TopAnalysis::Process(), TauAnalysis::Process(), DiJetAnalysis::Process(), and SetJet().

std::vector<fastjet::PseudoJet> baseAnalysis::m_input_particles [protected]

Definition at line 123 of file baseAnalysis.h.

Referenced by DeleteJetObject(), FindJet(), and FindJetableParticles().

double baseAnalysis::m_jet_ptmin [protected]

Reimplemented in WplusJetAnalysis.

Definition at line 136 of file baseAnalysis.h.

Referenced by FindJet(), and InitJetFinder().

fastjet::JetDefinition* baseAnalysis::m_jetDef [protected]

Definition at line 121 of file baseAnalysis.h.

Referenced by FindJet(), FindJetableParticles(), InitJetFinder(), and ~baseAnalysis().

bool baseAnalysis::m_Jetfinder_enabled [protected]

Definition at line 139 of file baseAnalysis.h.

Referenced by baseAnalysis(), FindJet(), FindJetableParticles(), and InitJetFinder().

double baseAnalysis::m_lepton_ptmin [protected]

Reimplemented in WplusJetAnalysis.

Definition at line 137 of file baseAnalysis.h.

Referenced by FindJetableParticles(), and InitJetFinder().

double baseAnalysis::m_max_eta [protected]

Definition at line 142 of file baseAnalysis.h.

Referenced by FindJetableParticles(), ZAnalysis::Init(), WplusJetAnalysis::Init(), UserAnalysis::Init(), UEAnalysis::Init(), TopAnalysis::Init(), TauAnalysis::Init(), JetFinder::Init(), EtMissAnalysis::Init(), ElasScatAnalysis::Init(), DiJetAnalysis::Init(), and setMaxEtaCut().

double baseAnalysis::m_min_pt [protected]

Definition at line 143 of file baseAnalysis.h.

Referenced by FindJetableParticles(), ZAnalysis::Init(), WplusJetAnalysis::Init(), UserAnalysis::Init(), UEAnalysis::Init(), TopAnalysis::Init(), TauAnalysis::Init(), JetFinder::Init(), EtMissAnalysis::Init(), ElasScatAnalysis::Init(), DiJetAnalysis::Init(), and setMinPtCut().

std::string baseAnalysis::m_outputFileName [protected]

Definition at line 130 of file baseAnalysis.h.

Referenced by Finalize(), ZAnalysis::Init(), WplusJetAnalysis::Init(), UserAnalysis::Init(), UEAnalysis::Init(), TopAnalysis::Init(), TauAnalysis::Init(), EtMissAnalysis::Init(), ElasScatAnalysis::Init(), DiJetAnalysis::Init(), and setOutpuFileName().

std::string baseAnalysis::m_outputRootDir [protected]

Definition at line 131 of file baseAnalysis.h.

Referenced by Finalize(), ZAnalysis::Init(), WplusJetAnalysis::Init(), UserAnalysis::Init(), UEAnalysis::Init(), TopAnalysis::Init(), TauAnalysis::Init(), EtMissAnalysis::Init(), ElasScatAnalysis::Init(), DiJetAnalysis::Init(), and setOutpuRootDir().

double baseAnalysis::m_overlapThreshold [protected]

Reimplemented in WplusJetAnalysis.

Definition at line 135 of file baseAnalysis.h.

Referenced by InitJetFinder().

const HepPDT::ParticleDataTable* baseAnalysis::m_particleTable [protected]

Definition at line 151 of file baseAnalysis.h.

fastjet::JetDefinition::Plugin* baseAnalysis::m_plugin [protected]

jet finding

Definition at line 115 of file baseAnalysis.h.

Referenced by InitJetFinder(), and ~baseAnalysis().


The documentation for this class was generated from the following files:
Generated on Mon Jan 4 15:22:36 2010 for HepMCAnalysis by  doxygen 1.4.7