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, 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 1623 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 |
||
) |
Distance to exit.
Definition at line 344 of file INukeUtils2018.cxx.
References d, R, and fillBadChanDBTables::step.
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 371 of file INukeUtils2018.cxx.
References d, MeanFreePath(), R, and fillBadChanDBTables::step.
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 613 of file INukeUtils2018.cxx.
References MECModelEnuComparisons::i, genie::RandomGen::Instance(), genie::GHepParticle::KinE(), genie::kPdgNeutron, genie::kPdgProton, parse_dependency_file_t::list, LOG, genie::GHepParticle::Name(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), generate_hists::rnd, genie::RandomGen::RndFsi(), genie::exceptions::INukeException::SetReason(), and log::success().
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 78 of file INukeUtils2018.cxx.
References genie::units::A, genie::utils::nuclear::Density(), E, MakeMiniprodValidationCuts::f, 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, make_training::momentum, R0, sigmaTotalOset(), submit_syst::x, and test::z.
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 235 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 1649 of file INukeUtils2018.cxx.
References genie::GHepRecord::AddParticle(), ana::assert(), dE, genie::GHepParticle::E(), genie::GHepParticle::Energy(), genie::PDGLibrary::Find(), genie::GHepParticle::GetP4(), genie::GHepParticle::GetX4(), MECModelEnuComparisons::i, genie::PDGLibrary::Instance(), genie::RandomGen::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, kPi, LOG, m, genie::GHepParticle::Mass(), Munits::nm, genie::utils::print::P4AsString(), genie::GHepRecord::ParticlePosition(), genie::GHepParticle::Pdg(), pERROR, pINFO, pNOTICE, genie::GHepParticle::Px(), genie::GHepParticle::Py(), genie::GHepParticle::Pz(), generate_hists::rnd, genie::RandomGen::RndFsi(), scale, genie::GHepParticle::SetPdgCode(), genie::GHepParticle::SetRemovalEnergy(), genie::GHepParticle::SetStatus(), ana::Sqrt(), and w.
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 1272 of file INukeUtils2018.cxx.
References genie::GHepRecord::AddParticle(), CalculateEta(), genie::GHepParticle::Energy(), genie::PDGLibrary::Find(), genie::PDGLibrary::Instance(), genie::RandomGen::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, central_limit::rand, generate_hists::rnd, 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 462 of file INukeUtils2018.cxx.
References genie::GHepParticle::CompareMomentum(), genie::GHepParticle::ComparePdgCodes(), genie::GHepParticle::CompareStatusCodes(), genie::GHepParticle::E(), energy, GetEntries(), genie::GHepRecord::GetStableDescendants(), MECModelEnuComparisons::i, genie::RandomGen::Instance(), calib::j, genie::GHepParticle::KinE(), genie::kPdgNeutron, genie::kPdgProton, parse_dependency_file_t::list, PandAna.Demos.demo0::loc, LOG, genie::GHepParticle::Name(), genie::GHepRecord::Particle(), pDEBUG, genie::GHepParticle::Pdg(), PhaseSpaceDecay(), pINFO, genie::PDGCodeList::push_back(), generate_hists::rnd, genie::RandomGen::RndFsi(), genie::GHepParticle::SetFirstMother(), genie::exceptions::INukeException::SetReason(), log::success(), and confusionMatrixTree::t.
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 = 1.0 , |
||
double | nRpi = 0.5 , |
||
double | nRnuc = 1.0 , |
||
double | NR = 3 , |
||
double | R0 = 1.4 |
||
) |
Hadron survival probability.
Definition at line 283 of file INukeUtils2018.cxx.
References LOG, MeanFreePath(), mfp, pDEBUG, R, and fillBadChanDBTables::step.
double genie::utils::intranuke2018::sigmaTotalOset | ( | const double & | pionKineticEnergy, |
const double & | density, | ||
const int & | pionPDG, | ||
const double & | protonFraction, | ||
const bool & | isTableChosen = true |
||
) |
Definition at line 1886 of file INukeUtils2018.cxx.
References INukeOset::getTotalCrossSection(), INukeOset::setupOset(), and string.
Referenced by MeanFreePath().
void genie::utils::intranuke2018::StepParticle | ( | GHepParticle * | p, |
double | step, | ||
double | nuclear_radius = -1. |
||
) |
Step particle.
Definition at line 406 of file INukeUtils2018.cxx.
References epsilon, LOG, genie::GHepParticle::Name(), genie::GHepParticle::P4(), pDEBUG, pINFO, r(), scale, 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 1043 of file INukeUtils2018.cxx.
References beta, genie::GHepParticle::E(), genie::PDGLibrary::Find(), genie::GHepParticle::FirstMother(), genie::NuclearModelI::GenerateNucleon(), gm, genie::PDGLibrary::Instance(), genie::RandomGen::Instance(), genie::pdg::IsNeutronOrProton(), genie::kIMdHA, genie::kIMdHN, genie::kIStHadronInTheNucleus, genie::kIStStableFinalState, kPi, genie::GHepParticle::LastMother(), LOG, Mag(), genie::utils::res::Mass(), submit_nova_art::mode, genie::NuclearModelI::Momentum3(), genie::GHepParticle::P4(), pDEBUG, genie::GHepParticle::Pdg(), pINFO, pNOTICE, generate_hists::rnd, genie::RandomGen::RndFsi(), genie::GHepParticle::SetFirstMother(), genie::GHepParticle::SetLastMother(), genie::GHepParticle::SetMomentum(), genie::exceptions::INukeException::SetReason(), genie::GHepParticle::SetStatus(), ana::Sqrt(), genie::GHepRecord::TargetNucleus(), and Unit().
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 700 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(), ana::Sqrt(), 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 844 of file INukeUtils2018.cxx.
References beta, gm, genie::RandomGen::Instance(), kPi, LOG, Mag(), pINFO, pNOTICE, generate_hists::rnd, genie::RandomGen::RndFsi(), ana::Sqrt(), and Unit().
Referenced by INukeNucleonCorr::AvgCorrection(), genie::HAIntranuke2018::ElasHA(), and genie::HAIntranuke2018::Inelastic().