23 #include <TClonesArray.h> 24 #include <TParticlePDG.h> 25 #include <TIterator.h> 40 using namespace genie;
53 void Decay(
const Decayer * decayer,
int pdgc,
double E,
int ndecays);
67 <<
"Asking the AlgFactory for a genie::PythiaDecayer\\Default instance";
94 <<
" **** Inhibiting all but the `tau- --> nu_mu_bar + mu- + nu_tau' decay channel" 159 <<
" **** Restoring all tau- decay channels" 170 <<
" **** Inhibit all tau- decay channels" 181 DecayerInputs_t dinp;
192 TParticlePDG * pp = pdglib->
Find(pdgc);
196 <<
"Decaying a " << pp->GetName() <<
" with E = " << p4.Energy();
199 for(
int idec = 0; idec < ndecays; idec++) {
202 TClonesArray * particle_list = decayer->Decay(dinp);
206 <<
"\n ** Decay nu.: " << idec <<
" ==> NULL particle list";
212 <<
"\n ** Decay nu.: " << idec
213 <<
" (weight = " << decayer->Weight() <<
") : \n " 217 particle_list->Delete();
218 delete particle_list;
226 TObjArrayIter particle_iter(particle_list);
243 while( (p = (
GHepParticle *) particle_iter.Next()) ) stream <<
p;
THE MAIN GENIE PROJECT NAMESPACE
virtual void InhibitDecay(int pdgc, TDecayChannel *dc=0) const =0
void TestPythiaTauDecays(void)
void Decay(const Decayer *decayer, int pdgc, double E, int ndecays)
virtual void UnInhibitDecay(int pdgc, TDecayChannel *dc=0) const =0
double Pz(void) const
Get Pz.
GHepStatus_t Status(void) const
Q_EXPORT QTSManip setprecision(int p)
double Energy(void) const
Get energy.
virtual const Registry & GetConfig(void) const
double Px(void) const
Get Px.
double Vt(void) const
Get production time.
string Name(void) const
Name that corresponds to the PDG code.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
const Algorithm * GetAlgorithm(const AlgId &algid)
Q_EXPORT QTSManip setw(int w)
virtual const AlgId & Id(void) const
Get algorithm ID.
static PDGLibrary * Instance(void)
static AlgFactory * Instance()
Singleton class to load & serve a TDatabasePDG.
double Vz(void) const
Get production z.
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
A registry. Provides the container for algorithm configuration parameters.
Base class for decayer classes. Implements common configuration, allowing users to toggle on/off flag...
static constexpr double mm
TParticlePDG * Find(int pdgc, bool must_exist=true)
double Vy(void) const
Get production y.
The GENIE Algorithm Factory.
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
Q_EXPORT QTSManip setfill(int f)
STDHEP-like event record entry that can fit a particle or a nucleus.
QTextStream & endl(QTextStream &s)
double Vx(void) const
Get production x.
string Config(void) const
double Py(void) const
Get Py.