Geant4.10
|
#include <G4CascadeFinalStateAlgorithm.hh>
Public Member Functions | |
G4CascadeFinalStateAlgorithm () | |
virtual | ~G4CascadeFinalStateAlgorithm () |
virtual void | SetVerboseLevel (G4int verbose) |
void | Configure (G4InuclElementaryParticle *bullet, G4InuclElementaryParticle *target, const std::vector< G4int > &particle_kinds) |
![]() | |
G4VHadDecayAlgorithm (const G4String &algName, G4int verbose=0) | |
virtual | ~G4VHadDecayAlgorithm () |
void | Generate (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
G4int | GetVerboseLevel () const |
const G4String & | GetName () const |
Protected Member Functions | |
virtual void | GenerateTwoBody (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
virtual void | GenerateMultiBody (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
void | SaveKinematics (G4InuclElementaryParticle *bullet, G4InuclElementaryParticle *target) |
void | ChooseGenerators (G4int is, G4int fs) |
void | FillMagnitudes (G4double initialMass, const std::vector< G4double > &masses) |
G4bool | satisfyTriangle (const std::vector< G4double > &pmod) const |
void | FillDirections (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
void | FillDirThreeBody (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
void | FillDirManyBody (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
G4double | GenerateCosTheta (G4int ptype, G4double pmod) const |
void | FillUsingKopylov (G4double initialMass, const std::vector< G4double > &masses, std::vector< G4LorentzVector > &finalState) |
G4double | BetaKopylov (G4int K) const |
![]() | |
virtual G4bool | IsDecayAllowed (G4double initialMass, const std::vector< G4double > &masses) const |
G4double | TwoBodyMomentum (G4double M0, G4double M1, G4double M2) const |
G4double | UniformTheta () const |
G4double | UniformPhi () const |
void | PrintVector (const std::vector< G4double > &v, const G4String &name, std::ostream &os) const |
Definition at line 49 of file G4CascadeFinalStateAlgorithm.hh.
G4CascadeFinalStateAlgorithm::G4CascadeFinalStateAlgorithm | ( | ) |
Definition at line 72 of file G4CascadeFinalStateAlgorithm.cc.
|
virtual |
Definition at line 76 of file G4CascadeFinalStateAlgorithm.cc.
Definition at line 504 of file G4CascadeFinalStateAlgorithm.cc.
References G4UniformRand, G4Pow::GetInstance(), N, and G4Pow::powN().
Referenced by FillUsingKopylov().
Definition at line 133 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, G4MultiBodyMomentumDist::GetDist(), G4TwoBodyAngularDist::GetDist(), G4VMultiBodyMomDst::GetName(), G4VTwoBodyAngDst::GetName(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), and G4CascadeParameters::usePhaseSpace().
Referenced by Configure().
void G4CascadeFinalStateAlgorithm::Configure | ( | G4InuclElementaryParticle * | bullet, |
G4InuclElementaryParticle * | target, | ||
const std::vector< G4int > & | particle_kinds | ||
) |
Definition at line 89 of file G4CascadeFinalStateAlgorithm.cc.
References ChooseGenerators(), G4cout, G4endl, G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), SaveKinematics(), and G4InuclElementaryParticle::type().
Referenced by G4CascadeFinalStateGenerator::Configure().
|
protected |
Definition at line 310 of file G4CascadeFinalStateAlgorithm.cc.
References FillDirManyBody(), FillDirThreeBody(), G4cout, G4endl, G4VHadDecayAlgorithm::GetName(), and G4VHadDecayAlgorithm::GetVerboseLevel().
Referenced by GenerateMultiBody().
|
protected |
Definition at line 359 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, GenerateCosTheta(), G4InuclSpecialFunctions::generateWithFixedTheta(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), CLHEP::HepLorentzVector::rho(), G4LorentzConvertor::rotate(), and CLHEP::HepLorentzVector::set().
Referenced by FillDirections().
|
protected |
Definition at line 326 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, GenerateCosTheta(), G4InuclSpecialFunctions::generateWithFixedTheta(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), G4LorentzConvertor::rotate(), and CLHEP::HepLorentzVector::set().
Referenced by FillDirections().
|
protected |
Definition at line 225 of file G4CascadeFinalStateAlgorithm.cc.
References G4cerr, G4cout, G4endl, G4VMultiBodyMomDst::GetMomentum(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), and satisfyTriangle().
Referenced by GenerateMultiBody().
|
protected |
Definition at line 461 of file G4CascadeFinalStateAlgorithm.cc.
References BetaKopylov(), CLHEP::HepLorentzVector::boost(), CLHEP::HepLorentzVector::boostVector(), G4cout, G4endl, G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), N, CLHEP::Hep3Vector::setRThetaPhi(), CLHEP::HepLorentzVector::setVectM(), G4VHadDecayAlgorithm::TwoBodyMomentum(), G4VHadDecayAlgorithm::UniformPhi(), and G4VHadDecayAlgorithm::UniformTheta().
Referenced by GenerateMultiBody().
|
protected |
Definition at line 410 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, G4VTwoBodyAngDst::GetCosTheta(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), and G4InuclSpecialFunctions::inuclRndm().
Referenced by FillDirManyBody(), and FillDirThreeBody().
|
protectedvirtual |
Implements G4VHadDecayAlgorithm.
Definition at line 202 of file G4CascadeFinalStateAlgorithm.cc.
References FillDirections(), FillMagnitudes(), FillUsingKopylov(), G4cout, G4endl, G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), and G4CascadeParameters::usePhaseSpace().
|
protectedvirtual |
Implements G4VHadDecayAlgorithm.
Definition at line 161 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, G4UniformRand, G4VTwoBodyAngDst::GetCosTheta(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), G4LorentzConvertor::rotate(), CLHEP::Hep3Vector::setRThetaPhi(), G4VHadDecayAlgorithm::TwoBodyMomentum(), G4VHadDecayAlgorithm::UniformPhi(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().
|
protected |
Definition at line 293 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, G4VHadDecayAlgorithm::GetName(), and G4VHadDecayAlgorithm::GetVerboseLevel().
Referenced by FillMagnitudes().
|
protected |
Definition at line 112 of file G4CascadeFinalStateAlgorithm.cc.
References G4cout, G4endl, G4LorentzConvertor::getKinEnergyInTheTRS(), G4VHadDecayAlgorithm::GetName(), G4VHadDecayAlgorithm::GetVerboseLevel(), G4InuclElementaryParticle::nucleon(), G4LorentzConvertor::setBullet(), G4LorentzConvertor::setTarget(), and G4LorentzConvertor::toTheCenterOfMass().
Referenced by Configure().
Reimplemented from G4VHadDecayAlgorithm.
Definition at line 78 of file G4CascadeFinalStateAlgorithm.cc.
References G4LorentzConvertor::setVerbose(), G4VHadDecayAlgorithm::SetVerboseLevel(), G4MultiBodyMomentumDist::setVerboseLevel(), and G4TwoBodyAngularDist::setVerboseLevel().