Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4INCL::NuclearPotential::NuclearPotentialIsospin Class Reference

#include <G4INCLNuclearPotentialIsospin.hh>

+ Inheritance diagram for G4INCL::NuclearPotential::NuclearPotentialIsospin:

Public Member Functions

 NuclearPotentialIsospin (const G4int A, const G4int Z, const G4bool pionPotential)
 
virtual ~NuclearPotentialIsospin ()
 
virtual G4double computePotentialEnergy (const Particle *const p) const
 
- Public Member Functions inherited from G4INCL::NuclearPotential::INuclearPotential
 INuclearPotential (const G4int A, const G4int Z, const G4bool pionPot)
 
virtual ~INuclearPotential ()
 
G4bool hasPionPotential () const
 Do we have a pion potential?
 
virtual G4double computePotentialEnergy (const Particle *const p) const =0
 
G4double getFermiEnergy (const Particle *const p) const
 Return the Fermi energy for a particle.
 
G4double getFermiEnergy (const ParticleType t) const
 Return the Fermi energy for a particle type.
 
G4double getSeparationEnergy (const Particle *const p) const
 Return the separation energy for a particle.
 
G4double getSeparationEnergy (const ParticleType t) const
 Return the separation energy for a particle type.
 
G4double getFermiMomentum (const Particle *const p) const
 Return the Fermi momentum for a particle.
 
G4double getFermiMomentum (const ParticleType t) const
 Return the Fermi momentum for a particle type.
 

Additional Inherited Members

- Protected Member Functions inherited from G4INCL::NuclearPotential::INuclearPotential
G4double computePionPotentialEnergy (const Particle *const p) const
 Compute the potential energy for the given pion.
 
G4double computeKaonPotentialEnergy (const Particle *const p) const
 Compute the potential energy for the given kaon.
 
G4double computePionResonancePotentialEnergy (const Particle *const p) const
 Compute the potential energy for the given pion resonances (Eta, Omega and EtaPrime and Gamma also).
 
- Protected Attributes inherited from G4INCL::NuclearPotential::INuclearPotential
const G4int theA
 The mass number of the nucleus.
 
const G4int theZ
 The charge number of the nucleus.
 
std::map< ParticleType, G4doublefermiEnergy
 
std::map< ParticleType, G4doublefermiMomentum
 
std::map< ParticleType, G4doubleseparationEnergy
 

Detailed Description

Definition at line 56 of file G4INCLNuclearPotentialIsospin.hh.

Constructor & Destructor Documentation

◆ NuclearPotentialIsospin()

G4INCL::NuclearPotential::NuclearPotentialIsospin::NuclearPotentialIsospin ( const G4int  A,
const G4int  Z,
const G4bool  pionPotential 
)

Definition at line 57 of file G4INCLNuclearPotentialIsospin.cc.

58 : INuclearPotential(A, Z, aPionPotential)
59 {
60 initialize();
61 }
const G4int Z[17]
const G4double A[17]
INuclearPotential(const G4int A, const G4int Z, const G4bool pionPot)

◆ ~NuclearPotentialIsospin()

G4INCL::NuclearPotential::NuclearPotentialIsospin::~NuclearPotentialIsospin ( )
virtual

Definition at line 64 of file G4INCLNuclearPotentialIsospin.cc.

64{}

Member Function Documentation

◆ computePotentialEnergy()

G4double G4INCL::NuclearPotential::NuclearPotentialIsospin::computePotentialEnergy ( const Particle *const  p) const
virtual

Implements G4INCL::NuclearPotential::INuclearPotential.

Reimplemented in G4INCL::NuclearPotential::NuclearPotentialEnergyIsospin, and G4INCL::NuclearPotential::NuclearPotentialEnergyIsospinSmooth.

Definition at line 198 of file G4INCLNuclearPotentialIsospin.cc.

198 {
199
200 switch( particle->getType() )
201 {
202 case Proton:
203 return vProton;
204 break;
205 case Neutron:
206 return vNeutron;
207 break;
208
209 case PiPlus:
210 case PiZero:
211 case PiMinus:
212 return computePionPotentialEnergy(particle);
213 break;
214
215 case SigmaPlus:
216 return vSigmaPlus;
217 break;
218 case SigmaZero:
219 return vSigmaZero;
220 break;
221 case Lambda:
222 return vLambda;
223 break;
224 case SigmaMinus:
225 return vSigmaMinus;
226 break;
227
228 case Eta:
229 case Omega:
230 case EtaPrime:
232 break;
233
234 case KPlus:
235 case KZero:
236 case KZeroBar:
237 case KMinus:
238 case KShort:
239 case KLong:
240 return computeKaonPotentialEnergy(particle);
241 break;
242
243 case Photon:
244 return 0.0;
245 break;
246
247 case DeltaPlusPlus:
248 return vDeltaPlusPlus;
249 break;
250 case DeltaPlus:
251 return vDeltaPlus;
252 break;
253 case DeltaZero:
254 return vDeltaZero;
255 break;
256 case DeltaMinus:
257 return vDeltaMinus;
258 break;
259 case Composite:
260 INCL_ERROR("No potential computed for particle of type Cluster.");
261 return 0.0;
262 break;
263 case UnknownParticle:
264 INCL_ERROR("Trying to compute potential energy for an unknown particle.");
265 return 0.0;
266 break;
267 }
268
269 INCL_ERROR("There is no potential for this type of particle.");
270 return 0.0;
271 }
#define INCL_ERROR(x)
G4double computePionPotentialEnergy(const Particle *const p) const
Compute the potential energy for the given pion.
G4double computePionResonancePotentialEnergy(const Particle *const p) const
Compute the potential energy for the given pion resonances (Eta, Omega and EtaPrime and Gamma also).
G4double computeKaonPotentialEnergy(const Particle *const p) const
Compute the potential energy for the given kaon.

Referenced by G4INCL::NuclearPotential::NuclearPotentialEnergyIsospin::computePotentialEnergy(), and G4INCL::NuclearPotential::NuclearPotentialEnergyIsospinSmooth::computePotentialEnergy().


The documentation for this class was generated from the following files: