105 const std::vector<G4int>& partList)
110 for(
auto & pdg : partList ) {
112 if ( part ==
nullptr || part->GetPDGCharge() == 0.0 ) {
continue; }
134 if( nucStopping !=
nullptr ) {
141 if( nucStopping !=
nullptr ) {
279 if( nucStopping !=
nullptr ) {
416 G4int ptype = (0 < plist->size()) ? (*plist)[0]->GetProcessSubType() : 0;
426 if(msc2 !=
nullptr) {
429 procManager->
AddProcess(transportWithMsc, -1, 0, 0);
434 if(msc2 !=
nullptr) {
447 G4int ptype = (0 < plist->size()) ? (*plist)[0]->GetProcessSubType() : 0;
457 procManager->
AddProcess(transportWithMsc, -1, 0, 0);
G4TransportationWithMscType
static G4AntiLambda * AntiLambda()
static G4AntiNeutrinoE * AntiNeutrinoE()
static G4AntiNeutrinoMu * AntiNeutrinoMu()
static G4AntiNeutron * AntiNeutron()
static G4AntiProton * AntiProton()
static G4ChargedGeantino * ChargedGeantinoDefinition()
static G4Deuteron * Deuteron()
static G4Electron * Electron()
static void ConstructCharged(G4hMultipleScattering *hmsc, G4NuclearStopping *nucStopping, G4bool isWVI=true)
static void ConstructChargedSS(G4hMultipleScattering *hmsc)
static void ConstructMinimalEmSet()
static void ConstructElectronSSProcess(G4VEmModel *ss, G4ParticleDefinition *particle)
static void ConstructLightHadrons(G4ParticleDefinition *part1, G4ParticleDefinition *part2, G4bool isHEP, G4bool isProton, G4bool isWVI)
static void ConstructIonEmPhysics(G4hMultipleScattering *hmsc, G4NuclearStopping *nucStopping)
static void ConstructElectronMscProcess(G4VMscModel *msc1, G4VMscModel *msc2, G4ParticleDefinition *particle)
static void ConstructIonEmPhysicsSS()
static void PrepareEMPhysics()
static void ConstructLightHadronsSS(G4ParticleDefinition *part1, G4ParticleDefinition *part2, G4bool isHEP)
static void ConstructBasicEmPhysics(G4hMultipleScattering *hmsc, const std::vector< G4int > &listHadrons)
static G4EmParameters * Instance()
G4TransportationWithMscType TransportationWithMsc() const
G4double MaxKinEnergy() const
static G4Geantino * GeantinoDefinition()
static G4GenericIon * GenericIon()
static const std::vector< G4int > & GetBCChargedHadrons()
static const std::vector< G4int > & GetHeavyChargedParticles()
static const std::vector< G4int > & GetChargedHyperNuclei()
static G4HadronicParameters * Instance()
G4bool EnableHyperNuclei() const
G4bool EnableBCParticles() const
G4double EnergyThresholdForHeavyHadrons() const
static G4KaonMinus * KaonMinus()
static G4KaonPlus * KaonPlus()
static G4Lambda * Lambda()
void SetAtomDeexcitation(G4VAtomDeexcitation *)
static G4LossTableManager * Instance()
G4VAtomDeexcitation * AtomDeexcitation()
static G4MuonMinus * MuonMinus()
static G4MuonPlus * MuonPlus()
static G4NeutrinoE * NeutrinoE()
static G4NeutrinoMu * NeutrinoMu()
static G4Neutron * Neutron()
G4ProcessManager * GetProcessManager() const
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()
static void InitialiseParameters()
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4PhysicsListHelper * GetPhysicsListHelper()
static G4PionMinus * PionMinus()
static G4PionPlus * PionPlus()
static G4PionZero * PionZero()
static G4Positron * Positron()
G4ProcessVector * GetProcessList() const
G4VProcess * RemoveProcess(G4VProcess *aProcess)
G4int AddProcess(G4VProcess *aProcess, G4int ordAtRestDoIt=ordInActive, G4int ordAlongSteptDoIt=ordInActive, G4int ordPostStepDoIt=ordInActive)
static G4Proton * Proton()
void AddMscModel(G4VMscModel *mscModel, G4int order=0, const G4Region *region=nullptr)
void AddSSModel(G4VEmModel *model, G4int order=0, const G4Region *region=nullptr)
void SetMultipleSteps(G4bool val)
static G4Triton * Triton()
void SetEmModel(G4VEmModel *, G4int index=0)
void SetEmModel(G4VMscModel *, G4int idx=0)