GENIEGenerator
|
Functions | |
double | ProbSurvival (int pdgc, const TLorentzVector &x4, const TLorentzVector &p4, double A, double Z, double mfp_scale_factor, const Intranuke2018 &fsi_model) |
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, const bool useOset=false, const bool altOset=false, const bool xsecNNCorr=false, string INukeMode="XX2018") |
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 | sigmaTotalOset (const double &pionKineticEnergy, const double &density, const int &pionPDG, const double &protonFraction, const bool &isTableChosen=true) |
double genie::utils::intranuke2018::CalculateEta | ( | double | Minc, |
double | ke, | ||
double | Mtarg, | ||
double | Mtwopart, | ||
double | Mpi | ||
) |
Definition at line 1652 of file INukeUtils2018.cxx.
Referenced by PionProduction().
double genie::utils::intranuke2018::Dist2Exit | ( | const TLorentzVector & | x4, |
const TLorentzVector & | p4, | ||
double | A, | ||
double | NR = 3 , |
||
double | R0 = 1.4 |
||
) |
double genie::utils::intranuke2018::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 400 of file INukeUtils2018.cxx.
References MeanFreePath().
void genie::utils::intranuke2018::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 642 of file INukeUtils2018.cxx.
References genie::RandomGen::Instance(), genie::GHepParticle::KinE(), genie::kPdgNeutron, genie::kPdgProton, LOG, genie::GHepParticle::Name(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), genie::RandomGen::RndFsi(), and genie::exceptions::INukeException::SetReason().
Referenced by genie::HNIntranuke2018::HandleCompoundNucleus().
double genie::utils::intranuke2018::MeanFreePath | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A, | ||
double | Z, | ||
double | nRpi = 0.5 , |
||
double | nRnuc = 1.0 , |
||
const bool | useOset = false , |
||
const bool | altOset = false , |
||
const bool | xsecNNCorr = false , |
||
string | INukeMode = "XX2018" |
||
) |
Mean free path (pions, nucleons)
Definition at line 79 of file INukeUtils2018.cxx.
References genie::units::A, genie::utils::nuclear::Density(), genie::PDGLibrary::Find(), genie::units::fm2, genie::INukeHadroData2018::fMaxKinEnergyHN, genie::INukeHadroData2018::fMinKinEnergy, INukeNucleonCorr::getInstance(), genie::PDGLibrary::Instance(), genie::INukeHadroData2018::Instance(), genie::kPdgGamma, genie::kPdgKP, genie::kPdgNeutron, genie::kPdgPi0, genie::kPdgPiM, genie::kPdgPiP, genie::kPdgProton, genie::units::mb, genie::units::MeV, and sigmaTotalOset().
Referenced by Dist2ExitMFP(), genie::Intranuke2018::GenerateStep(), and ProbSurvival().
double genie::utils::intranuke2018::MeanFreePath_Delta | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A | ||
) |
Mean free path (Delta++ test)
Definition at line 236 of file INukeUtils2018.cxx.
References genie::utils::nuclear::Density(), genie::units::fm2, genie::kPdgP33m1232_DeltaPP, genie::units::mb, and genie::units::MeV.
bool genie::utils::intranuke2018::PhaseSpaceDecay | ( | GHepRecord * | ev, |
GHepParticle * | p, | ||
const PDGCodeList & | pdgv, | ||
TLorentzVector & | RemnP4, | ||
double | NucRmvE, | ||
EINukeMode | mode = kIMdHA |
||
) |
general phase space decay method
Definition at line 1678 of file INukeUtils2018.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::HAIntranuke2018::Inelastic(), and PreEquilibrium().
bool genie::utils::intranuke2018::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 1301 of file INukeUtils2018.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::HAIntranuke2018::Inelastic(), and genie::HNIntranuke2018::InelasticHN().
void genie::utils::intranuke2018::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 491 of file INukeUtils2018.cxx.
References genie::GHepParticle::CompareMomentum(), genie::GHepParticle::ComparePdgCodes(), genie::GHepParticle::CompareStatusCodes(), genie::GHepParticle::E(), genie::GHepRecord::GetStableDescendants(), genie::RandomGen::Instance(), genie::GHepParticle::KinE(), genie::kPdgNeutron, genie::kPdgProton, LOG, genie::GHepParticle::Name(), genie::GHepRecord::Particle(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), genie::RandomGen::RndFsi(), genie::GHepParticle::SetFirstMother(), and genie::exceptions::INukeException::SetReason().
Referenced by genie::HNIntranuke2018::SimulateHadronicFinalState(), and genie::HAIntranuke2018::SimulateHadronicFinalStateKinematics().
double genie::utils::intranuke2018::ProbSurvival | ( | int | pdgc, |
const TLorentzVector & | x4, | ||
const TLorentzVector & | p4, | ||
double | A, | ||
double | Z, | ||
double | mfp_scale_factor, | ||
const Intranuke2018 & | fsi_model | ||
) |
Hadron survival probability.
Definition at line 284 of file INukeUtils2018.cxx.
References genie::Intranuke2018::GetAltOset(), genie::Intranuke2018::GetDelRNucleon(), genie::Intranuke2018::GetDelRPion(), genie::Intranuke2018::GetHadStep(), genie::Intranuke2018::GetINukeMode(), genie::Intranuke2018::GetNR(), genie::Intranuke2018::GetR0(), genie::Intranuke2018::GetRemnA(), genie::Intranuke2018::GetRemnZ(), genie::Intranuke2018::GetUseOset(), genie::Intranuke2018::GetXsecNNCorr(), LOG, MeanFreePath(), and pDEBUG.
double genie::utils::intranuke2018::sigmaTotalOset | ( | const double & | pionKineticEnergy, |
const double & | density, | ||
const int & | pionPDG, | ||
const double & | protonFraction, | ||
const bool & | isTableChosen = true |
||
) |
Definition at line 1915 of file INukeUtils2018.cxx.
References INukeOset::getTotalCrossSection(), and INukeOset::setupOset().
Referenced by MeanFreePath().
void genie::utils::intranuke2018::StepParticle | ( | GHepParticle * | p, |
double | step, | ||
double | nuclear_radius = -1. |
||
) |
Step particle.
Definition at line 435 of file INukeUtils2018.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::Intranuke2018::TransportHadrons().
bool genie::utils::intranuke2018::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 1072 of file INukeUtils2018.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::intranuke2018::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 729 of file INukeUtils2018.cxx.
References genie::GHepParticle::Energy(), 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::Mass(), 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 genie::utils::intranuke::TwoBodyKinematics().
Referenced by genie::HNIntranuke2018::ElasHN(), genie::HNIntranuke2018::GammaInelasticHN(), and genie::HAIntranuke2018::InelasticHA().
bool genie::utils::intranuke2018::TwoBodyKinematics | ( | double | M3, |
double | M4, | ||
TLorentzVector | tP1L, | ||
TLorentzVector | tP2L, | ||
TLorentzVector & | tP3L, | ||
TLorentzVector & | tP4L, | ||
double | C3CM, | ||
TLorentzVector & | RemnP4, | ||
double | bindE = 0 |
||
) |
Definition at line 873 of file INukeUtils2018.cxx.
References genie::RandomGen::Instance(), genie::constants::kPi, LOG, pINFO, pNOTICE, and genie::RandomGen::RndFsi().
Referenced by INukeNucleonCorr::AvgCorrection(), genie::HAIntranuke2018::ElasHA(), and genie::HAIntranuke2018::Inelastic().