50 <<
"CustomPhysicsList: adding CustomPhysics processes " 51 <<
"for the list of particles";
55 G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper();
57 aParticleIterator->reset();
58 G4ParticleDefinition* particle;
60 while((*aParticleIterator)()) {
61 particle = aParticleIterator->value();
64 G4ProcessManager* pmanager = particle->GetProcessManager();
66 <<
"CustomPhysicsList: " << particle->GetParticleName()
67 <<
" PDGcode= " << particle->GetPDGEncoding()
68 <<
" Mass= " << particle->GetPDGMass()/
GeV <<
" GeV.";
70 if(particle->GetPDGCharge() != 0.0) {
71 ph->RegisterProcess(
new G4hMultipleScattering, particle);
72 ph->RegisterProcess(
new G4hIonisation, particle);
80 <<
"CustomPhysicsList: " << particle->GetParticleName()
82 <<
" GeV; SpectatorMass= " << cp->
GetSpectator()->GetPDGMass()/
GeV<<
" GeV.";
85 pmanager->AddDiscreteProcess(
new FullModelHadronicProcess(
myHelper));
87 if(particle->GetParticleType()==
"darkpho"){
88 CMSDarkPairProductionProcess * darkGamma =
new CMSDarkPairProductionProcess(
dfactor);
89 pmanager->AddDiscreteProcess(darkGamma);
static G4ThreadLocal G4Decay * fDecayProcess
edm::ParameterSet myConfig
G4ParticleDefinition * GetCloud()
static G4ThreadLocal G4ProcessHelper * myHelper
bool fHadronicInteraction
G4ParticleDefinition * GetSpectator()
static bool s_isRHadron(int pdg)
static bool isCustomParticle(G4ParticleDefinition *particle)