119 G4cout <<
"In G4GeneralSpaceNNCrossSection::GetCrossSection" <<
G4endl;
120 G4cout <<
"Projectile A = " <<std::setw(8) <<AP
121 <<
" Z = " <<std::setw(8) <<ZP
124 G4cout <<
"Target Z = " <<std::setw(8) <<ZT
134 G4cout <<
"Selecting G4ProtonInelasticCrossSection" <<
G4endl;
141 G4cout <<
"Selecting G4TripathiLightCrossSection" <<
G4endl;
158 G4cout <<
"Selecting G4TripathiLightCrossSection" <<
G4endl;
168 G4cout <<
"Selecting G4TripathiLightCrossSection" <<
G4endl;
199 outFile <<
"G4GeneralSpaceNNCrossSection calculates hadronic inelastic\n" 200 <<
"cross sections of interest in space science, by using the\n" 201 <<
"following cross sections:\n" 202 <<
"- G4ProtonInelasticCrossSection : for proton projectile\n" 203 <<
" on targets with Z > 5;\n" 204 <<
"- G4TripathiLightCrossSection : for proton projectile\n" 205 <<
" on targets with Z <= 5;\n" 206 <<
" for targets with Z = 1 and projectile Z <= 5;\n" 207 <<
" for neutron, or deuteron, or 3He, or alpha projectile\n" 208 <<
" with kinetic energy less than 10 GeV per nucleon,\n" 209 <<
" in any target;\n" 210 <<
" for 3He and 4He targets, for any projectile with\n" 211 <<
" kinetic energy less than 10 GeV per nucleon;\n" 212 <<
"- G4IonProtonCrossSection : for projectile with Z > 5\n" 213 <<
" on hydrogen target;\n" 214 <<
"- G4TripathiCrossSection : for any projectile with A >=3\n" 215 <<
" and kinetic energy less than 1 GeV per nucleon,\n" 216 <<
" for any target, if the previous cross section is\n" 217 <<
" not applicable;\n" 218 <<
"- G4IonsShenCrossSection : in all remaining cases, up to\n" 219 <<
" projectile kinetic energy of 1 TeV per nucleon.\n";
G4int GetBaryonNumber() const
G4ProtonInelasticCrossSection * protonInelastic
G4IonProtonCrossSection * ionProton
G4double GetKineticEnergy() const
G4GLOB_DLL std::ostream G4cout
virtual G4bool IsElementApplicable(const G4DynamicParticle *theProjectile, G4int Z, const G4Material *)
virtual void CrossSectionDescription(std::ostream &outFile) const
virtual G4double GetElementCrossSection(const G4DynamicParticle *theProjectile, G4int Z, const G4Material *)
G4GeneralSpaceNNCrossSection()
static G4Proton * Proton()
G4TripathiLightCrossSection * TripathiLight
G4TripathiCrossSection * TripathiGeneral
virtual G4bool IsElementApplicable(const G4DynamicParticle *aDP, G4int Z, const G4Material *)
G4IonsShenCrossSection * Shen
static const double millibarn
virtual G4bool IsElementApplicable(const G4DynamicParticle *theProjectile, G4int Z, const G4Material *)
G4ParticleDefinition * GetDefinition() const
~G4GeneralSpaceNNCrossSection()
static const double eplus
G4double GetPDGCharge() const
virtual G4bool IsElementApplicable(const G4DynamicParticle *aPart, G4int Z, const G4Material *)