59 #ifdef G4MULTITHREADED
64 : fLevelManager(nullptr), fTransition(p), fPolarization(nullptr),
65 fVerbose(1),
fPoints(0), vShellNumber(-1), fIndex(0),
104 G4cout <<
"### G4PhotonEvaporation is initialized " <<
this <<
G4endl;
110 #ifdef G4MULTITHREADED
111 G4MUTEXLOCK(&G4PhotonEvaporation::PhotonEvaporationMutex);
115 const G4float GRWfactor = 0.3f;
121 #ifdef G4MULTITHREADED
147 G4cout <<
"G4PhotonEvaporation::EmittedFragment: "
158 G4cout <<
"G4PhotonEvaporation::EmittedFragment: remove "
167 G4cout <<
"G4PhotonEvaporation::EmittedFragment: RDM= "
184 products->push_back(aNucleus);
193 G4cout <<
"G4PhotonEvaporation::BreakUpChain RDM= " <<
fRDM <<
" "
210 products->push_back(gamma);
212 G4cout <<
"G4PhotonEvaporation::BreakUpChain: "
241 G4cout <<
"G4PhotonEvaporation::GetEmissionProbability: Z="
253 static const G4float GREfactor = 5.0f;
289 G4double p0 =
G4Exp(-2.0*xsqr)*gammaR2*gammaE2/(egdp2*egdp2 + gammaR2);
295 gammaR2 = gammaE2*wres2;
296 egdp2 = gammaE2 - eres2;
297 p1 =
G4Exp(2.0*(std::sqrt(levelDensity*
std::abs(fExcEnergy - egam)) - xsqr))
298 *gammaR2*gammaE2/(egdp2*egdp2 + gammaR2);
302 G4cout <<
"Egamma= " << egam <<
" Eex= " << fExcEnergy
303 <<
" p0= " << p0 <<
" p1= " << p1 <<
" sum= "
353 G4bool isDiscrete =
false;
359 G4cout <<
"GenerateGamma: " <<
" Eex= " << eexc
380 G4cout <<
" ntrans= " << ntrans <<
" JP= " << JP1
396 <<
" Exc= " << eexc <<
" Emax= "
399 <<
" Ntr= " << ntrans <<
" discrete: " << isDiscrete
419 <<
" fPoints= " << fPoints <<
" fStep= " <<
fStep <<
G4endl;
430 G4cout <<
"Continues proposes Efinal= " << efinal <<
G4endl;
437 if(efinal >= eexc && 0 <
fIndex) {
451 G4cout <<
"Continues emission efinal(MeV)= " << efinal <<
G4endl;
461 G4cout <<
"Discrete emission from level Index= " <<
fIndex
487 G4cout <<
"Ntrans= " << ntrans <<
" idx= " << idx
488 <<
" ICM= " <<
fICM <<
" JP1= " << JP1 <<
G4endl;
492 if(
fICM && prob < 1.0) {
496 rndm = (rndm - prob)/(1.0 - prob);
519 isDiscrete, isGamma);
528 if(efinal == 0.0 &&
fIndex > 0) {
534 G4cout <<
"Final level E= " << efinal <<
" time= " << time
535 <<
" idxFinal= " <<
fIndex <<
" isDiscrete: " << isDiscrete
536 <<
" isGamma: " << isGamma <<
" multiP= " << multiP
538 <<
" JP1= " << JP1 <<
" JP2= " << JP2 <<
G4endl;