51 const G4double milligray = 1.e-3*gray;
52 const G4double microgray = 1.e-6*gray;
53 const G4double nanogray = 1.e-9*gray;
54 const G4double picogray = 1.e-12*gray;
63 accumulableManager->RegisterAccumulable(
fEdep);
64 accumulableManager->RegisterAccumulable(
fEdep2);
89 G4int nofEvents = run->GetNumberOfEvent();
90 if (nofEvents == 0)
return;
94 accumulableManager->Merge();
98 G4double edep =
fEdep.GetValue();
99 G4double edep2 =
fEdep2.GetValue();
101 G4double rms = edep2 - edep*edep/nofEvents;
102 if (rms > 0.) rms = std::sqrt(rms);
else rms = 0.;
105 G4RunManager::GetRunManager()->GetUserDetectorConstruction());
107 G4double dose = edep/mass;
108 G4double rmsDose = rms/mass;
114 G4RunManager::GetRunManager()->GetUserPrimaryGeneratorAction());
118 const G4ParticleGun* particleGun = generatorAction->GetParticleGun();
119 runCondition += particleGun->GetParticleDefinition()->GetParticleName();
120 runCondition +=
" of ";
121 G4double particleEnergy = particleGun->GetParticleEnergy();
122 runCondition +=
G4BestUnit(particleEnergy,
"Energy");
129 G4double dosePerEvent = edepPerEvent/mass/gray;
140 <<
"--------------------End of Global Run-----------------------";
145 <<
"--------------------End of Local Run------------------------";
150 <<
" The run consists of " << nofEvents <<
" "<< runCondition
152 <<
" Cumulated dose per run, in scoring volume : "
155 <<
"------------------------------------------------------------"