Geant4
10.02.p02
|
Cross sections used in INCL Multipions. More...
#include <G4INCLCrossSectionsMultiPions.hh>
Public Member Functions | |
CrossSectionsMultiPions () | |
virtual G4double | elastic (Particle const *const p1, Particle const *const p2) |
Elastic particle-particle cross section. More... | |
virtual G4double | total (Particle const *const p1, Particle const *const p2) |
Total (elastic+inelastic) particle-particle cross section. More... | |
virtual G4double | NDeltaToNN (Particle const *const p1, Particle const *const p2) |
Cross section for NDelta->NN. More... | |
virtual G4double | NNToNDelta (Particle const *const p1, Particle const *const p2) |
Cross section for Delta production - NN Channel. More... | |
virtual G4double | piNToDelta (Particle const *const p1, Particle const *const p2) |
Cross section for Delta production - piN Channel. More... | |
virtual G4double | piNToxPiN (const G4int xpi, Particle const *const p1, Particle const *const p2) |
Cross section for X pion production - piN Channel. More... | |
virtual G4double | NNToxPiNN (const G4int xpi, Particle const *const p1, Particle const *const p2) |
Cross section for X pion production - NN Channel. More... | |
virtual G4double | calculateNNAngularSlope (G4double energyCM, G4int iso) |
Calculate the slope of the NN DDXS. More... | |
Public Member Functions inherited from G4INCL::ICrossSections | |
ICrossSections () | |
virtual | ~ICrossSections () |
Protected Member Functions | |
G4double | NNElastic (Particle const *const part1, Particle const *const part2) |
Internal implementation of the NN elastic cross section. More... | |
G4double | NNElasticFixed (const G4double s, const G4int i) |
Internal implementation of the NN elastic cross section with fixed isospin. More... | |
G4double | NNTot (Particle const *const part1, Particle const *const part2) |
Internal implementation of the NN total cross section. More... | |
G4double | NNTotFixed (const G4double s, const G4int i) |
Internal implementation of the NN total cross section with fixed isospin. More... | |
G4double | NNInelasticIso (const G4double ener, const G4int iso) |
Internal implementation of the isospin dependent NN reaction cross section. More... | |
virtual G4double | NNOnePiOrDelta (const G4double ener, const G4int iso, const G4double xsiso) |
Cross section for direct 1-pion production + delta production - NN entrance channel. More... | |
virtual G4double | NNTwoPi (const G4double ener, const G4int iso, const G4double xsiso) |
Cross section for direct 2-pion production - NN entrance channel. More... | |
virtual G4double | NNThreePi (const G4double ener, const G4int iso, const G4double xsiso, const G4double xs1pi, const G4double xs2pi) |
Cross section for direct 3-pion production - NN entrance channel. More... | |
virtual G4double | NNOnePi (Particle const *const part1, Particle const *const part2) |
Cross section for direct 1-pion production - NN entrance channel. More... | |
virtual G4double | NNOnePiOrDelta (Particle const *const part1, Particle const *const part2) |
Cross section for direct 1-pion production - NN entrance channel. More... | |
virtual G4double | NNTwoPi (Particle const *const part1, Particle const *const part2) |
Cross section for direct 2-pion production - NN entrance channel. More... | |
virtual G4double | NNThreePi (Particle const *const part1, Particle const *const part2) |
Cross section for direct 3-pion production - NN entrance channel. More... | |
virtual G4double | NNFourPi (Particle const *const part1, Particle const *const part2) |
Cross section for direct 4-pion production - NN entrance channel. More... | |
G4double | spnPiPlusPHE (const G4double x) |
Internal function for pion cross sections. More... | |
G4double | spnPiMinusPHE (const G4double x) |
Internal function for pion cross sections. More... | |
G4double | piNIne (Particle const *const p1, Particle const *const p2) |
G4double | piNTot (Particle const *const p1, Particle const *const p2) |
G4double | piNTopiN (Particle const *const p1, Particle const *const p2) |
virtual G4double | piNOnePi (Particle const *const p1, Particle const *const p2) |
Cross section for One (more) pion production - piN entrance channel. More... | |
virtual G4double | piNTwoPi (Particle const *const p1, Particle const *const p2) |
Cross section for Two (more) pion production - piN entrance channel. More... | |
Protected Attributes | |
const HornerC7 | s11pzHC |
Horner coefficients for s11pz. More... | |
const HornerC8 | s01ppHC |
Horner coefficients for s01pp. More... | |
const HornerC4 | s01pzHC |
Horner coefficients for s01pz. More... | |
const HornerC4 | s11pmHC |
Horner coefficients for s11pm. More... | |
const HornerC5 | s12pmHC |
Horner coefficients for s12pm. More... | |
const HornerC3 | s12ppHC |
Horner coefficients for s12pp. More... | |
const HornerC4 | s12zzHC |
Horner coefficients for s12zz. More... | |
const HornerC4 | s02pzHC |
Horner coefficients for s02pz. More... | |
const HornerC6 | s02pmHC |
Horner coefficients for s02pm. More... | |
const HornerC4 | s12mzHC |
Horner coefficients for s12mz. More... | |
Static Protected Attributes | |
static const G4int | nMaxPiNN = 4 |
Maximum number of outgoing pions in NN collisions. More... | |
static const G4int | nMaxPiPiN = 4 |
Maximum number of outgoing pions in piN collisions. More... | |
static const G4double | s11pzOOT = 0.0035761542037692665889 |
One over threshold for s11pz. More... | |
static const G4double | s01ppOOT = 0.003421025623481919853 |
One over threshold for s01pp. More... | |
static const G4double | s01pzOOT = 0.0035739814152966403123 |
One over threshold for s01pz. More... | |
static const G4double | s11pmOOT = 0.0034855350296270480281 |
One over threshold for s11pm. More... | |
static const G4double | s12pmOOT = 0.0016672224074691565119 |
One over threshold for s12pm. More... | |
static const G4double | s12ppOOT = 0.0016507643038726931312 |
One over threshold for s12pp. More... | |
static const G4double | s12zzOOT = 0.0011111111111111111111 |
One over threshold for s12zz. More... | |
static const G4double | s02pzOOT = 0.00125 |
One over threshold for s02pz. More... | |
static const G4double | s02pmOOT = 0.0016661112962345883443 |
One over threshold for s02pm. More... | |
static const G4double | s12mzOOT = 0.0017047391749062392793 |
One over threshold for s12mz. More... | |
Cross sections used in INCL Multipions.
Definition at line 54 of file G4INCLCrossSectionsMultiPions.hh.
G4INCL::CrossSectionsMultiPions::CrossSectionsMultiPions | ( | ) |
Definition at line 71 of file G4INCLCrossSectionsMultiPions.cc.
|
virtual |
Calculate the slope of the NN DDXS.
energyCM | energy in the CM frame, in MeV |
iso | total isospin of the system |
Implements G4INCL::ICrossSections.
Definition at line 826 of file G4INCLCrossSectionsMultiPions.cc.
References x.
|
virtual |
Elastic particle-particle cross section.
Implements G4INCL::ICrossSections.
Reimplemented in G4INCL::CrossSectionsTruncatedMultiPions.
Definition at line 809 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::Particle::isNucleon(), G4INCL::Particle::isPion(), NNElastic(), piNIne(), piNToDelta(), and piNTot().
Referenced by NNTot(), and total().
|
virtual |
Cross section for NDelta->NN.
Implements G4INCL::ICrossSections.
Definition at line 751 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, G4INCL::ParticleTable::effectiveNucleonMass2, G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getMass(), G4INCL::Particle::getType(), G4INCL::Particle::isDelta(), NNInelasticIso(), NNOnePiOrDelta(), s, G4INCL::KinematicsUtils::squareTotalEnergyInCM(), and x.
Referenced by NNTot(), and total().
|
protected |
Internal implementation of the NN elastic cross section.
Definition at line 85 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isNucleon(), G4INCL::KinematicsUtils::momentumInLab(), NNElasticFixed(), s, and G4INCL::KinematicsUtils::squareTotalEnergyInCM().
Referenced by elastic(), G4INCL::CrossSectionsTruncatedMultiPions::elastic(), and NNFourPi().
|
protected |
Internal implementation of the NN elastic cross section with fixed isospin.
Definition at line 118 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, and G4INCL::KinematicsUtils::momentumInLab().
Referenced by NNElastic(), and NNInelasticIso().
|
protectedvirtual |
Cross section for direct 4-pion production - NN entrance channel.
Definition at line 518 of file G4INCLCrossSectionsMultiPions.cc.
References NNElastic(), NNOnePiOrDelta(), NNThreePi(), NNTot(), NNTwoPi(), s, and G4INCL::KinematicsUtils::squareTotalEnergyInCM().
Referenced by NNToxPiNN().
|
protected |
Internal implementation of the isospin dependent NN reaction cross section.
Definition at line 220 of file G4INCLCrossSectionsMultiPions.cc.
References NNElasticFixed(), NNTotFixed(), and s.
Referenced by NDeltaToNN(), NNOnePi(), NNOnePiOrDelta(), NNThreePi(), and NNTwoPi().
|
protectedvirtual |
Cross section for direct 1-pion production - NN entrance channel.
Definition at line 449 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), NNInelasticIso(), NNOnePiOrDelta(), and G4INCL::KinematicsUtils::totalEnergyInCM().
Referenced by NNToxPiNN().
|
protectedvirtual |
Cross section for direct 1-pion production + delta production - NN entrance channel.
Definition at line 244 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, G4INCL::BystrickyEvaluator< N >::eval(), G4INCL::KinematicsUtils::momentumInLab(), NNTwoPi(), s, s01ppHC, s01ppOOT, s01pzHC, s01pzOOT, s11pmHC, s11pmOOT, s11pzHC, and s11pzOOT.
Referenced by NDeltaToNN(), NNFourPi(), NNOnePi(), NNOnePiOrDelta(), NNThreePi(), NNToNDelta(), and NNTwoPi().
|
protectedvirtual |
Cross section for direct 1-pion production - NN entrance channel.
Definition at line 463 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), NNInelasticIso(), NNOnePiOrDelta(), and G4INCL::KinematicsUtils::totalEnergyInCM().
|
protectedvirtual |
Cross section for direct 3-pion production - NN entrance channel.
Definition at line 417 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, G4INCL::KinematicsUtils::momentumInLab(), and s.
Referenced by NNFourPi(), NNThreePi(), and NNToxPiNN().
|
protectedvirtual |
Cross section for direct 3-pion production - NN entrance channel.
Definition at line 496 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), NNInelasticIso(), NNOnePiOrDelta(), NNThreePi(), NNTwoPi(), and G4INCL::KinematicsUtils::totalEnergyInCM().
|
virtual |
Cross section for Delta production - NN Channel.
Implements G4INCL::ICrossSections.
Definition at line 800 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), and NNOnePiOrDelta().
|
protected |
Internal implementation of the NN total cross section.
Definition at line 160 of file G4INCLCrossSectionsMultiPions.cc.
References elastic(), G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isDelta(), G4INCL::Particle::isNucleon(), NDeltaToNN(), NNTotFixed(), s, and G4INCL::KinematicsUtils::squareTotalEnergyInCM().
Referenced by NNFourPi(), and total().
Internal implementation of the NN total cross section with fixed isospin.
Definition at line 177 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, and G4INCL::KinematicsUtils::momentumInLab().
Referenced by NNInelasticIso(), and NNTot().
|
virtual |
Cross section for X pion production - NN Channel.
Implements G4INCL::ICrossSections.
Reimplemented in G4INCL::CrossSectionsTruncatedMultiPions.
Definition at line 526 of file G4INCLCrossSectionsMultiPions.cc.
References NNFourPi(), NNOnePi(), NNThreePi(), and NNTwoPi().
Referenced by G4INCL::CrossSectionsTruncatedMultiPions::NNToxPiNN().
|
protectedvirtual |
Cross section for direct 2-pion production - NN entrance channel.
Definition at line 326 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::effectiveNucleonMass, G4INCL::BystrickyEvaluator< N >::eval(), G4INCL::KinematicsUtils::momentumInLab(), NNOnePiOrDelta(), s, s02pmHC, s02pmOOT, s02pzHC, s02pzOOT, s12mzHC, s12mzOOT, s12pmHC, s12pmOOT, s12ppHC, s12ppOOT, s12zzHC, and s12zzOOT.
Referenced by NNFourPi(), NNOnePiOrDelta(), NNThreePi(), NNToxPiNN(), and NNTwoPi().
|
protectedvirtual |
Cross section for direct 2-pion production - NN entrance channel.
Definition at line 477 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), NNInelasticIso(), NNTwoPi(), and G4INCL::KinematicsUtils::totalEnergyInCM().
|
protected |
Definition at line 626 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isNucleon(), G4INCL::KinematicsUtils::momentumInLab(), G4InuclParticleNames::nucleon(), and G4InuclParticleNames::pion().
Referenced by elastic(), G4INCL::CrossSectionsTruncatedMultiPions::elastic(), piNOnePi(), piNToxPiN(), and piNTwoPi().
|
protectedvirtual |
Cross section for One (more) pion production - piN entrance channel.
Definition at line 866 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isNucleon(), G4INCL::KinematicsUtils::momentumInLab(), G4InuclParticleNames::nucleon(), piNIne(), and G4InuclParticleNames::pion().
Referenced by piNToxPiN(), and piNTwoPi().
|
virtual |
Cross section for Delta production - piN Channel.
Implements G4INCL::ICrossSections.
Reimplemented in G4INCL::CrossSectionsTruncatedMultiPions.
Definition at line 681 of file G4INCLCrossSectionsMultiPions.cc.
References f3, G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isPion(), G4INCL::KinematicsUtils::totalEnergyInCM(), and x.
Referenced by elastic(), G4INCL::CrossSectionsTruncatedMultiPions::elastic(), and G4INCL::CrossSectionsTruncatedMultiPions::piNToDelta().
|
protected |
|
protected |
Definition at line 714 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), INCL_ERROR, G4INCL::Particle::isPion(), G4INCL::Particle::print(), spnPiMinusPHE(), spnPiPlusPHE(), G4INCL::KinematicsUtils::totalEnergyInCM(), and x.
Referenced by elastic(), G4INCL::CrossSectionsTruncatedMultiPions::elastic(), and total().
|
virtual |
Cross section for X pion production - piN Channel.
Implements G4INCL::ICrossSections.
Reimplemented in G4INCL::CrossSectionsTruncatedMultiPions.
Definition at line 849 of file G4INCLCrossSectionsMultiPions.cc.
References piNIne(), piNOnePi(), and piNTwoPi().
Referenced by G4INCL::CrossSectionsTruncatedMultiPions::piNToDelta(), and G4INCL::CrossSectionsTruncatedMultiPions::piNToxPiN().
|
protectedvirtual |
Cross section for Two (more) pion production - piN entrance channel.
Definition at line 922 of file G4INCLCrossSectionsMultiPions.cc.
References G4INCL::ParticleTable::getIsospin(), G4INCL::Particle::getType(), G4INCL::Particle::isNucleon(), G4INCL::KinematicsUtils::momentumInLab(), G4InuclParticleNames::nucleon(), piNIne(), piNOnePi(), and G4InuclParticleNames::pion().
Referenced by piNToxPiN().
Internal function for pion cross sections.
Definition at line 576 of file G4INCLCrossSectionsMultiPions.cc.
Referenced by piNTot().
Internal function for pion cross sections.
Definition at line 546 of file G4INCLCrossSectionsMultiPions.cc.
Referenced by piNTot().
|
virtual |
Total (elastic+inelastic) particle-particle cross section.
Implements G4INCL::ICrossSections.
Definition at line 608 of file G4INCLCrossSectionsMultiPions.cc.
References elastic(), G4INCL::Particle::isDelta(), G4INCL::Particle::isNucleon(), G4INCL::Particle::isPion(), NDeltaToNN(), NNTot(), and piNTot().
|
staticprotected |
Maximum number of outgoing pions in NN collisions.
Definition at line 90 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by G4INCL::CrossSectionsTruncatedMultiPions::NNToxPiNN().
|
staticprotected |
Maximum number of outgoing pions in piN collisions.
Definition at line 93 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by G4INCL::CrossSectionsTruncatedMultiPions::piNToDelta(), and G4INCL::CrossSectionsTruncatedMultiPions::piNToxPiN().
|
protected |
Horner coefficients for s01pp.
Definition at line 98 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
staticprotected |
One over threshold for s01pp.
Definition at line 119 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
protected |
Horner coefficients for s01pz.
Definition at line 100 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
staticprotected |
One over threshold for s01pz.
Definition at line 121 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
protected |
Horner coefficients for s02pm.
Definition at line 112 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s02pm.
Definition at line 133 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
protected |
Horner coefficients for s02pz.
Definition at line 110 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s02pz.
Definition at line 131 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
protected |
Horner coefficients for s11pm.
Definition at line 102 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
staticprotected |
One over threshold for s11pm.
Definition at line 123 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
protected |
Horner coefficients for s11pz.
Definition at line 96 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
staticprotected |
One over threshold for s11pz.
Definition at line 117 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNOnePiOrDelta().
|
protected |
Horner coefficients for s12mz.
Definition at line 114 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s12mz.
Definition at line 135 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
protected |
Horner coefficients for s12pm.
Definition at line 104 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s12pm.
Definition at line 125 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
protected |
Horner coefficients for s12pp.
Definition at line 106 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s12pp.
Definition at line 127 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
protected |
Horner coefficients for s12zz.
Definition at line 108 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().
|
staticprotected |
One over threshold for s12zz.
Definition at line 129 of file G4INCLCrossSectionsMultiPions.hh.
Referenced by NNTwoPi().