51 edm::LogInfo(
"CustomPhysics") <<
" CustomPhysicsListSS: adding CustomPhysics processes";
52 aParticleIterator->reset();
54 while((*aParticleIterator)()) {
55 G4ParticleDefinition* particle = aParticleIterator->value();
58 edm::LogInfo(
"CustomPhysics") << particle->GetParticleName()
59 <<
" PDGcode= "<<particle->GetPDGEncoding()
61 <<particle->GetPDGMass()/GeV <<
" GeV.";
63 edm::LogInfo(
"CustomPhysics") << particle->GetParticleName()
66 <<
" GeV; SpectatorMass= "
70 G4ProcessManager* pmanager = particle->GetProcessManager();
72 if(particle->GetPDGCharge()/eplus != 0) {
73 pmanager->AddProcess(
new G4CoulombScattering, -1,-1, 1);
74 pmanager->AddProcess(
new G4hIonisation, -1, 2, 2);
77 if(particle->GetParticleType()==
"rhadron" ||
78 particle->GetParticleType()==
"mesonino" ||
79 particle->GetParticleType() ==
"sbaryon"){
81 pmanager->AddDiscreteProcess(
new FullModelHadronicProcess(
myHelper));
85 else LogDebug(
"CustomPhysics") <<
" No pmanager";
G4ParticleDefinition * GetCloud()
G4ParticleDefinition * GetSpectator()
edm::ParameterSet myConfig
static bool isCustomParticle(G4ParticleDefinition *particle)
G4ProcessHelper * myHelper