CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
ParticleReplacerZtautau Class Reference

#include <ParticleReplacerZtautau.h>

Inheritance diagram for ParticleReplacerZtautau:
ParticleReplacerBase

Classes

struct  MinVisPtCut
 
struct  MinVisPtCutCombination
 

Public Member Functions

virtual void beginJob ()
 
virtual void beginRun (edm::Run &, const edm::EventSetup &)
 
virtual void declareExtraProducts (MCParticleReplacer *)
 
virtual void endJob ()
 
 ParticleReplacerZtautau (const edm::ParameterSet &)
 
virtual std::auto_ptr
< HepMC::GenEvent > 
produce (const std::vector< reco::Particle > &, const reco::Vertex *=0, const HepMC::GenEvent *=0, MCParticleReplacer *=0)
 
 ~ParticleReplacerZtautau ()
 
- Public Member Functions inherited from ParticleReplacerBase
virtual void endRun ()
 
 ParticleReplacerBase (const edm::ParameterSet &)
 
virtual ~ParticleReplacerBase ()
 

Private Member Functions

void cleanEvent (HepMC::GenEvent *, HepMC::GenVertex *)
 
HepMC::GenEvent * processEventWithPythia (HepMC::GenEvent *)
 
HepMC::GenEvent * processEventWithTauola (HepMC::GenEvent *)
 
bool testEvent (HepMC::GenEvent *)
 
void transformMuMu2LepLep (CLHEP::HepRandomEngine &randomEngine, reco::Particle *, reco::Particle *)
 
void transformMuMu2TauNu (reco::Particle *, reco::Particle *)
 

Private Attributes

bool applyMuonRadiationCorrection_
 
double beamEnergy_
 
std::string generatorMode_
 
int maxNumberOfAttempts_
 
std::vector
< MinVisPtCutCombination
minVisPtCuts_
 
int motherParticleID_
 
GenMuonRadiationAlgorithmmuonRadiationAlgo_
 
bool printEvent_
 
gen::Pythia6Service pythia_
 
bool rfMirror_
 
double rfRotationAngle_
 
int targetParticle1AbsPdgID_
 
double targetParticle1Mass_
 
int targetParticle2AbsPdgID_
 
double targetParticle2Mass_
 
gen::TauolaInterfaceBasetauola_
 
unsigned int transformationMode_
 
bool useExternalGenerators_
 
bool useTauola_
 
bool useTauolaPolarization_
 

Static Private Attributes

static bool tauola_isInitialized_ = false
 

Additional Inherited Members

- Public Attributes inherited from ParticleReplacerBase
unsigned int passed_
 
unsigned int tried_
 
- Protected Attributes inherited from ParticleReplacerBase
const double tauMass_
 
int verbosity_
 

Detailed Description

Auxiliary class to replace muons reconstructed in selected Z –> mu+ mu- events by generator level particles, which will be passed to detector simulation & reconstruction modules to create "hybrid" events ("embedded" leptons from Monte Carlo simulation, rest of the event taken from data)

Per default, the reconstructed muons are replaced by generator level tau leptons, which are passed to TAUOLA in order to produce generator level tau decay products.

For systematic/background studies, it is possible also to:

Author
Manuel Zeise
Version
Revision:
1.6
Id:
ParticleReplacerZtautau.h,v 1.6 2013/01/31 09:07:18 veelken Exp

Definition at line 40 of file ParticleReplacerZtautau.h.

Constructor & Destructor Documentation

ParticleReplacerZtautau::ParticleReplacerZtautau ( const edm::ParameterSet cfg)
explicit

Definition at line 43 of file ParticleReplacerZtautau.cc.

ParticleReplacerZtautau::~ParticleReplacerZtautau ( )

Definition at line 163 of file ParticleReplacerZtautau.cc.

Member Function Documentation

void ParticleReplacerZtautau::beginJob ( void  )
virtual

Reimplemented from ParticleReplacerBase.

Definition at line 174 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::beginRun ( edm::Run run,
const edm::EventSetup es 
)
virtual

Reimplemented from ParticleReplacerBase.

Definition at line 699 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::cleanEvent ( HepMC::GenEvent *  genEvt,
HepMC::GenVertex *  genVtx 
)
private

Definition at line 826 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::declareExtraProducts ( MCParticleReplacer producer)
virtual

Reimplemented from ParticleReplacerBase.

Definition at line 168 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::endJob ( void  )
virtual

Reimplemented from ParticleReplacerBase.

Definition at line 708 of file ParticleReplacerZtautau.cc.

HepMC::GenEvent* ParticleReplacerZtautau::processEventWithPythia ( HepMC::GenEvent *  )
private
HepMC::GenEvent* ParticleReplacerZtautau::processEventWithTauola ( HepMC::GenEvent *  )
private
std::auto_ptr< HepMC::GenEvent > ParticleReplacerZtautau::produce ( const std::vector< reco::Particle > &  muons,
const reco::Vertex evtVtx = 0,
const HepMC::GenEvent *  genEvt = 0,
MCParticleReplacer producer = 0 
)
virtual

Implements ParticleReplacerBase.

Definition at line 234 of file ParticleReplacerZtautau.cc.

bool ParticleReplacerZtautau::testEvent ( HepMC::GenEvent *  genEvt)
private

Definition at line 713 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::transformMuMu2LepLep ( CLHEP::HepRandomEngine &  randomEngine,
reco::Particle muon1,
reco::Particle muon2 
)
private

Definition at line 912 of file ParticleReplacerZtautau.cc.

void ParticleReplacerZtautau::transformMuMu2TauNu ( reco::Particle muon1,
reco::Particle muon2 
)
private

Definition at line 1015 of file ParticleReplacerZtautau.cc.

Member Data Documentation

bool ParticleReplacerZtautau::applyMuonRadiationCorrection_
private

Definition at line 91 of file ParticleReplacerZtautau.h.

double ParticleReplacerZtautau::beamEnergy_
private

Definition at line 65 of file ParticleReplacerZtautau.h.

std::string ParticleReplacerZtautau::generatorMode_
private

Definition at line 64 of file ParticleReplacerZtautau.h.

int ParticleReplacerZtautau::maxNumberOfAttempts_
private

Definition at line 136 of file ParticleReplacerZtautau.h.

std::vector<MinVisPtCutCombination> ParticleReplacerZtautau::minVisPtCuts_
private

Definition at line 129 of file ParticleReplacerZtautau.h.

int ParticleReplacerZtautau::motherParticleID_
private

Definition at line 75 of file ParticleReplacerZtautau.h.

GenMuonRadiationAlgorithm* ParticleReplacerZtautau::muonRadiationAlgo_
private

Definition at line 92 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::printEvent_
private

Definition at line 96 of file ParticleReplacerZtautau.h.

gen::Pythia6Service ParticleReplacerZtautau::pythia_
private

Definition at line 94 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::rfMirror_
private

Definition at line 82 of file ParticleReplacerZtautau.h.

double ParticleReplacerZtautau::rfRotationAngle_
private

Definition at line 79 of file ParticleReplacerZtautau.h.

int ParticleReplacerZtautau::targetParticle1AbsPdgID_
private

Definition at line 132 of file ParticleReplacerZtautau.h.

double ParticleReplacerZtautau::targetParticle1Mass_
private

Definition at line 131 of file ParticleReplacerZtautau.h.

int ParticleReplacerZtautau::targetParticle2AbsPdgID_
private

Definition at line 134 of file ParticleReplacerZtautau.h.

double ParticleReplacerZtautau::targetParticle2Mass_
private

Definition at line 133 of file ParticleReplacerZtautau.h.

gen::TauolaInterfaceBase* ParticleReplacerZtautau::tauola_
private

Definition at line 85 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::tauola_isInitialized_ = false
staticprivate

Definition at line 89 of file ParticleReplacerZtautau.h.

unsigned int ParticleReplacerZtautau::transformationMode_
private

Definition at line 73 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::useExternalGenerators_
private

Definition at line 76 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::useTauola_
private

Definition at line 77 of file ParticleReplacerZtautau.h.

bool ParticleReplacerZtautau::useTauolaPolarization_
private

Definition at line 78 of file ParticleReplacerZtautau.h.