|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #include "Tauola/Log.h"
10 #include "Tauola/Tauola.h"
12 #include "Tauola/TauolaHepMC3Event.h"
15 using TauolaHepMCEvent=TauolaHepMC3Event;
16 using TauolaHepMCParticle=TauolaHepMC3Particle;
19 #include "Tauola/TauolaHepMCEvent.h"
22 #include "Tauola/f_Variables.h"
25 #include "CLHEP/Random/RandFlat.h"
51 using Tauolapp::Tauola;
62 Tauola::setEtaK0sPi(1,0,1);
68 Tauola::setRandomGenerator(AthenaRandomGenerator);
72 Tauola::setSeed(
int(std::abs(sip[0])%(900000000)),0,0);
77 return StatusCode::SUCCESS;
90 const EventContext& ctx)
const
93 rngWrapper->
setSeed(
streamName, ctx.slot(), randomSeedOffset, ctx.eventID().run_number() );
103 ctx.setEventID (EventIDBase (conditionsRun,
104 EventIDBase::UNDEFEVT,
105 EventIDBase::UNDEFNUM,
106 EventIDBase::UNDEFNUM,
118 const EventContext& ctx = Gaudi::Hive::currentContext();
129 for (HepMC::GenEvent*
evt : *mcCollptr) {
131 auto t_event =
new Tauolapp::TauolaHepMCEvent(
evt);
134 t_event->undecayTaus();
136 t_event->decayTaus();
140 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
void setSeed(const std::string &algName, const EventContext &ctx)
Set the random seed using a string (e.g.
void reseedRandomEngine(const std::string &streamName, const EventContext &ctx)
StringProperty m_key
Event record container key - FIXME should be using Read/WriteHandles here.
static CLHEP::HepRandomEngine * p_rndmEngine
BooleanProperty m_setRadiation
TAUOLA switch for radiative corrections for leptonic tau decays.
CLHEP::HepRandomEngine * getRandomEngineDuringInitialize(const std::string &streamName, unsigned long int randomSeedOffset, unsigned int conditionsRun=1, unsigned int lbn=1) const
ServiceHandle< IAthRNGSvc > m_rndmSvc
IntegerProperty m_decay_mode_opp
TAUOLA decay mode of particles with opposite charge as "decay_particle".
CLHEP::HepRandomEngine * getRandomEngine(const std::string &streamName, unsigned long int randomSeedOffset, const EventContext &ctx) const
double AthenaRandomGenerator ATLAS_NOT_THREAD_SAFE()
Install fatal handler with default options.
virtual StatusCode execute() override
Pass each event in the McEventCollection to Tauola to (re)decay the taus.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
::StatusCode StatusCode
StatusCode definition for legacy code.
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
DoubleProperty m_setRadiationCutOff
TAUOLA cut-off for radiative corrections.
A wrapper class for event-slot-local random engines.
TauolaPP(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
CLHEP::HepRandomEngine * getEngine(const EventContext &ctx) const
Retrieve the random engine corresponding to the provided EventContext.
void calculateSeedsMC21(long *seeds, const std::string &algName, uint64_t ev, uint64_t run, uint64_t offset=0)
Set the random seed using a string (e.g.
virtual StatusCode initialize() override
Initialization of Tauola++ and setting of JO configurables.
IntegerProperty m_randomSeed
Seed for random number engine.
DoubleProperty m_tau_mass
tau mass to be taken by TAUOLA
void setExtendedEventContext(EventContext &ctx, ExtendedEventContext &&ectx)
Move an extended context into a context object.
BooleanProperty m_spin_correlation
TAUOLA switch for spin effects.
IntegerProperty m_decay_mode_same
TAUOLA decay mode of particles with same charge as "decay_particle".