93 firstParticle(nullptr),
94 currParticle(nullptr),
97 latDisplacement(
true),
99 fDispBeyondSafety(
false),
100 fNewPosition(0.,0.,0.),
101 fNewDirection(0.,0.,1.)
157 for(
auto & msc :
mscModels) {
if(msc == p) {
return; } }
158 mscModels.push_back(p);
174 G4cout <<
"### G4VMultipleScattering::PrepearPhysicsTable() for "
187 if(pname !=
"deuteron" && pname !=
"triton" &&
188 pname !=
"alpha+" && pname !=
"helium" &&
189 pname !=
"alpha" && pname !=
"He3" &&
190 pname !=
"hydrogen") {
194 if(&part == theGenericIon) {
isIon =
true; }
199 size_t n = v->
size();
200 for(
size_t j=0; j<
n; ++j) {
201 if((*v)[j] ==
this) {
215 G4cout <<
"### G4VMultipleScattering::PrepearPhysicsTable() for "
219 <<
" isIon: " <<
isIon <<
" isMaster: " << master
257 if(!msc) {
continue; }
285 G4cout <<
"### G4VMultipleScattering::BuildPhysicsTable() for "
287 <<
" and particle " << num <<
" isIon: " <<
isIon
288 <<
" IsMaster: " << master <<
G4endl;
315 if(!msc) {
continue; }
327 num ==
"e+" || num ==
"mu+" ||
328 num ==
"mu-" || num ==
"proton"||
329 num ==
"pi+" || num ==
"pi-" ||
330 num ==
"kaon+" || num ==
"kaon-" ||
331 num ==
"alpha" || num ==
"anti_proton" ||
332 num ==
"GenericIon" || num ==
"alpha+" ||
339 G4cout <<
"### G4VMultipleScattering::BuildPhysicsTable() done for "
341 <<
" and particle " << num
496 if(tPathLength < range && tPathLength >
geomMin) {
516 if(postSafety > 0.0 && dispR <= postSafety) {
523 if(dispR < postSafety) {
533 G4double safety = postSafety + dispR;
562 maxshift =
std::min(maxshift, geomLength);
563 if(0.0 < maxshift + dist) {
570 for(
G4int i=0; i<10; ++i) {
573 point, fNewDirection, maxshift, &dist, &safety)
574 &&
std::abs(newdist + dist) < maxshift) {
579 if(dist >= 0.0 || R2new > R2) {
break; }
598 }
else if(postSafety > geomMin) {
674 if(masterProcess && masterProcess !=
this) {
return yes; }
677 static const G4String ss[4] = {
"1",
"2",
"3",
"4"};
678 for(
G4int i=0; i<nmod; ++i) {
690 G4cout <<
"Physics table are stored for "
693 <<
" with a name <" << name <<
"> " <<
G4endl;
696 G4cout <<
"Fail to store Physics Table for "
699 <<
" in the directory <" << directory