148 G4cout <<
"G4EmCalculator::GetDEDX: E(MeV)= " << kinEnergy/
MeV
149 <<
" DEDX(MeV/mm)= " << res*
mm/
MeV
153 <<
" isIon= " <<
isIon
172 G4cout <<
" G4EmCalculator::GetRangeFromRestrictedDEDX: E(MeV)= "
174 <<
" range(mm)= " << res/
mm
193 ed <<
"G4EmCalculator::GetCSDARange: CSDA table is not built; "
194 <<
" use UI command: /process/eLoss/CSDARange true";
195 G4Exception(
"G4EmCalculator::GetCSDARange",
"em0077",
204 G4cout <<
" G4EmCalculator::GetCSDARange: E(MeV)= " << kinEnergy/
MeV
205 <<
" range(mm)= " << res/
mm
242 G4cout <<
"G4EmCalculator::GetKinEnergy: Range(mm)= " << range/
mm
243 <<
" KinE(MeV)= " << res/
MeV
289 G4cout <<
"G4EmCalculator::GetXSPerVolume: E(MeV)= " << kinEnergy/
MeV
290 <<
" cross(cm-1)= " << res*
cm
294 G4cout <<
" idx= " << idx <<
" Escaled((MeV)= "
331 if(x > 0.0) { res = 1.0/
x; }
333 G4cout <<
"G4EmCalculator::GetMeanFreePath: E(MeV)= " << kinEnergy/
MeV
334 <<
" MFP(mm)= " << res/
mm
365 G4cout <<
"### G4EmCalculator: Inverse Range Table for "
383 <<
" e(MeV)= " << kinEnergy/
MeV <<
" cut(MeV)= " << cut/
MeV
391 if(mname ==
"ParamICRU73" || mname ==
"LinhardSorensen" || mname ==
"Atima") {
394 G4cout <<
" ICRU73 ion E(MeV)= " << kinEnergy <<
" ";
396 <<
" DEDX(MeV*cm^2/g)= "
408 <<
" Escaled(MeV)= " << escaled;
412 if(
verbose > 1) {
G4cout <<
" no basePart E(MeV)= " << kinEnergy <<
" "; }
416 <<
" DEDX(MeV*cm^2/g)= "
437 G4cout <<
"At boundary energy(MeV)= " << eth/
MeV
438 <<
" DEDX(MeV/mm)= " << res1*
mm/
MeV
446 if(res1 > 0.0 && escaled > 0.0) {
447 res *= (1.0 + (res0/res1 - 1.0)*eth/escaled);
464 G4cout <<
"After Corrections: DEDX(MeV/mm)= " << res*
mm/
MeV
472 G4cout <<
"Sum: E(MeV)= " << kinEnergy/
MeV
473 <<
" DEDX(MeV/mm)= " << res*
mm/
MeV
475 <<
" cut(MeV)= " << cut/
MeV
479 <<
" isIon=" <<
isIon
498 const std::vector<G4VEnergyLossProcess*> vel =
505 for(
G4int i=0; i<
n; ++i) {
511 dedx +=
ComputeDEDX(kinEnergy,part,(vel[i])->GetProcessName(),mat,cut);
531 const std::vector<G4VEnergyLossProcess*> vel =
545 for(
G4int i=0; i<
n; ++i) {
556 dedx +=
ComputeDEDX(kinEnergy,part,(vel[i])->GetProcessName(),
595 <<
" NuclearDEDX(MeV/mm)= " << res*
mm/
MeV
596 <<
" NuclearDEDX(MeV*cm^2/g)= "
626 G4cout <<
"G4EmCalculator::ComputeXSPerVolume: E(MeV)= " << kinEnergy/
MeV
627 <<
" cross(cm-1)= " << res*
cm
628 <<
" cut(keV)= " << aCut/
keV
665 <<
" cross(barn)= " << res/
barn
667 <<
" Z= " << Z <<
" A= " << A/(
g/
mole) <<
" g/mole"
668 <<
" cut(keV)= " << aCut/
keV
701 <<
" cross(barn)= " << res/
barn
703 <<
" Z= " << Z <<
" shellIdx= " << shellIdx
704 <<
" cut(keV)= " << aCut/
keV
724 if(res > 0.0) { res = 1.0/res; }
757 if(x > 0.0) { mfp = 1.0/
x; }
760 <<
" MFP(mm)= " << mfp/
mm
776 ConvertRangeToEnergy(part, mat, range);
822 G4cout <<
"\n G4EmCalculator::UpdateParticle: isIon 1 "
825 <<
" e= " << kinEnergy <<
G4endl;
855 G4cout <<
"### WARNING: G4EmCalculator::FindParticle fails to find "
879 G4cout <<
"### WARNING: G4EmCalculator::FindMaterial fails to find "
891 if(reg !=
"" && reg !=
"world") {
917 size_t nr = store->size();
919 for(
size_t i=0; i<nr; ++i) {
921 material, ((*store)[i])->GetProductionCuts());
922 if(couple) {
break; }
929 ed <<
"G4EmCalculator::FindCouple: fail for material <"
931 if(region) { ed <<
" and region " << region->
GetName(); }
932 G4Exception(
"G4EmCalculator::FindCouple",
"em0078",
1041 G4cout <<
"G4EmCalculator::FindEmModel WARNING: no particle"
1042 <<
" or materail defined; particle: " << p <<
G4endl;
1051 G4cout <<
"## G4EmCalculator::FindEmModel for " << partname
1053 <<
") and " << processName <<
" at E(MeV)= " << scaledEnergy
1055 if(p != part) {
G4cout <<
" GenericIon is the base particle" <<
G4endl; }
1166 const std::vector<G4VEnergyLossProcess*>
v =
1169 for(
G4int i=0; i<
n; ++i) {
1170 if((v[i])->GetProcessName() == processName) {
1190 for(
G4int i=0; i<
n; ++i) {
1191 auto pName =
v[i]->GetProcessName();
1192 if(pName ==
"GammaGeneralProc") {
1193 proc =
v[i]->GetEmProcess(processName);
1195 }
else if(pName == processName) {
1213 const std::vector<G4VMultipleScattering*>
v =
1216 for(
G4int i=0; i<
n; ++i) {
1217 if((v[i])->GetProcessName() == processName) {
1237 for(
G4int i=0; i<nproc; ++i) {
1238 if(processName == (*pv)[i]->GetProcessName()) {
1255 for(
G4int i=0; i<
n; ++i) {
1256 if((*pv)[i] == proc) {
1291 for(
size_t i=0; i<
nn; ++i) {