Geant4 Version: 4.11.2.1
Operating System: Mac M2 Pro, Sonoma 14.2.1
Compiler/Version: Apple clang version 15.0.0 (clang-1500.3.9.4)
CMake Version: 3.29.3
The xray_TESdetector
example in Geant4 example library (src/examples/advanced/xray_TESdetector
) uses its own physicslist called ‘Space Physics List (SPL)’ with XrayTESdetPhysicsList.cc
and G4EmStandardPhysics_SpacePhysics.cc
.
In the constructor of XrayTESdetPhysicsList
, the RadioactiveDecayPhysics is reistered in the following way:
XrayTESdetPhysicsList::XrayTESdetPhysicsList() : fMessenger(nullptr), fEmPhysicsList(nullptr), fParticleList(nullptr)
{
fMessenger = new XrayTESdetPhysicsListMessenger(this);
G4LossTableManager::Instance();
verboseLevel = 1;
// Particles
G4cout << "1 - Defining DecayPhysics" << G4endl;
fParticleList = new G4DecayPhysics("decays");
// Radioactive decay
G4cout << "2 - Defining RadioactiveDecayPhysics" << G4endl;
RegisterPhysics(new G4RadioactiveDecayPhysics());
// EM physics
G4cout << "3 - Defining Standard em" << G4endl;
fEmName = G4String("local");
//fEmPhysicsList = new PhysListEmStandard(fEmName);
fEmPhysicsList = new G4EmStandardPhysics();
}
However, if we run xray_TESdetector
with run01.mac
, which includes the /process/list
command, the log shows Decay in registered process, but does not show Radioactivation in registered process.
So why does radioactive decay physics not registered with the RegisterPhysics(new G4RadioactiveDecayPhysics());
command?