GENIEGenerator
|
Functions | |
double | ProbSurvival (int pdgc, const TLorentzVector &x4, const TLorentzVector &p4, double A, double Z, double mfp_scale_factor=1.0, double nRpi=0.5, double nRnuc=1.0, double NR=3, double R0=1.4) |
Hadron survival probability. More... | |
double | MeanFreePath (int pdgc, const TLorentzVector &x4, const TLorentzVector &p4, double A, double Z, double nRpi=0.5, double nRnuc=1.0) |
Mean free path (pions, nucleons) More... | |
double | MeanFreePath_Delta (int pdgc, const TLorentzVector &x4, const TLorentzVector &p4, double A) |
Mean free path (Delta++ test) More... | |
double | Dist2Exit (const TLorentzVector &x4, const TLorentzVector &p4, double A, double NR=3, double R0=1.4) |
Distance to exit. More... | |
double | Dist2ExitMFP (int pdgc, const TLorentzVector &x4, const TLorentzVector &p4, double A, double Z, double NR=3, double R0=1.4) |
Distance to exit. More... | |
void | StepParticle (GHepParticle *p, double step, double nuclear_radius=-1.) |
Step particle. More... | |
bool | TwoBodyCollision (GHepRecord *ev, int pcode, int tcode, int scode, int s2code, double C3CM, GHepParticle *p, GHepParticle *t, int &RemnA, int &RemnZ, TLorentzVector &RemnP4, EINukeMode mode=kIMdHA) |
Intranuke utility functions. More... | |
bool | TwoBodyKinematics (double M3, double M4, TLorentzVector tP1L, TLorentzVector tP2L, TLorentzVector &tP3L, TLorentzVector &tP4L, double C3CM, TLorentzVector &RemnP4, double bindE=0) |
bool | ThreeBodyKinematics (GHepRecord *ev, GHepParticle *p, int tcode, GHepParticle *s1, GHepParticle *s2, GHepParticle *s3, bool DoFermi=false, double FermiFac=0, double FermiMomentum=0, const NuclearModelI *Nuclmodel=(const NuclearModelI *) 0) |
bool | PionProduction (GHepRecord *ev, GHepParticle *p, GHepParticle *s1, GHepParticle *s2, GHepParticle *s3, int &RemnA, int &RemnZ, TLorentzVector &RemnP4, bool DoFermi, double FermiFac, double FermiMomentum, const NuclearModelI *Nuclmodel) |
double | CalculateEta (double Minc, double ke, double Mtarg, double Mtwopart, double Mpi) |
void | Equilibrium (GHepRecord *ev, GHepParticle *p, int &RemnA, int &RemnZ, TLorentzVector &RemnP4, bool DoFermi, double FermiFac, const NuclearModelI *Nuclmodel, double NucRmvE, EINukeMode mode=kIMdHN) |
void | PreEquilibrium (GHepRecord *ev, GHepParticle *p, int &RemnA, int &RemnZ, TLorentzVector &RemnP4, bool DoFermi, double FermiFac, const NuclearModelI *Nuclmodel, double NucRmvE, EINukeMode mode=kIMdHN) |
bool | PhaseSpaceDecay (GHepRecord *ev, GHepParticle *p, const PDGCodeList &pdgv, TLorentzVector &RemnP4, double NucRmvE, EINukeMode mode=kIMdHA) |
general phase space decay method More... | |
double genie::utils::intranuke::CalculateEta | ( | double | Minc, |
double | ke, | ||
double | Mtarg, | ||
double | Mtwopart, | ||
double | Mpi | ||
) |
Definition at line 1529 of file INukeUtils.cxx.
Referenced by PionProduction().
double genie::utils::intranuke::Dist2Exit | ( | const TLorentzVector & | x4, |
const TLorentzVector & | p4, | ||
double | A, | ||
double | NR = 3 , |
||
double | R0 = 1.4 |
||
) |
double genie::utils::intranuke::Dist2ExitMFP | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A, | ||
double | Z, | ||
double | NR = 3 , |
||
double | R0 = 1.4 |
||
) |
Distance to exit.
Definition at line 306 of file INukeUtils.cxx.
References MeanFreePath().
void genie::utils::intranuke::Equilibrium | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
int & | RemnA, | ||
int & | RemnZ, | ||
TLorentzVector & | RemnP4, | ||
bool | DoFermi, | ||
double | FermiFac, | ||
const NuclearModelI * | Nuclmodel, | ||
double | NucRmvE, | ||
EINukeMode | mode = kIMdHN |
||
) |
Definition at line 542 of file INukeUtils.cxx.
References genie::PDGLibrary::Find(), genie::NuclearModelI::GenerateNucleon(), genie::RandomGen::Instance(), genie::PDGLibrary::Instance(), genie::GHepParticle::KinE(), genie::kPdgNeutron, genie::kPdgProton, LOG, genie::GHepParticle::Mass(), genie::NuclearModelI::Momentum3(), genie::GHepParticle::Name(), genie::GHepParticle::P4(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), genie::RandomGen::RndFsi(), genie::GHepParticle::SetMomentum(), genie::exceptions::INukeException::SetReason(), and genie::GHepRecord::TargetNucleus().
Referenced by PreEquilibrium().
double genie::utils::intranuke::MeanFreePath | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A, | ||
double | Z, | ||
double | nRpi = 0.5 , |
||
double | nRnuc = 1.0 |
||
) |
Mean free path (pions, nucleons)
Definition at line 70 of file INukeUtils.cxx.
References genie::units::A, genie::utils::nuclear::Density(), genie::units::fm2, genie::INukeHadroData::fMaxKinEnergyHN, genie::INukeHadroData::fMinKinEnergy, genie::INukeHadroData::Instance(), genie::kPdgGamma, genie::kPdgKP, genie::kPdgNeutron, genie::kPdgPi0, genie::kPdgPiM, genie::kPdgPiP, genie::kPdgProton, genie::units::mb, and genie::units::MeV.
Referenced by Dist2ExitMFP(), genie::Intranuke::GenerateStep(), and ProbSurvival().
double genie::utils::intranuke::MeanFreePath_Delta | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A | ||
) |
Mean free path (Delta++ test)
Definition at line 170 of file INukeUtils.cxx.
References genie::utils::nuclear::Density(), genie::units::fm2, genie::kPdgP33m1232_DeltaPP, genie::units::mb, and genie::units::MeV.
Referenced by genie::INukeDeltaPropg::ProcessEventRecord().
bool genie::utils::intranuke::PhaseSpaceDecay | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
const PDGCodeList & | pdgv, | ||
TLorentzVector & | RemnP4, | ||
double | NucRmvE, | ||
EINukeMode | mode = kIMdHA |
||
) |
general phase space decay method
Definition at line 1555 of file INukeUtils.cxx.
References genie::GHepRecord::AddParticle(), genie::GHepParticle::E(), genie::GHepParticle::Energy(), genie::PDGLibrary::Find(), genie::GHepParticle::GetP4(), genie::GHepParticle::GetX4(), genie::RandomGen::Instance(), genie::PDGLibrary::Instance(), genie::pdg::IsNeutronOrProton(), genie::kIMdHA, genie::kIStHadronInTheNucleus, genie::kIStNucleonClusterTarget, genie::kIStStableFinalState, genie::controls::kMaxUnweightDecayIterations, genie::kPdgCompNuclCluster, genie::kPdgKM, genie::kPdgKP, genie::kPdgPi0, genie::kPdgPiM, genie::kPdgPiP, genie::constants::kPi, LOG, genie::units::m, genie::GHepParticle::Mass(), genie::utils::print::P4AsString(), genie::GHepRecord::ParticlePosition(), genie::GHepParticle::Pdg(), pERROR, pINFO, pNOTICE, genie::GHepParticle::Px(), genie::GHepParticle::Py(), genie::GHepParticle::Pz(), genie::RandomGen::RndFsi(), genie::GHepParticle::SetPdgCode(), genie::GHepParticle::SetRemovalEnergy(), and genie::GHepParticle::SetStatus().
Referenced by Equilibrium(), genie::HAIntranuke::Inelastic(), and PreEquilibrium().
bool genie::utils::intranuke::PionProduction | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
GHepParticle * | s1, | ||
GHepParticle * | s2, | ||
GHepParticle * | s3, | ||
int & | RemnA, | ||
int & | RemnZ, | ||
TLorentzVector & | RemnP4, | ||
bool | DoFermi, | ||
double | FermiFac, | ||
double | FermiMomentum, | ||
const NuclearModelI * | Nuclmodel | ||
) |
Definition at line 1178 of file INukeUtils.cxx.
References genie::GHepRecord::AddParticle(), CalculateEta(), genie::GHepParticle::Energy(), genie::PDGLibrary::Find(), genie::RandomGen::Instance(), genie::PDGLibrary::Instance(), genie::pdg::IsNeutronOrProton(), genie::pdg::IsPion(), genie::pdg::IsProton(), genie::GHepParticle::KinE(), genie::kIStHadronInTheNucleus, genie::kPdgNeutron, genie::kPdgPi0, genie::kPdgPiM, genie::kPdgPiP, genie::kPdgProton, LOG, genie::GHepParticle::P4(), pDEBUG, genie::GHepParticle::Pdg(), pNOTICE, pWARN, genie::RandomGen::RndFsi(), genie::GHepParticle::SetPdgCode(), genie::exceptions::INukeException::SetReason(), genie::GHepParticle::SetStatus(), and ThreeBodyKinematics().
Referenced by genie::HAIntranuke::Inelastic().
void genie::utils::intranuke::PreEquilibrium | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
int & | RemnA, | ||
int & | RemnZ, | ||
TLorentzVector & | RemnP4, | ||
bool | DoFermi, | ||
double | FermiFac, | ||
const NuclearModelI * | Nuclmodel, | ||
double | NucRmvE, | ||
EINukeMode | mode = kIMdHN |
||
) |
Definition at line 395 of file INukeUtils.cxx.
References genie::GHepParticle::CompareMomentum(), genie::GHepParticle::ComparePdgCodes(), genie::GHepParticle::CompareStatusCodes(), genie::GHepParticle::E(), Equilibrium(), genie::PDGLibrary::Find(), genie::NuclearModelI::GenerateNucleon(), genie::GHepRecord::GetStableDescendants(), genie::RandomGen::Instance(), genie::PDGLibrary::Instance(), genie::GHepParticle::KinE(), genie::kIStIntermediateState, genie::kPdgNeutron, genie::kPdgProton, LOG, genie::GHepParticle::Mass(), genie::NuclearModelI::Momentum3(), genie::GHepParticle::Name(), genie::GHepParticle::P4(), genie::GHepRecord::Particle(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), genie::RandomGen::RndFsi(), genie::GHepParticle::SetFirstMother(), genie::GHepParticle::SetMomentum(), genie::exceptions::INukeException::SetReason(), genie::GHepParticle::SetStatus(), and genie::GHepRecord::TargetNucleus().
double genie::utils::intranuke::ProbSurvival | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A, | ||
double | Z, | ||
double | mfp_scale_factor = 1.0 , |
||
double | nRpi = 0.5 , |
||
double | nRnuc = 1.0 , |
||
double | NR = 3 , |
||
double | R0 = 1.4 |
||
) |
Hadron survival probability.
Definition at line 218 of file INukeUtils.cxx.
References LOG, MeanFreePath(), and pDEBUG.
void genie::utils::intranuke::StepParticle | ( | GHepParticle * | p, |
double | step, | ||
double | nuclear_radius = -1. |
||
) |
Step particle.
Definition at line 341 of file INukeUtils.cxx.
References epsilon, LOG, genie::GHepParticle::Name(), genie::GHepParticle::P4(), pDEBUG, pINFO, genie::GHepParticle::SetPosition(), genie::utils::print::Vec3AsString(), genie::GHepParticle::X4(), and genie::utils::print::X4AsString().
Referenced by genie::INukeDeltaPropg::ProcessEventRecord(), and genie::Intranuke::TransportHadrons().
bool genie::utils::intranuke::ThreeBodyKinematics | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
int | tcode, | ||
GHepParticle * | s1, | ||
GHepParticle * | s2, | ||
GHepParticle * | s3, | ||
bool | DoFermi = false , |
||
double | FermiFac = 0 , |
||
double | FermiMomentum = 0 , |
||
const NuclearModelI * | Nuclmodel = (const NuclearModelI*)0 |
||
) |
Definition at line 949 of file INukeUtils.cxx.
References genie::GHepParticle::E(), genie::PDGLibrary::Find(), genie::GHepParticle::FirstMother(), genie::NuclearModelI::GenerateNucleon(), genie::RandomGen::Instance(), genie::PDGLibrary::Instance(), genie::pdg::IsNeutronOrProton(), genie::kIMdHA, genie::kIMdHN, genie::kIStHadronInTheNucleus, genie::kIStStableFinalState, genie::constants::kPi, genie::GHepParticle::LastMother(), LOG, genie::utils::res::Mass(), genie::NuclearModelI::Momentum3(), genie::GHepParticle::P4(), pDEBUG, genie::GHepParticle::Pdg(), pINFO, pNOTICE, genie::RandomGen::RndFsi(), genie::GHepParticle::SetFirstMother(), genie::Target::SetHitNucPdg(), genie::GHepParticle::SetLastMother(), genie::GHepParticle::SetMomentum(), genie::exceptions::INukeException::SetReason(), genie::GHepParticle::SetStatus(), and genie::GHepRecord::TargetNucleus().
Referenced by PionProduction().
bool genie::utils::intranuke::TwoBodyCollision | ( | GHepRecord * | ev, |
int | pcode, | ||
int | tcode, | ||
int | scode, | ||
int | s2code, | ||
double | C3CM, | ||
GHepParticle * | p, | ||
GHepParticle * | t, | ||
int & | RemnA, | ||
int & | RemnZ, | ||
TLorentzVector & | RemnP4, | ||
EINukeMode | mode = kIMdHA |
||
) |
Intranuke utility functions.
Definition at line 625 of file INukeUtils.cxx.
References genie::PDGLibrary::Find(), genie::GHepParticle::FirstMother(), genie::PDGLibrary::Instance(), genie::kIMdHN, genie::kIStHadronInTheNucleus, genie::kIStStableFinalState, genie::kPdgNeutron, genie::kPdgProton, genie::GHepParticle::LastMother(), LOG, genie::GHepParticle::P4(), genie::GHepParticle::Pdg(), pINFO, pNOTICE, genie::GHepParticle::SetFirstMother(), genie::GHepParticle::SetLastMother(), genie::GHepParticle::SetMomentum(), genie::GHepParticle::SetPdgCode(), genie::GHepParticle::SetStatus(), genie::GHepRecord::TargetNucleus(), and TwoBodyKinematics().
Referenced by genie::HAIntranuke::InelasticHA().
bool genie::utils::intranuke::TwoBodyKinematics | ( | double | M3, |
double | M4, | ||
TLorentzVector | tP1L, | ||
TLorentzVector | tP2L, | ||
TLorentzVector & | tP3L, | ||
TLorentzVector & | tP4L, | ||
double | C3CM, | ||
TLorentzVector & | RemnP4, | ||
double | bindE = 0 |
||
) |
Definition at line 754 of file INukeUtils.cxx.
References genie::RandomGen::Instance(), genie::constants::kPi, LOG, pINFO, pNOTICE, and genie::RandomGen::RndFsi().
Referenced by genie::HAIntranuke::ElasHA(), genie::HAIntranuke::Inelastic(), TwoBodyCollision(), and genie::utils::intranuke2018::TwoBodyCollision().