61 fPhysBiasAllCharged(
false), fNonPhysBiasAllCharged(
false),
62 fPhysBiasAllChargedISL(
false), fNonPhysBiasAllChargedISL(
false),
63 fPhysBiasAllNeutral(
false), fNonPhysBiasAllNeutral(
false),
64 fPhysBiasAllNeutralISL(
false), fNonPhysBiasAllNeutralISL(
false),
79 std::vector< G4String > dummy;
119 if ( PDGlow > PDGhigh )
G4cout <<
" G4GenericBiasingPhysics::PhysicsBiasAddPDGRange(...) : PDGlow > PDGhigh, call ignored." <<
G4endl;
122 if ( includeAntiParticle )
132 if ( PDGlow > PDGhigh )
G4cout <<
" G4GenericBiasingPhysics::NonPhysicsBiasAddPDGRange(...) : PDGlow > PDGhigh, call ignored." <<
G4endl;
135 if ( includeAntiParticle )
146 if ( PDGlow > PDGhigh )
G4cout <<
" G4GenericBiasingPhysics::BiasAddPDGRange(...) : PDGlow > PDGhigh, call ignored." <<
G4endl;
193 if ( knownParticle == particleName )
201 if ( !isKnown ) fParticlesWithParallelGeometries.push_back( particleName );
205 for (
G4String knownGeometry : geometries )
207 if ( knownGeometry == parallelGeometryName )
213 if ( !isKnown ) geometries.push_back( parallelGeometryName );
224 if ( PDGlow > PDGhigh )
226 G4cout <<
"G4GenericBiasingPhysics::AddParallelGeometry( G4int PDGlow, G4int PDGhigh, const G4String& parallelGeometryName , G4bool includeAntiParticle = true ), PDGlow > PDGhigh : call ignored" <<
G4endl;
235 if ( includeAntiParticle )
247 if ( PDGlow > PDGhigh )
249 G4cout <<
"G4GenericBiasingPhysics::AddParallelGeometry( G4int PDGlow, G4int PDGhigh, const std::vector< G4String >& parallelGeometryNames, G4bool includeAntiParticle = true ), PDGlow > PDGhigh : call ignored" <<
G4endl;
261 if ( geometry == parallelGeometryName )
269 fParallelGeometriesForCharged .push_back( parallelGeometryName );
284 if ( geometry == parallelGeometryName )
292 fParallelGeometriesForNeutral .push_back( parallelGeometryName );
333 std::vector< G4String >::const_iterator particleIt =
345 for (std::size_t ip = 0 ; ip < vprocess->
size() ; ++ip)
353 while ( restartLoop )
355 for (std::size_t ip = 0 ; ip < biasedProcesses.size() ; ++ip)
359 if ( restartLoop )
break;
385 G4bool physBias(
false), nonPhysBias(
false);
404 if ( ( physBias ==
false ) && ( nonPhysBias ==
false ) )
423 std::vector < G4String > biasedProcesses;
425 for (std::size_t ip = 0 ; ip < vprocess->
size() ; ++ip)
432 while ( restartLoop )
434 for (std::size_t ip = 0 ; ip < biasedProcesses.size() ; ++ip)
438 if ( restartLoop )
break;
468 for (std::size_t ip = 0 ; ip < vprocess->
size() ; ++ip)
482 processNames +=
"\n ";
493 G4cout << std::setw(14) << particleName <<
" **** : " << processNames <<
G4endl;
495 G4cout << std::setw(18) << particleName <<
" : " << processNames <<
G4endl;
519 if ( requestedParticles == particleName )
553 if ( ( particlePDG >= PDGlow ) && ( particlePDG <= PDGhigh ) )
570 G4bool islAllNeutral =
false;
572 { islAllNeutral |= isln; }
573 G4bool islAllCharged =
false;
575 { islAllCharged |= islc; }
584 if(particle->
IsShortLived() && !islAllNeutral)
continue;
589 if(!(particle->
IsShortLived()) || fAllNeutralParallelGeometriesISL[j])
597 if(particle->
IsShortLived() && !islAllCharged)
continue;
602 if(!(particle->
IsShortLived()) || fAllChargedParallelGeometriesISL[j])