ATLAS Offline Software
Loading...
Searching...
No Matches
TauolaPP.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5
6#ifndef TAUOLAPP_H
7#define TAUOLAPP_H
8
12#include "GaudiKernel/ServiceHandle.h"
13
14#include "AtlasHepMC/GenEvent.h"
16
17#include "CLHEP/Random/RandomEngine.h"
18
19
24public:
25
27 TauolaPP (const std::string& name, ISvcLocator* pSvcLocator);
28
30 virtual StatusCode initialize() override;
31
33 virtual StatusCode execute() override;
34
35 static CLHEP::HepRandomEngine* p_rndmEngine;
36
37private:
38
40
41 void reseedRandomEngine(const std::string& streamName, const EventContext& ctx);
42 CLHEP::HepRandomEngine* getRandomEngine(const std::string& streamName, unsigned long int randomSeedOffset, const EventContext& ctx) const;
43 CLHEP::HepRandomEngine* getRandomEngineDuringInitialize(const std::string& streamName, unsigned long int randomSeedOffset, unsigned int conditionsRun=1, unsigned int lbn=1) const;
45
47 StringProperty m_key{this, "McEventKey", "GEN_EVENT"};
48
49 // Random number service
50 ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc"};
51
52 //Gen_tf run args.
53 IntegerProperty m_dsid{this, "Dsid", 999999};
54
56 IntegerProperty m_randomSeed{this, "RandomSeed", 1234567, "Random seed for the built-in random engine"}; // FIXME make this into an unsigned long int?
57
59
60
62 IntegerProperty m_decay_particle{this, "decay_particle", 15};
63
65 IntegerProperty m_decay_mode_same{this, "decay_mode_same", 1};
66
68 IntegerProperty m_decay_mode_opp{this, "decay_mode_opposite", 2};
69
71 DoubleProperty m_tau_mass{this, "tau_mass", 1.77684};
72
74 BooleanProperty m_spin_correlation{this, "spin_correlation", true};
75
77 BooleanProperty m_setRadiation{this, "setRadiation", true};
78
80 DoubleProperty m_setRadiationCutOff{this, "setRadiationCutOff", 0.01};
81
82};
83
84#endif
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
CLHEP::HepRandomEngine * getRandomEngine(const std::string &streamName, unsigned long int randomSeedOffset, const EventContext &ctx) const
Definition TauolaPP.cxx:89
IntegerProperty m_decay_particle
PDG ID of particle to study.
Definition TauolaPP.h:62
StringProperty m_key
Event record container key - FIXME should be using Read/WriteHandles here.
Definition TauolaPP.h:47
TauolaPP(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition TauolaPP.cxx:38
ServiceHandle< IAthRNGSvc > m_rndmSvc
Definition TauolaPP.h:50
BooleanProperty m_setRadiation
TAUOLA switch for radiative corrections for leptonic tau decays.
Definition TauolaPP.h:77
CLHEP::HepRandomEngine * getRandomEngineDuringInitialize(const std::string &streamName, unsigned long int randomSeedOffset, unsigned int conditionsRun=1, unsigned int lbn=1) const
Definition TauolaPP.cxx:98
IntegerProperty m_decay_mode_opp
TAUOLA decay mode of particles with opposite charge as "decay_particle".
Definition TauolaPP.h:68
virtual StatusCode execute() override
Pass each event in the McEventCollection to Tauola to (re)decay the taus.
Definition TauolaPP.cxx:115
void reseedRandomEngine(const std::string &streamName, const EventContext &ctx)
Definition TauolaPP.cxx:81
IntegerProperty m_decay_mode_same
TAUOLA decay mode of particles with same charge as "decay_particle".
Definition TauolaPP.h:65
DoubleProperty m_tau_mass
tau mass to be taken by TAUOLA
Definition TauolaPP.h:71
DoubleProperty m_setRadiationCutOff
TAUOLA cut-off for radiative corrections.
Definition TauolaPP.h:80
IntegerProperty m_randomSeed
Seed for random number engine.
Definition TauolaPP.h:56
IntegerProperty m_dsid
Definition TauolaPP.h:53
static CLHEP::HepRandomEngine * p_rndmEngine
Definition TauolaPP.h:35
BooleanProperty m_spin_correlation
TAUOLA switch for spin effects.
Definition TauolaPP.h:74
void initialize()