Belle II Software development
|
Class to interface EvtGen. More...
#include <EvtGenInterface.h>
Public Member Functions | |
EvtGenInterface () | |
Constructor. | |
~EvtGenInterface () | |
Destructor. | |
int | setup (const std::string &decayFileName, const std::string &parentParticle, const std::string &userFileName=std::string(""), bool coherentMixing=true) |
Setup evtgen with the given decay files | |
int | simulateEvent (MCInitialParticles initial, int inclusiveType, const std::string &inclusiveParticle) |
Generate a single event. | |
int | simulateDecay (MCParticleGraph &graph, MCParticleGraph::GraphParticle &parent) |
Simulate a particle decay. | |
Static Public Member Functions | |
static EvtGen * | createEvtGen (const std::string &decayFileName, bool coherentMixing) |
Create and initialize an EvtGen instance: | |
Protected Attributes | |
EvtParticle * | m_parent |
Variable needed for parent particle. | |
EvtGen * | m_Generator |
Variable needed for EvtGen generator. | |
EvtId | m_ParentParticle |
Variable needed for parent particle ID. | |
bool | m_ParentInitialized |
Whether parent particle is initialized. | |
IOIntercept::OutputToLogMessages | m_logCaptureDebug |
Capture EvtGen log and transform into basf2 logging as B2DEBUG messages. | |
Static Protected Attributes | |
static EvtGenFwRandEngine | m_eng |
Variable needed for random generator. | |
Private Member Functions | |
int | addParticles2Graph (EvtParticle *particle, MCParticleGraph &graph, ROOT::Math::XYZVector pPrimaryVertex, MCParticleGraph::GraphParticle *parent, double timeOffset=0) |
Convert EvtParticle structure to flat MCParticle list. | |
void | updateGraphParticle (EvtParticle *eParticle, MCParticleGraph::GraphParticle *gParticle, ROOT::Math::XYZVector pPrimaryVertex, double timeOffset=0) |
Copy parameters from EvtParticle to MCParticle. | |
Class to interface EvtGen.
This class is responsible to handle all interaction with evtgen and its classes when generating events. It sets up the models, calls evtgen to generate the events and converts the evtgen particles to a list of MCParticles
Definition at line 36 of file EvtGenInterface.h.
|
inline |
Constructor.
Definition at line 50 of file EvtGenInterface.h.
~EvtGenInterface | ( | ) |
Destructor.
Definition at line 36 of file EvtGenInterface.cc.
|
private |
Convert EvtParticle structure to flat MCParticle list.
Definition at line 242 of file EvtGenInterface.cc.
|
static |
Create and initialize an EvtGen instance:
Definition at line 47 of file EvtGenInterface.cc.
int setup | ( | const std::string & | decayFileName, |
const std::string & | parentParticle, | ||
const std::string & | userFileName = std::string("") , |
||
bool | coherentMixing = true |
||
) |
Setup evtgen with the given decay files
Definition at line 84 of file EvtGenInterface.cc.
int simulateDecay | ( | MCParticleGraph & | graph, |
MCParticleGraph::GraphParticle & | parent | ||
) |
Simulate a particle decay.
Definition at line 216 of file EvtGenInterface.cc.
int simulateEvent | ( | MCInitialParticles | initial, |
int | inclusiveType, | ||
const std::string & | inclusiveParticle | ||
) |
Generate a single event.
Definition at line 132 of file EvtGenInterface.cc.
|
private |
Copy parameters from EvtParticle to MCParticle.
Definition at line 296 of file EvtGenInterface.cc.
|
staticprotected |
Variable needed for random generator.
Definition at line 84 of file EvtGenInterface.h.
|
protected |
Variable needed for EvtGen generator.
Definition at line 85 of file EvtGenInterface.h.
|
protected |
Capture EvtGen log and transform into basf2 logging as B2DEBUG messages.
Definition at line 88 of file EvtGenInterface.h.
|
protected |
|
protected |
Whether parent particle is initialized.
Definition at line 87 of file EvtGenInterface.h.
|
protected |
Variable needed for parent particle ID.
Definition at line 86 of file EvtGenInterface.h.