Geant4
10.01.p01
|
#include <G4Pythia6Decayer.hh>
Public Member Functions | |
G4Pythia6Decayer () | |
virtual | ~G4Pythia6Decayer () |
virtual G4DecayProducts * | ImportDecayProducts (const G4Track &track) |
void | ForceDecayType (EDecayType decayType) |
void | SetVerboseLevel (G4int verboseLevel) |
Public Member Functions inherited from G4VExtDecayer | |
G4VExtDecayer (const G4String &name="") | |
virtual | ~G4VExtDecayer () |
const G4String & | GetName () const |
Private Member Functions | |
G4Pythia6Decayer (const G4Pythia6Decayer &right) | |
Not implemented. More... | |
G4Pythia6Decayer & | operator= (const G4Pythia6Decayer &right) |
Not implemented. More... | |
G4ParticleDefinition * | GetParticleDefinition (const Pythia6Particle *p, G4bool warn=true) const |
G4DynamicParticle * | CreateDynamicParticle (const Pythia6Particle *p) const |
G4ThreeVector | GetParticlePosition (const Pythia6Particle *particle) const |
G4ThreeVector | GetParticleMomentum (const Pythia6Particle *particle) const |
G4int | CountProducts (G4int channel, G4int particle) |
void | ForceParticleDecay (G4int particle, G4int product, G4int mult) |
void | ForceParticleDecay (G4int particle, G4int *products, G4int *mult, G4int npart) |
void | ForceHadronicD () |
void | ForceOmega () |
void | ForceDecay (EDecayType decayType) |
void | Decay (G4int pdg, const CLHEP::HepLorentzVector &p) |
G4int | ImportParticles (ParticleVector *particles) |
Private Attributes | |
G4Pythia6DecayerMessenger | fMessenger |
command messenger More... | |
G4int | fVerboseLevel |
verbose level More... | |
EDecayType | fDecayType |
selected decay type More... | |
ParticleVector * | fDecayProductsArray |
array of decay products More... | |
Static Private Attributes | |
static const EDecayType | fgkDefaultDecayType = kAll |
default decay type More... | |
Additional Inherited Members | |
Protected Attributes inherited from G4VExtDecayer | |
G4String | decayerName |
Pythia6 decayer.
Implements the G4VExtDecayer abstract class using the Pythia6 interface. According to TPythia6Decayer class in Root: http://root.cern.ch/ see http://root.cern.ch/root/License.html
Definition at line 53 of file G4Pythia6Decayer.hh.
G4Pythia6Decayer::G4Pythia6Decayer | ( | ) |
Standard constructor
Definition at line 55 of file G4Pythia6Decayer.cc.
References fDecayProductsArray, fDecayType, and ForceDecay().
|
virtual |
|
private |
Not implemented.
Count number of decay products
Definition at line 160 of file G4Pythia6Decayer.cc.
References Pythia6::Instance().
Referenced by ForceParticleDecay().
|
private |
Create G4DynamicParticle.
Definition at line 112 of file G4Pythia6Decayer.cc.
References GetParticleDefinition(), and GetParticleMomentum().
Referenced by ImportDecayProducts().
|
private |
Decay a particle of type IDPART (PDG code) and momentum P.
Definition at line 517 of file G4Pythia6Decayer.cc.
References Pythia6::Instance(), and Pythia6::Py1ent().
Referenced by ImportDecayProducts().
|
private |
Force a particle decay mode
Definition at line 315 of file G4Pythia6Decayer.cc.
References fDecayType, ForceHadronicD(), ForceOmega(), ForceParticleDecay(), Pythia6::Instance(), kAll, kBJpsi, kBJpsiDiElectron, kBJpsiDiMuon, kBPsiPrimeDiElectron, kBPsiPrimeDiMuon, kDiElectron, kDiMuon, kHadronicD, kHardMuons, kKaToMu, kMaxDecay, kNoDecay, kNoDecayHeavy, kOmega, kPhiKK, kPiToMu, kSemiElectronic, kSemiMuonic, kWToCharm, kWToCharmToMuon, kWToMuon, kZDiMuon, and Pythia6::SetMSTJ().
Referenced by ForceDecayType(), and G4Pythia6Decayer().
void G4Pythia6Decayer::ForceDecayType | ( | EDecayType | decayType | ) |
Force a given decay type
Definition at line 618 of file G4Pythia6Decayer.cc.
References fDecayType, and ForceDecay().
Referenced by G4Pythia6DecayerMessenger::SetNewValue().
|
private |
Force golden D decay modes
Definition at line 226 of file G4Pythia6Decayer.cc.
References ForceParticleDecay(), Pythia6::GetKFDP(), Pythia6::GetMDCY(), Pythia6::Instance(), Pythia6::Pycomp(), Pythia6::SetMDCY(), and Pythia6::SetMDME().
Referenced by ForceDecay().
|
private |
Force Omega -> Lambda K- Decay
Definition at line 288 of file G4Pythia6Decayer.cc.
References Pythia6::GetKFDP(), Pythia6::GetMDCY(), Pythia6::Instance(), Pythia6::Pycomp(), Pythia6::SetMDCY(), and Pythia6::SetMDME().
Referenced by ForceDecay().
Force decay of particle into products with multiplicity mult
Definition at line 174 of file G4Pythia6Decayer.cc.
References CountProducts(), Pythia6::GetMDCY(), Pythia6::Instance(), Pythia6::Pycomp(), Pythia6::SetMDCY(), and Pythia6::SetMDME().
Referenced by ForceDecay(), and ForceHadronicD().
|
private |
Force decay of particle into products with multiplicity mult
Definition at line 199 of file G4Pythia6Decayer.cc.
References CountProducts(), Pythia6::GetMDCY(), Pythia6::Instance(), Pythia6::Pycomp(), Pythia6::SetMDCY(), and Pythia6::SetMDME().
|
private |
Return G4 particle definition for given TParticle
Definition at line 86 of file G4Pythia6Decayer.cc.
References G4ParticleTable::FindParticle(), Pythia6Particle::fKF, G4cerr, and G4ParticleTable::GetParticleTable().
Referenced by CreateDynamicParticle().
|
private |
Return particle momentum.
Definition at line 146 of file G4Pythia6Decayer.cc.
References Pythia6Particle::fPx, Pythia6Particle::fPy, Pythia6Particle::fPz, and GeV.
Referenced by CreateDynamicParticle().
|
private |
Return particle vertex position.
Definition at line 132 of file G4Pythia6Decayer.cc.
References cm, Pythia6Particle::fVx, Pythia6Particle::fVy, Pythia6Particle::fVz, and position.
|
virtual |
Import decay products
Implements G4VExtDecayer.
Definition at line 539 of file G4Pythia6Decayer.cc.
References CreateDynamicParticle(), Decay(), fDecayProductsArray, Pythia6Particle::fKF, Pythia6Particle::fKS, fVerboseLevel, G4cout, G4endl, G4Track::GetDefinition(), G4DynamicParticle::GetDefinition(), G4Track::GetDynamicParticle(), G4Track::GetMomentum(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGEncoding(), G4DynamicParticle::GetTotalEnergy(), GeV, ImportParticles(), and G4DecayProducts::PushProducts().
|
private |
Get the decay products into the passed PARTICLES vector
Definition at line 526 of file G4Pythia6Decayer.cc.
References Pythia6::ImportParticles(), and Pythia6::Instance().
Referenced by ImportDecayProducts().
|
private |
Not implemented.
|
inline |
Definition at line 63 of file G4Pythia6Decayer.hh.
References fVerboseLevel.
Referenced by P6DExtDecayerPhysics::ConstructProcess(), and G4Pythia6DecayerMessenger::SetNewValue().
|
private |
array of decay products
Definition at line 95 of file G4Pythia6Decayer.hh.
Referenced by G4Pythia6Decayer(), ImportDecayProducts(), and ~G4Pythia6Decayer().
|
private |
selected decay type
Definition at line 94 of file G4Pythia6Decayer.hh.
Referenced by ForceDecay(), ForceDecayType(), and G4Pythia6Decayer().
|
staticprivate |
default decay type
Definition at line 90 of file G4Pythia6Decayer.hh.
|
private |
command messenger
Definition at line 92 of file G4Pythia6Decayer.hh.
|
private |
verbose level
Definition at line 93 of file G4Pythia6Decayer.hh.
Referenced by ImportDecayProducts(), and SetVerboseLevel().