34#define INCLXX_IN_GEANT4_MODE 1
45#ifndef G4INCLCOULOMBNONRELATIVISTIC_HH_
46#define G4INCLCOULOMBNONRELATIVISTIC_HH_
100 const G4double nucleusMass =
n->getTableMass();
101 const G4double reducedMass = particleMass*nucleusMass/(particleMass+nucleusMass);
102 const G4double kineticEnergyInCM = kineticEnergy * reducedMass / particleMass;
104 / (kineticEnergyInCM * reducedMass);
105 INCL_DEBUG(
"Minimum distance of approach due to Coulomb = " << theMinimumDistance <<
'\n');
106 return theMinimumDistance;
Placeholder class for no Coulomb distortion.
Abstract interface for Coulomb distortion.
CoulombNone theCoulombNoneSlave
Internal CoulombNone slave to generate the avatars.
G4double getCoulombRadius(ParticleSpecies const &p, Nucleus const *const n) const
Get the Coulomb radius for a given particle.
virtual ~CoulombNonRelativistic()
G4double minimumDistance(Particle const *const p, Nucleus const *const n) const
Return the minimum distance of approach in a head-on collision (b=0).
void distortOut(ParticleList const &pL, Nucleus const *const n) const
Modify the momenta of the outgoing particles.
G4double minimumDistance(ParticleSpecies const &p, const G4double kineticEnergy, Nucleus const *const n) const
Return the minimum distance of approach in a head-on collision (b=0).
G4double maxImpactParameter(ParticleSpecies const &p, const G4double kinE, Nucleus const *const n) const
Return the maximum impact parameter for Coulomb-distorted trajectories.
G4bool coulombDeviation(Particle *const p, Nucleus const *const n) const
Perform Coulomb deviation.
ParticleEntryAvatar * bringToSurface(Particle *const p, Nucleus *const n) const
Modify the momentum of the particle and position it on the surface of the nucleus.
virtual G4INCL::ParticleSpecies getSpecies() const
Get the particle species.
G4double getKineticEnergy() const
Get the particle kinetic energy.
G4double getTableSpeciesMass(const ParticleSpecies &p)
const G4double eSquared
Coulomb conversion factor [MeV*fm].