aboutsummaryrefslogtreecommitdiffstats
path: root/src/G4BeamTestPhysicsList.cxx
diff options
context:
space:
mode:
authorshivesh <s.p.mandalia@qmul.ac.uk>2018-08-16 14:01:19 +0100
committershivesh <s.p.mandalia@qmul.ac.uk>2018-08-16 14:01:19 +0100
commit3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8 (patch)
tree7b75a539576992ec9a82ec0add0d0e9b565347dd /src/G4BeamTestPhysicsList.cxx
downloadG4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.tar.gz
G4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.zip
initial commit
Diffstat (limited to 'src/G4BeamTestPhysicsList.cxx')
-rw-r--r--src/G4BeamTestPhysicsList.cxx81
1 files changed, 81 insertions, 0 deletions
diff --git a/src/G4BeamTestPhysicsList.cxx b/src/G4BeamTestPhysicsList.cxx
new file mode 100644
index 0000000..5a5befd
--- /dev/null
+++ b/src/G4BeamTestPhysicsList.cxx
@@ -0,0 +1,81 @@
+/**
+ * Copyright (C) 2009
+ * The IceCube collaboration
+ * ID: $Id: G4BeamTestPhysicsList.cxx 152849 2017-01-20 21:44:25Z jgonzalez $
+ *
+ * @file G4BeamTestPhysicsList.cxx
+ * @version $Rev: 152849 $
+ * @date $Date: 2017-01-20 21:44:25 +0000 (Fri, 20 Jan 2017) $
+ * @author Tilo Waldenmaier, Thomas Melzig, Javier Gonzalez
+ */
+
+
+#include <globals.hh>
+#include <G4Version.hh>
+#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 <FTFP_BERT.hh>
+#endif
+
+#include <G4ProcessManager.hh>
+#include <G4ParticleTypes.hh>
+#include <G4UserSpecialCuts.hh>
+
+
+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();
+}
+