#include #include #include "G4BeamTestPhysicsList.h" #include "G4BeamTestGeneralPhysics.h" #if G4VERSION_NUMBER < 1000 #include "G4BeamTestEMPhysics.h" #include "G4BeamTestMuonPhysics.h" #include "G4BeamTestHadronPhysics.h" #include "G4BeamTestIonPhysics.h" #else #include "G4DecayPhysics.hh" #include "G4EmStandardPhysics.hh" #include "G4EmExtraPhysics.hh" #include "G4IonPhysics.hh" #include "G4StoppingPhysics.hh" #include "G4HadronElasticPhysics.hh" //#include "G4NeutronTrackingCut.hh" #include "G4DataQuestionaire.hh" #include "G4HadronPhysicsFTFP_BERT.hh" #include #endif #include #include #include G4BeamTestPhysicsList::G4BeamTestPhysicsList() : G4VUserPhysicsList() { defaultCutValue = 0.7*CLHEP::mm; SetVerboseLevel(1); RegisterPhysics(new G4BeamTestGeneralPhysics); #if G4VERSION_NUMBER < 1000 RegisterPhysics(new G4BeamTestEMPhysics); RegisterPhysics(new G4BeamTestMuonPhysics); RegisterPhysics(new G4BeamTestHadronPhysics); RegisterPhysics(new G4BeamTestIonPhysics); #else // The following is basically Geant4's FTFP_BERT physics list G4DataQuestionaire it(photon); // this checks that G4LEVELGAMMADATA is there RegisterPhysics(new G4EmStandardPhysics()); RegisterPhysics(new G4EmExtraPhysics()); RegisterPhysics(new G4DecayPhysics()); RegisterPhysics(new G4HadronElasticPhysics()); RegisterPhysics(new G4HadronPhysicsFTFP_BERT()); RegisterPhysics(new G4StoppingPhysics()); RegisterPhysics(new G4IonPhysics()); //RegisterPhysics(new G4NeutronTrackingCut()); #endif } G4BeamTestPhysicsList::~G4BeamTestPhysicsList() { } void G4BeamTestPhysicsList::SetCuts() { //G4VUserPhysicsList::SetCutsWithDefault method sets //the default cut value for all particle types // SetCutsWithDefault(); if (verboseLevel>0) DumpCutValuesTable(); }