34 #define INCLXX_IN_GEANT4_MODE 1
52 namespace NuclearPotential {
72 const G4double theProtonFermiEnergy = std::sqrt(theFermiMomentum*theFermiMomentum + mp*mp) - mp;
76 const G4double theNeutronFermiEnergy = std::sqrt(theFermiMomentum*theFermiMomentum + mn*mn) - mn;
96 vNucleon = 0.5*(theProtonFermiEnergy + theNeutronFermiEnergy) + theAverageSeparationEnergy;
125 INCL_DEBUG(
"Table of separation energies [MeV] for A=" <<
theA <<
", Z=" <<
theZ <<
":" <<
'\n'
151 INCL_DEBUG(
"Table of Fermi energies [MeV] for A=" <<
theA <<
", Z=" <<
theZ <<
":" <<
'\n'
164 INCL_DEBUG(
"Table of Fermi momenta [MeV/c] for A=" <<
theA <<
", Z=" <<
theZ <<
":" <<
'\n'
218 INCL_ERROR(
"Trying to compute potential energy of an unknown particle.");
222 INCL_ERROR(
"Trying to compute potential energy of a malformed particle.");
std::map< ParticleType, G4double > fermiEnergy
const G4int theA
The mass number of the nucleus.
G4ThreadLocal FermiMomentumFn getFermiMomentum
NuclearPotentialConstant(const G4int A, const G4int Z, const G4bool pionPotential)
virtual G4double computePotentialEnergy(const Particle *const p) const
const G4int theZ
The charge number of the nucleus.
G4double getINCLMass(const G4int A, const G4int Z)
Get INCL nuclear mass (in MeV/c^2)
std::map< ParticleType, G4double > separationEnergy
G4double computePionPotentialEnergy(const Particle *const p) const
Compute the potential energy for the given pion.
std::map< ParticleType, G4double > fermiMomentum
double A(double temperature)
G4double computeKaonPotentialEnergy(const Particle *const p) const
Compute the potential energy for the given kaon.
Isospin- and energy-independent nuclear potential.
G4INCL::ParticleType getType() const
virtual ~NuclearPotentialConstant()
G4ThreadLocal SeparationEnergyFn getSeparationEnergy
Static pointer to the separation-energy function.
G4double computePionResonancePotentialEnergy(const Particle *const p) const
Compute the potential energy for the given pion resonances (Eta, Omega and EtaPrime and Gamma also)...