68 if( (Uexcite-exciteE) < 0.0 || exciteE < 0 || Uexcite <= 0)
return theProb;
77 G4double levelDensBef = std::exp(2.0*std::sqrt(aLevelDensityParam*Uexcite));
78 G4double levelDensAft = std::exp(2.0*std::sqrt(aLevelDensityParam*(Uexcite-exciteE)));
85 G4double sigma0 = 2.5 * Afrag * millibarn;
90 const G4double normC = 1.0 / ((pi * hbarc)*(pi * hbarc));
104 G4double numerator = sigma0 * exciteE*exciteE * GammaR*GammaR;
105 G4double denominator = (exciteE*exciteE - Egdp*Egdp)*
106 (exciteE*exciteE - Egdp*Egdp) + GammaR*GammaR*exciteE*exciteE;
108 G4double sigmaAbs = numerator/denominator;
110 theProb = normC * sigmaAbs * exciteE*exciteE *
111 levelDensAft/levelDensBef;
135 G4double Uafter = Uexcite - exciteE;
141 const G4int numIters = 25;
147 EmissionIntegration(frag,exciteE,lowerLim,upperLim,numIters);
149 if(integ > 0.0) theProb = integ;
151 return theProb * ScaleFactor;
165 const G4double root3 = 1.0/std::sqrt(3.0);
167 G4double Step = (upLim-lowLim)/(2.0*numIters);
174 for(
G4int i = 0; i < numIters; i++) {
180 mean += E1ProbDensityA + E1ProbDensityB;
184 if(mean*Step > 0.0) theInt = mean*Step;
G4double LevelDensityParameter(const G4int A, const G4int, const G4double) const
virtual ~G4E1SingleProbability1()
G4double EmissionProbability(const G4Fragment &frag, G4double excite)
G4double EmissionProbDensity(const G4Fragment &frag, G4double ePhoton)
G4double GetExcitationEnergy() const
static G4Pow * GetInstance()
G4double powZ(G4int Z, G4double y)