85 if (maxEnergy <= minEnergy) {
return 0.0; }
104 G4double SystemEntropy = 2.0*std::sqrt(
117 G4double Term1 = Beta*a0 - 1.5 + maxea;
118 G4double Term2 = (2.0*Beta*a0-3.0)*std::sqrt(maxea) + 2*maxea;
121 if (SystemEntropy <=
explim) { ExpTerm1 =
G4Exp(-SystemEntropy); }
123 G4double ExpTerm2 = 2.*std::sqrt(maxea) - SystemEntropy;
125 ExpTerm2 =
G4Exp(ExpTerm2);
127 Width = GlobalFactor*(Term1*ExpTerm1 + Term2*ExpTerm2);
176 if(E1 < 0.0) {
return 0.0; }
212 if(maxKinEnergy <= minKinEnergy) {
return 0.0; }
225 if (RbSqrt < 160.0) PEX1 =
G4Exp(-RbSqrt);
230 Rk = 1.0 + (1./RbSqrt)*
G4Log(RandNumber + (1.0-RandNumber)*PEX1);
235 Q1 = 1.0 + Beta/maxKinEnergy;
236 Q2 = Q1*std::sqrt(Q1);
239 FRk =
ssqr3 * Rk * (Q1 - Rk*Rk)/Q2;
244 T = maxKinEnergy * (1.0-Rk*Rk) + minKinEnergy;
252 T = minKinEnergy + delta*i
static G4double GetNuclearMass(const G4double A, const G4double Z)
static const G4double ssqr3
static const G4double invmev
static G4double ComputePowerParameter(G4int resA, G4int idx)
G4double SampleKineticEnergy(G4double minKineticEnergy, G4double maxKineticEnergy)
static G4double ComputePowerParameter(G4int resA, G4int idx)
static G4double ComputeCrossSection(G4double K, G4double resA13, G4double amu1, G4int idx, G4int Z, G4int resZ, G4int resA)
G4EvaporationLevelDensityParameter * theEvapLDPptr
G4double Z13(G4int Z) const
static const G4double explim
static const double twopi
virtual G4double CalcBetaParam(const G4Fragment &fragment)=0
G4double GetPairingCorrection(G4int A, G4int Z) const
G4double EmissionProbability(const G4Fragment &fragment, G4double maxKineticEnergy)
G4double LevelDensityParameter(G4int A, G4int Z, G4double U) const
G4EvaporationProbability(G4int anA, G4int aZ, G4double aGamma, G4VCoulombBarrier *)
G4double GetGroundStateMass() const
virtual G4double CalcAlphaParam(const G4Fragment &fragment)=0
virtual ~G4EvaporationProbability()
G4double G4Log(G4double x)
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
T max(const T t1, const T t2)
brief Return the largest of the two arguments
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
static const double millibarn
G4PairingCorrection * fPairCorr
G4double IntegrateEmissionProbability(G4double low, G4double up)
static G4double ComputeCrossSection(G4double K, G4double resA13, G4double amu1, G4int idx, G4int Z, G4int A, G4int resZ, G4int resA)
G4double ProbabilityDistributionFunction(G4double K)
G4double TotalProbability(const G4Fragment &fragment, G4double minKineticEnergy, G4double maxKineticEnergy)
G4double CrossSection(G4double K)
static const double fermi
G4double GetExcitationEnergy() const