192 G4cout <<
"G4MuonicAtomDecay::DecayIt time set to: "<< maDTime/
ns <<
"[ns]" <<
G4endl;
211 G4cout <<
"G4MuonicAtomDecay::DecayIt: selected DIO mode" <<
G4endl;
223 if ( decaychannel ==0) {
226 ed <<
"Can not determine decay channel for "
228 <<
" mass of dynamic particle: " << massParent/
GeV <<
" (GEV)" <<
G4endl
229 <<
" dacay table has " << decaytable->
entries() <<
" entries" <<
G4endl;
231 if (massParent < 0.) {
233 ed <<
"Using PDG mass ("<<checkedmass/
GeV <<
"(GeV)) in IsOKWithParentMass" <<
G4endl;
237 ed << ic <<
": BR " << dc->
GetBR() <<
", IsOK? "
241 for (
G4int id=0;
id<ndaughters;++id) {
242 if (
id>0) ed <<
" + ";
253 G4cout <<
"G4MuonicAtomDecay::DecayIt : selected decay channel addr:"
261 ed <<
"No products are generated for "
280 if (ParentEnergy < ParentMass) {
282 G4cout <<
"G4MuonicAtomDecay::DecayIt : Total Energy is less than its mass" <<
G4endl;
284 G4cout <<
" Energy:" << ParentEnergy/
MeV <<
"[MeV]";
285 G4cout <<
" Mass:" << ParentMass/
MeV <<
"[MeV]";
290 "Total Energy is less than its mass");
291 ParentEnergy = ParentMass;
302 finalGlobalTime += maDTime;
303 finalLocalTime += maDTime;
307 products->
Boost( ParentEnergy, ParentDirection);
316 G4cout <<
"G4MuonicAtomDecay::DecayIt : Decay vertex :";
317 G4cout <<
" Time: " << finalGlobalTime/
ns <<
"[ns]";
322 G4cout <<
"G4MuonicAtomDecay::DecayIt : decay products in Lab. Frame" <<
G4endl;
329 for (index=0; index < numberOfSecondaries; index++)
365 G4cout <<
"G4MuonicAtomDecay::DecayIt: selected NC mode" <<
G4endl;
383 G4int reentryCount = 0;
399 ed <<
" ApplyYourself failed" <<
G4endl;
400 G4Exception(
"G4MuonicAtomDecay::DecayIt",
"HAD_MAD_101",
407 if(reentryCount>100) {
414 ed <<
" ApplyYourself does not completed after 100 attempts" <<
G4endl;
415 G4Exception(
"G4MuonicAtomDecay::DecayIt",
"HAD_MAD_102",
423 for(
G4int i=0; i<nsec; ++i) {
429 G4cout <<
"G4MuonicAtomDecay::DecayIt time set to: "
430 << (maDTime + ctime)/
ns <<
"[ns]" <<
G4endl;
451 outFile <<
"MuonicAtom process where Muon decays in orbit or is captured by the nucleus." <<
G4endl;
466 if(efinal < 0.0) { efinal = 0.0; }
474 }
else if(0.0 == efinal) {
486 G4double newP = std::sqrt(efinal*(efinal + 2*mass));
489 newP4.
rotate(rotation, it);
492 newE = newP4.
e() -
mass;
496 DumpState(aT,
"Primary has zero energy after interaction",ed);
500 if(newE < 0.0) { newE = 0.0; }
514 for (
G4int i = 0; i < nSec; ++i) {
516 theM.
rotate(rotation, it);
522 if (time < 0.0) { time = 0.0; }
549 DumpState(aT,
"Secondary has zero energy",ed);
552 G4Exception(
"G4MuonicAtomDecay::FillResults",
"HAD_MAD_103",
568 ed <<
"Unrecoverable error in the method " << method <<
" of "
570 ed <<
"TrackID= "<< aTrack.
GetTrackID() <<
" ParentID= "
618 if ( rKineticEnergy > HighestValue) {
620 pathlength = ( rKineticEnergy + 1.0)* aCtau;
621 }
else if ( rKineticEnergy <
DBL_MIN ) {
625 G4cout <<
"G4MuonicAtomDecay::GetMeanFreePath() !!particle stops!!";