140 theParticleChange.
Clear();
160 if (verboseLevel >= 2) {
162 G4cout <<
"########################################"
163 <<
"########################################"
166 G4cout <<
"Initial projectile A=" <<AP
169 G4cout <<
"Initial target A=" <<AT
172 G4cout <<
"Projectile momentum and Energy/nuc = " <<pP <<
" ," <<E <<
G4endl;
189 G4double bmin = thePhotonSpectrum->GetClosestApproach(AP, ZP, AT, ZT, b);
191 GetCrossSectionForProjectile(AP, ZP, AT, ZT, b, bmin);
193 GetCrossSectionForTarget(AP, ZP, AT, ZT, b, bmin);
195 G4double totCrossSectionP = (*crossSectionP)[0]+(*crossSectionP)[1];
196 G4double totCrossSectionT = (*crossSectionT)[0]+(*crossSectionT)[1];
202 totCrossSectionP / (totCrossSectionP + totCrossSectionT)) {
212 GetWilsonProbabilityForProtonDissociation (AP, ZP))
214 if (verboseLevel >= 2)
215 G4cout <<
"Projectile underwent EM dissociation producing a proton"
223 if (verboseLevel >= 2)
224 G4cout <<
"Projectile underwent EM dissociation producing a neutron"
232 Eg = crossSectionP->GetLowEdgeEnergy(0);
233 if (verboseLevel >= 2)
238 Eg = crossSectionP->GetLowEdgeEnergy(1);
239 if (verboseLevel >= 2)
259 GetWilsonProbabilityForProtonDissociation (AT, ZT))
261 if (verboseLevel >= 2)
262 G4cout <<
"Target underwent EM dissociation producing a proton"
270 if (verboseLevel >= 2)
271 G4cout <<
"Target underwent EM dissociation producing a neutron"
279 Eg = crossSectionT->GetLowEdgeEnergy(0);
280 if (verboseLevel >= 2)
285 Eg = crossSectionT->GetLowEdgeEnergy(1);
286 if (verboseLevel >= 2)
297 theParticleChange.AddSecondary (changedP);
298 if (verboseLevel >= 2)
314 G4double pp = (e+mass1+mass2)*(e+mass1-mass2)*
315 (e-mass1+mass2)*(e-mass1-mass2)/(4.0*e*
e);
331 G4double sintheta = std::sqrt((1.0 - costheta)*(1.0 + costheta));
333 G4ThreeVector direction(sintheta*std::cos(phi),sintheta*std::sin(phi),costheta);
344 theParticleChange.AddSecondary (dynamicNucleon);
345 if (verboseLevel >= 2) {
354 if (verboseLevel >= 2) {
355 G4cout <<
"Dynamic properties of the prefragment:" <<
G4endl;
358 G4cout <<
"Nuclear properties of the prefragment:" <<
G4endl;
363 theExcitationHandler->BreakItUp(*theFragment);
368 G4ReactionProductVector::iterator iter;
369 for (iter = products->begin(); iter != products->end(); ++iter) {
371 (*iter)->GetTotalEnergy(), (*iter)->GetMomentum());
372 theParticleChange.AddSecondary (secondary);
376 delete crossSectionP;
377 delete crossSectionT;
379 if (verboseLevel >= 2)
380 G4cout <<
"########################################"
381 <<
"########################################"
384 return &theParticleChange;
391 G4cout <<
" ****************************************************************"
393 G4cout <<
" EM dissociation model for nuclear-nuclear interactions activated"
395 G4cout <<
" (Written by QinetiQ Ltd for the European Space Agency)"
397 G4cout <<
" ****************************************************************"