37 #include "Geant4/G4ParticleDefinition.hh" 38 #include "Geant4/G4ProcessManager.hh" 39 #include "Geant4/G4Decay.hh" 40 #include "Geant4/G4DecayTable.hh" 44 #include "Geant4/G4PhysicsConstructorFactory.hh" 53 : G4VPhysicsConstructor(
"Py8TauDecayerPhysics")
82 auto particleIterator=GetParticleIterator();
83 particleIterator->reset();
84 while ((*particleIterator)())
86 G4ParticleDefinition* particle = particleIterator->value();
87 G4ProcessManager* pmanager = particle->GetProcessManager();
95 G4ProcessVector* processVector = pmanager->GetProcessList();
96 for (
size_t i=0; i<processVector->length(); ++i )
98 G4Decay* decay =
dynamic_cast<G4Decay*
>((*processVector)[i]);
104 if (
std::abs(particle->GetPDGEncoding()) == 15 )
106 if ( particle->GetDecayTable() )
108 delete particle->GetDecayTable();
109 particle->SetDecayTable(
nullptr);
111 decay->SetExtDecayer(extDecayer);
115 if ( !particle->GetDecayTable() )
117 decay->SetExtDecayer(extDecayer);
virtual void ConstructParticle()
G4_DECLARE_PHYSCONSTR_FACTORY(Py8TauDecayerPhysics)
virtual void ConstructProcess()
constexpr auto abs(T v)
Returns the absolute value of the argument.
Py8TauDecayerPhysics(G4int verb=1)
virtual ~Py8TauDecayerPhysics()