129 const G4String& selection,
const std::map<TString, Double_t>& parameters)
135 if (G4StrUtil::contains(selection,
"biasing")) {
136 G4GenericBiasingPhysics* biasingPhysics =
new G4GenericBiasingPhysics;
138 biasingPhysics->Bias(
"proton");
139 biasingPhysics->Bias(
"neutron");
140 biasingPhysics->Bias(
"pi+");
141 biasingPhysics->Bias(
"pi-");
142 RegisterPhysics(biasingPhysics);
146 if (G4StrUtil::contains(selection,
"extra")) {
147 G4EmExtraPhysics* extraPhysics =
new G4EmExtraPhysics();
148#if G4VERSION_NUMBER >= 1012
149 extraPhysics->Synch(
false);
150 extraPhysics->GammaNuclear(
false);
151 extraPhysics->MuonNuclear(
false);
153 G4String state(
"off");
154 extraPhysics->Synch(state);
155 extraPhysics->GammaNuclear(state);
156 extraPhysics->MuonNuclear(state);
158 RegisterPhysics(extraPhysics);
162 if (G4StrUtil::contains(selection,
"monopole")) {
164 SetParameters(monopolePhysics, parameters);
165 RegisterPhysics(monopolePhysics);
169 if (G4StrUtil::contains(selection,
"optical")) {
170 G4OpticalPhysics* g4OpticalPhysics =
new G4OpticalPhysics();
171 RegisterPhysics(g4OpticalPhysics);
175 if (G4StrUtil::contains(selection,
"radDecay")) {
176 RegisterPhysics(
new G4RadioactiveDecayPhysics());
180 if (G4StrUtil::contains(selection,
"hyperNuclei")) {
182 G4HadronicParameters::Instance()->SetEnableHyperNuclei(
true);