Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4GEMProbability Class Reference

#include <G4GEMProbability.hh>

+ Inheritance diagram for G4GEMProbability:

Public Member Functions

 G4GEMProbability (G4int anA, G4int aZ, G4double aSpin)
 
virtual ~G4GEMProbability ()
 
G4double EmissionProbability (const G4Fragment &fragment, G4double maxKineticEnergy) override
 
void Dump () const
 
G4double GetSpin (void) const
 
void SetCoulomBarrier (const G4VCoulombBarrier *aCoulombBarrierStrategy)
 
G4double GetCoulombBarrier (const G4Fragment &fragment) const
 
G4double CalcAlphaParam (const G4Fragment &) const
 
G4double CalcBetaParam (const G4Fragment &) const
 
- Public Member Functions inherited from G4VEmissionProbability
 G4VEmissionProbability (G4int Z, G4int A)
 
virtual ~G4VEmissionProbability ()=default
 
void Initialise ()
 
virtual G4double ComputeProbability (G4double anEnergy, G4double CB)
 
G4int GetZ (void) const
 
G4int GetA (void) const
 
void SetDecayKinematics (G4int rZ, G4int rA, G4double rmass, G4double fmass)
 
G4double GetRecoilExcitation () const
 
void SetEvapExcitation (G4double exc)
 
G4double GetProbability () const
 
void ResetProbability ()
 
G4double SampleEnergy ()
 
 G4VEmissionProbability (const G4VEmissionProbability &right)=delete
 
const G4VEmissionProbabilityoperator= (const G4VEmissionProbability &right)=delete
 
G4bool operator== (const G4VEmissionProbability &right) const =delete
 
G4bool operator!= (const G4VEmissionProbability &right) const =delete
 

Protected Attributes

G4double fPlanck
 
std::vector< G4doubleExcitEnergies
 
std::vector< G4doubleExcitSpins
 
std::vector< G4doubleExcitLifetimes
 
- Protected Attributes inherited from G4VEmissionProbability
G4NuclearLevelDatapNuclearLevelData
 
G4PowpG4pow
 
G4int OPTxs
 
G4int pVerbose
 
G4int theZ
 
G4int theA
 
G4int resZ = 0
 
G4int resA = 0
 
G4double pMass = 0.0
 
G4double pEvapMass = 0.0
 
G4double pResMass = 0.0
 
G4double pProbability = 0.0
 
G4double pTolerance = 0.0
 

Additional Inherited Members

- Protected Member Functions inherited from G4VEmissionProbability
void ResetIntegrator (size_t nbin, G4double de, G4double eps)
 
G4double IntegrateProbability (G4double elow, G4double ehigh, G4double CB)
 

Detailed Description

Definition at line 53 of file G4GEMProbability.hh.

Constructor & Destructor Documentation

◆ G4GEMProbability()

G4GEMProbability::G4GEMProbability ( G4int anA,
G4int aZ,
G4double aSpin )

Definition at line 58 of file G4GEMProbability.cc.

59 : G4VEmissionProbability(aZ, anA), Spin(aSpin),
60 theCoulombBarrierPtr(nullptr)
61{
62 theEvapLDPptr = new G4EvaporationLevelDensityParameter;
63 fG4pow = G4Pow::GetInstance();
64 fPlanck= CLHEP::hbar_Planck*fG4pow->logZ(2);
66}
static G4NuclearLevelData * GetInstance()
static G4Pow * GetInstance()
Definition G4Pow.cc:41
G4double logZ(G4int Z) const
Definition G4Pow.hh:137
G4VEmissionProbability(G4int Z, G4int A)

◆ ~G4GEMProbability()

G4GEMProbability::~G4GEMProbability ( )
virtual

Definition at line 68 of file G4GEMProbability.cc.

69{
70 delete theEvapLDPptr;
71}

Member Function Documentation

◆ CalcAlphaParam()

G4double G4GEMProbability::CalcAlphaParam ( const G4Fragment & fragment) const
inline

Definition at line 172 of file G4GEMProbability.hh.

173{
174 //JMQ 190709 values according to Furihata's paper (based on notes added
175 //on proof in Dostrovskii's paper)
176 G4double res;
177 if(theZ == 0) {
178 res = 0.76+1.93/fG4pow->Z13(fragment.GetA_asInt()-theA);
179 } else {
180 res = 1.0 + CCoeficient(fragment.GetZ_asInt()-theZ);
181 }
182 return res;
183}
double G4double
Definition G4Types.hh:83
G4int GetZ_asInt() const
G4int GetA_asInt() const
G4double Z13(G4int Z) const
Definition G4Pow.hh:123

Referenced by CalcBetaParam().

◆ CalcBetaParam()

G4double G4GEMProbability::CalcBetaParam ( const G4Fragment & fragment) const
inline

Definition at line 186 of file G4GEMProbability.hh.

187{
188 //JMQ 190709 values according to Furihata's paper (based on notes added
189 //on proof in Dostrovskii's paper)
190 G4double res;
191 if(theZ == 0) {
192 res = (1.66/fG4pow->Z23(fragment.GetA_asInt()-theA)-0.05)*CLHEP::MeV/
193 CalcAlphaParam(fragment);
194 } else {
195 res = -GetCoulombBarrier(fragment);
196 }
197 return res;
198}
G4double GetCoulombBarrier(const G4Fragment &fragment) const
G4double CalcAlphaParam(const G4Fragment &) const
G4double Z23(G4int Z) const
Definition G4Pow.hh:125

◆ Dump()

void G4GEMProbability::Dump ( ) const

Definition at line 285 of file G4GEMProbability.cc.

286{
288 G4double efermi = 0.0;
289 if(theA > 1) {
291 + neutron_mass_c2 - mass;
292 }
293 std::size_t nlev = ExcitEnergies.size();
294 G4cout << "GEM: List of Excited States for Isotope Z= "
295 << theZ << " A= " << theA << " Nlevels= " << nlev
296 << " Efermi(MeV)= " << efermi
297 << G4endl;
298 for(std::size_t i=0; i< nlev; ++i) {
299 G4cout << "Z= " << theZ << " A= " << theA
300 << " Mass(GeV)= " << mass/GeV
301 << " Eexc(MeV)= " << ExcitEnergies[i]
302 << " Time(ns)= " << ExcitLifetimes[i]/ns
303 << G4endl;
304 }
305 G4cout << G4endl;
306}
#define G4endl
Definition G4ios.hh:67
G4GLOB_DLL std::ostream G4cout
std::vector< G4double > ExcitEnergies
std::vector< G4double > ExcitLifetimes
static G4double GetNuclearMass(const G4double A, const G4double Z)

Referenced by G4GEMChannel::Dump().

◆ EmissionProbability()

G4double G4GEMProbability::EmissionProbability ( const G4Fragment & fragment,
G4double maxKineticEnergy )
overridevirtual

Reimplemented from G4VEmissionProbability.

Definition at line 73 of file G4GEMProbability.cc.

75{
76 G4double probability = 0.0;
77
78 if (MaximalKineticEnergy > 0.0 && fragment.GetExcitationEnergy() > 0.0) {
80 G4double InitialLevelDensity = ComputeInitialLevelDensity(fragment);
81 G4double Ux, UxSqrt, UxLog;
82 PrecomputeResidualQuantities(fragment, Ux, UxSqrt, UxLog);
83
84 probability =
85 CalcProbability(fragment,MaximalKineticEnergy,CoulombBarrier,Spin,
86 InitialLevelDensity,Ux,UxSqrt,UxLog);
87
88 // Next there is a loop over excited states for this channel
89 // summing probabilities
90 std::size_t nn = ExcitEnergies.size();
91 if (0 < nn) {
92 for (std::size_t i = 0; i <nn; ++i) {
93 // substract excitation energies
94 G4double Tmax = MaximalKineticEnergy - ExcitEnergies[i];
95 if (Tmax > 0.0) {
96 G4double width = CalcProbability(fragment,Tmax,CoulombBarrier,ExcitSpins[i],
97 InitialLevelDensity,Ux,UxSqrt,UxLog);
98 //JMQ April 2010 added condition to prevent reported crash
99 // update probability
100 if (width > 0. && fPlanck < width*ExcitLifetimes[i]) {
101 probability += width;
102 }
103 }
104 }
105 }
106 }
107 // Normalization = probability;
108 return probability;
109}
G4double GetExcitationEnergy() const
std::vector< G4double > ExcitSpins
G4double CoulombBarrier(const G4int Z1, const G4int A1, const G4int Z2, const G4int A2, const G4double exc)

◆ GetCoulombBarrier()

G4double G4GEMProbability::GetCoulombBarrier ( const G4Fragment & fragment) const
inline

Definition at line 143 of file G4GEMProbability.hh.

144{
145 G4double res = 0.0;
146 if (theCoulombBarrierPtr) {
147 G4int Acomp = fragment.GetA_asInt();
148 G4int Zcomp = fragment.GetZ_asInt();
149 res = theCoulombBarrierPtr->GetCoulombBarrier(Acomp-theA, Zcomp-theZ,
150 fragment.GetExcitationEnergy() -
151 fNucData->GetPairingCorrection(Zcomp,Acomp));
152 }
153 return res;
154}
int G4int
Definition G4Types.hh:85
G4PairingCorrection * GetPairingCorrection()
virtual G4double GetCoulombBarrier(G4int ARes, G4int ZRes, G4double U=0.0) const =0

Referenced by CalcBetaParam(), and EmissionProbability().

◆ GetSpin()

G4double G4GEMProbability::GetSpin ( void ) const
inline

Definition at line 131 of file G4GEMProbability.hh.

132{
133 return Spin;
134}

◆ SetCoulomBarrier()

void G4GEMProbability::SetCoulomBarrier ( const G4VCoulombBarrier * aCoulombBarrierStrategy)
inline

Definition at line 137 of file G4GEMProbability.hh.

138{
139 theCoulombBarrierPtr = aCoulombBarrierStrategy;
140}

Referenced by G4GEMChannel::G4GEMChannel().

Member Data Documentation

◆ ExcitEnergies

std::vector<G4double> G4GEMProbability::ExcitEnergies
protected

Definition at line 121 of file G4GEMProbability.hh.

Referenced by Dump(), EmissionProbability(), G4AlphaGEMProbability::G4AlphaGEMProbability(), G4B10GEMProbability::G4B10GEMProbability(), G4B11GEMProbability::G4B11GEMProbability(), G4B12GEMProbability::G4B12GEMProbability(), G4B13GEMProbability::G4B13GEMProbability(), G4B8GEMProbability::G4B8GEMProbability(), G4Be10GEMProbability::G4Be10GEMProbability(), G4Be11GEMProbability::G4Be11GEMProbability(), G4Be7GEMProbability::G4Be7GEMProbability(), G4Be9GEMProbability::G4Be9GEMProbability(), G4C10GEMProbability::G4C10GEMProbability(), G4C11GEMProbability::G4C11GEMProbability(), G4C12GEMProbability::G4C12GEMProbability(), G4C13GEMProbability::G4C13GEMProbability(), G4C14GEMProbability::G4C14GEMProbability(), G4C15GEMProbability::G4C15GEMProbability(), G4F17GEMProbability::G4F17GEMProbability(), G4F18GEMProbability::G4F18GEMProbability(), G4F19GEMProbability::G4F19GEMProbability(), G4F20GEMProbability::G4F20GEMProbability(), G4F21GEMProbability::G4F21GEMProbability(), G4He6GEMProbability::G4He6GEMProbability(), G4Li6GEMProbability::G4Li6GEMProbability(), G4Li7GEMProbability::G4Li7GEMProbability(), G4Li8GEMProbability::G4Li8GEMProbability(), G4Li9GEMProbability::G4Li9GEMProbability(), G4Mg22GEMProbability::G4Mg22GEMProbability(), G4Mg23GEMProbability::G4Mg23GEMProbability(), G4Mg24GEMProbability::G4Mg24GEMProbability(), G4Mg25GEMProbability::G4Mg25GEMProbability(), G4Mg26GEMProbability::G4Mg26GEMProbability(), G4Mg27GEMProbability::G4Mg27GEMProbability(), G4Mg28GEMProbability::G4Mg28GEMProbability(), G4N12GEMProbability::G4N12GEMProbability(), G4N13GEMProbability::G4N13GEMProbability(), G4N14GEMProbability::G4N14GEMProbability(), G4N15GEMProbability::G4N15GEMProbability(), G4N16GEMProbability::G4N16GEMProbability(), G4N17GEMProbability::G4N17GEMProbability(), G4Na21GEMProbability::G4Na21GEMProbability(), G4Na22GEMProbability::G4Na22GEMProbability(), G4Na23GEMProbability::G4Na23GEMProbability(), G4Na24GEMProbability::G4Na24GEMProbability(), G4Na25GEMProbability::G4Na25GEMProbability(), G4Ne18GEMProbability::G4Ne18GEMProbability(), G4Ne19GEMProbability::G4Ne19GEMProbability(), G4Ne20GEMProbability::G4Ne20GEMProbability(), G4Ne21GEMProbability::G4Ne21GEMProbability(), G4Ne22GEMProbability::G4Ne22GEMProbability(), G4Ne23GEMProbability::G4Ne23GEMProbability(), G4Ne24GEMProbability::G4Ne24GEMProbability(), G4O14GEMProbability::G4O14GEMProbability(), G4O15GEMProbability::G4O15GEMProbability(), G4O16GEMProbability::G4O16GEMProbability(), G4O17GEMProbability::G4O17GEMProbability(), G4O18GEMProbability::G4O18GEMProbability(), and G4O19GEMProbability::G4O19GEMProbability().

◆ ExcitLifetimes

std::vector<G4double> G4GEMProbability::ExcitLifetimes
protected

Definition at line 127 of file G4GEMProbability.hh.

Referenced by Dump(), EmissionProbability(), G4AlphaGEMProbability::G4AlphaGEMProbability(), G4B10GEMProbability::G4B10GEMProbability(), G4B11GEMProbability::G4B11GEMProbability(), G4B12GEMProbability::G4B12GEMProbability(), G4B13GEMProbability::G4B13GEMProbability(), G4B8GEMProbability::G4B8GEMProbability(), G4Be10GEMProbability::G4Be10GEMProbability(), G4Be11GEMProbability::G4Be11GEMProbability(), G4Be7GEMProbability::G4Be7GEMProbability(), G4Be9GEMProbability::G4Be9GEMProbability(), G4C10GEMProbability::G4C10GEMProbability(), G4C11GEMProbability::G4C11GEMProbability(), G4C12GEMProbability::G4C12GEMProbability(), G4C13GEMProbability::G4C13GEMProbability(), G4C14GEMProbability::G4C14GEMProbability(), G4C15GEMProbability::G4C15GEMProbability(), G4F17GEMProbability::G4F17GEMProbability(), G4F18GEMProbability::G4F18GEMProbability(), G4F19GEMProbability::G4F19GEMProbability(), G4F20GEMProbability::G4F20GEMProbability(), G4F21GEMProbability::G4F21GEMProbability(), G4He6GEMProbability::G4He6GEMProbability(), G4Li6GEMProbability::G4Li6GEMProbability(), G4Li7GEMProbability::G4Li7GEMProbability(), G4Li8GEMProbability::G4Li8GEMProbability(), G4Li9GEMProbability::G4Li9GEMProbability(), G4Mg22GEMProbability::G4Mg22GEMProbability(), G4Mg23GEMProbability::G4Mg23GEMProbability(), G4Mg24GEMProbability::G4Mg24GEMProbability(), G4Mg25GEMProbability::G4Mg25GEMProbability(), G4Mg26GEMProbability::G4Mg26GEMProbability(), G4Mg27GEMProbability::G4Mg27GEMProbability(), G4Mg28GEMProbability::G4Mg28GEMProbability(), G4N12GEMProbability::G4N12GEMProbability(), G4N13GEMProbability::G4N13GEMProbability(), G4N14GEMProbability::G4N14GEMProbability(), G4N15GEMProbability::G4N15GEMProbability(), G4N16GEMProbability::G4N16GEMProbability(), G4N17GEMProbability::G4N17GEMProbability(), G4Na21GEMProbability::G4Na21GEMProbability(), G4Na22GEMProbability::G4Na22GEMProbability(), G4Na23GEMProbability::G4Na23GEMProbability(), G4Na24GEMProbability::G4Na24GEMProbability(), G4Na25GEMProbability::G4Na25GEMProbability(), G4Ne18GEMProbability::G4Ne18GEMProbability(), G4Ne19GEMProbability::G4Ne19GEMProbability(), G4Ne20GEMProbability::G4Ne20GEMProbability(), G4Ne21GEMProbability::G4Ne21GEMProbability(), G4Ne22GEMProbability::G4Ne22GEMProbability(), G4Ne23GEMProbability::G4Ne23GEMProbability(), G4Ne24GEMProbability::G4Ne24GEMProbability(), G4O14GEMProbability::G4O14GEMProbability(), G4O15GEMProbability::G4O15GEMProbability(), G4O16GEMProbability::G4O16GEMProbability(), G4O17GEMProbability::G4O17GEMProbability(), G4O18GEMProbability::G4O18GEMProbability(), and G4O19GEMProbability::G4O19GEMProbability().

◆ ExcitSpins

std::vector<G4double> G4GEMProbability::ExcitSpins
protected

Definition at line 124 of file G4GEMProbability.hh.

Referenced by EmissionProbability(), G4AlphaGEMProbability::G4AlphaGEMProbability(), G4B10GEMProbability::G4B10GEMProbability(), G4B11GEMProbability::G4B11GEMProbability(), G4B12GEMProbability::G4B12GEMProbability(), G4B13GEMProbability::G4B13GEMProbability(), G4B8GEMProbability::G4B8GEMProbability(), G4Be10GEMProbability::G4Be10GEMProbability(), G4Be11GEMProbability::G4Be11GEMProbability(), G4Be7GEMProbability::G4Be7GEMProbability(), G4Be9GEMProbability::G4Be9GEMProbability(), G4C10GEMProbability::G4C10GEMProbability(), G4C11GEMProbability::G4C11GEMProbability(), G4C12GEMProbability::G4C12GEMProbability(), G4C13GEMProbability::G4C13GEMProbability(), G4C14GEMProbability::G4C14GEMProbability(), G4C15GEMProbability::G4C15GEMProbability(), G4F17GEMProbability::G4F17GEMProbability(), G4F18GEMProbability::G4F18GEMProbability(), G4F19GEMProbability::G4F19GEMProbability(), G4F20GEMProbability::G4F20GEMProbability(), G4F21GEMProbability::G4F21GEMProbability(), G4He6GEMProbability::G4He6GEMProbability(), G4Li6GEMProbability::G4Li6GEMProbability(), G4Li7GEMProbability::G4Li7GEMProbability(), G4Li8GEMProbability::G4Li8GEMProbability(), G4Li9GEMProbability::G4Li9GEMProbability(), G4Mg22GEMProbability::G4Mg22GEMProbability(), G4Mg23GEMProbability::G4Mg23GEMProbability(), G4Mg24GEMProbability::G4Mg24GEMProbability(), G4Mg25GEMProbability::G4Mg25GEMProbability(), G4Mg26GEMProbability::G4Mg26GEMProbability(), G4Mg27GEMProbability::G4Mg27GEMProbability(), G4Mg28GEMProbability::G4Mg28GEMProbability(), G4N12GEMProbability::G4N12GEMProbability(), G4N13GEMProbability::G4N13GEMProbability(), G4N14GEMProbability::G4N14GEMProbability(), G4N15GEMProbability::G4N15GEMProbability(), G4N16GEMProbability::G4N16GEMProbability(), G4N17GEMProbability::G4N17GEMProbability(), G4Na21GEMProbability::G4Na21GEMProbability(), G4Na22GEMProbability::G4Na22GEMProbability(), G4Na23GEMProbability::G4Na23GEMProbability(), G4Na24GEMProbability::G4Na24GEMProbability(), G4Na25GEMProbability::G4Na25GEMProbability(), G4Ne18GEMProbability::G4Ne18GEMProbability(), G4Ne19GEMProbability::G4Ne19GEMProbability(), G4Ne20GEMProbability::G4Ne20GEMProbability(), G4Ne21GEMProbability::G4Ne21GEMProbability(), G4Ne22GEMProbability::G4Ne22GEMProbability(), G4Ne23GEMProbability::G4Ne23GEMProbability(), G4Ne24GEMProbability::G4Ne24GEMProbability(), G4O14GEMProbability::G4O14GEMProbability(), G4O15GEMProbability::G4O15GEMProbability(), G4O16GEMProbability::G4O16GEMProbability(), G4O17GEMProbability::G4O17GEMProbability(), G4O18GEMProbability::G4O18GEMProbability(), and G4O19GEMProbability::G4O19GEMProbability().

◆ fPlanck

G4double G4GEMProbability::fPlanck
protected

Definition at line 118 of file G4GEMProbability.hh.

Referenced by EmissionProbability(), G4B10GEMProbability::G4B10GEMProbability(), G4B11GEMProbability::G4B11GEMProbability(), G4B12GEMProbability::G4B12GEMProbability(), G4B8GEMProbability::G4B8GEMProbability(), G4Be10GEMProbability::G4Be10GEMProbability(), G4Be11GEMProbability::G4Be11GEMProbability(), G4Be7GEMProbability::G4Be7GEMProbability(), G4Be9GEMProbability::G4Be9GEMProbability(), G4C10GEMProbability::G4C10GEMProbability(), G4C11GEMProbability::G4C11GEMProbability(), G4C12GEMProbability::G4C12GEMProbability(), G4C13GEMProbability::G4C13GEMProbability(), G4C14GEMProbability::G4C14GEMProbability(), G4C15GEMProbability::G4C15GEMProbability(), G4F17GEMProbability::G4F17GEMProbability(), G4F18GEMProbability::G4F18GEMProbability(), G4F19GEMProbability::G4F19GEMProbability(), G4F20GEMProbability::G4F20GEMProbability(), G4GEMProbability(), G4He6GEMProbability::G4He6GEMProbability(), G4Li6GEMProbability::G4Li6GEMProbability(), G4Li7GEMProbability::G4Li7GEMProbability(), G4Li8GEMProbability::G4Li8GEMProbability(), G4Li9GEMProbability::G4Li9GEMProbability(), G4Mg24GEMProbability::G4Mg24GEMProbability(), G4Mg25GEMProbability::G4Mg25GEMProbability(), G4N12GEMProbability::G4N12GEMProbability(), G4N13GEMProbability::G4N13GEMProbability(), G4N14GEMProbability::G4N14GEMProbability(), G4N15GEMProbability::G4N15GEMProbability(), G4N16GEMProbability::G4N16GEMProbability(), G4Na21GEMProbability::G4Na21GEMProbability(), G4Na22GEMProbability::G4Na22GEMProbability(), G4Na23GEMProbability::G4Na23GEMProbability(), G4Ne18GEMProbability::G4Ne18GEMProbability(), G4Ne19GEMProbability::G4Ne19GEMProbability(), G4Ne20GEMProbability::G4Ne20GEMProbability(), G4Ne21GEMProbability::G4Ne21GEMProbability(), G4O14GEMProbability::G4O14GEMProbability(), G4O15GEMProbability::G4O15GEMProbability(), G4O16GEMProbability::G4O16GEMProbability(), G4O17GEMProbability::G4O17GEMProbability(), G4O18GEMProbability::G4O18GEMProbability(), and G4O19GEMProbability::G4O19GEMProbability().


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