aboutsummaryrefslogtreecommitdiffstats
path: root/include/G4BeamTestIonPhysics.h
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 /include/G4BeamTestIonPhysics.h
downloadG4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.tar.gz
G4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.zip
initial commit
Diffstat (limited to 'include/G4BeamTestIonPhysics.h')
-rw-r--r--include/G4BeamTestIonPhysics.h100
1 files changed, 100 insertions, 0 deletions
diff --git a/include/G4BeamTestIonPhysics.h b/include/G4BeamTestIonPhysics.h
new file mode 100644
index 0000000..276b0d5
--- /dev/null
+++ b/include/G4BeamTestIonPhysics.h
@@ -0,0 +1,100 @@
+/*
+ * copyright (C) 2010
+ * The Icecube Collaboration
+ *
+ * $Id: G4BeamTestIonPhysics.h 154687 2017-04-05 15:46:57Z jgonzalez $
+ *
+ * @version $Revision: 154687 $
+ * @date $LastChangedDate: 2017-04-05 16:46:57 +0100 (Wed, 05 Apr 2017) $
+ * @author Fabian Kislat <fabian.kislat@desy.de>, Peter Nießen (tanktop)
+ * Last changed by: $LastChangedBy: jgonzalez $
+ */
+
+#ifndef G4TANKRESPONSE_G4BEAMTESTIONPHYSICS_H_INCLUDED
+#define G4TANKRESPONSE_G4BEAMTESTIONPHYSICS_H_INCLUDED
+
+#include <globals.hh>
+#include <G4ios.hh>
+#include <G4VPhysicsConstructor.hh>
+#include <G4HadronElasticProcess.hh>
+#include <G4LElastic.hh>
+#include <G4DeuteronInelasticProcess.hh>
+#include <G4LEDeuteronInelastic.hh>
+#include <G4TritonInelasticProcess.hh>
+#include <G4LETritonInelastic.hh>
+#include <G4AlphaInelasticProcess.hh>
+#include <G4LEAlphaInelastic.hh>
+#include <G4hIonisation.hh>
+#include <G4ionIonisation.hh>
+#include <G4hMultipleScattering.hh>
+
+/**
+ @class G4BeamTestIonPhysics
+ @brief Ion physics. Used only if Geant4 version is earlier than 4.10.
+ @author GEANT4/Peter Niessen
+ @date Sun Jul 25 00:24:42 EDT 2004
+
+ The ion physics. Check the source for details.
+*/
+class G4BeamTestIonPhysics : public G4VPhysicsConstructor {
+
+public:
+
+ /**
+ * The constructor
+ */
+ G4BeamTestIonPhysics();
+
+ /**
+ * The virtual destructor
+ */
+ virtual ~G4BeamTestIonPhysics();
+
+ /**
+ * This method will be invoked in the Construct() method.
+ * each particle type will be instantiated
+ */
+ virtual void ConstructParticle();
+
+ /**
+ * This method will be invoked in the Construct() method.
+ * each physics process will be instantiated and
+ * registered to the process manager of each particle type
+ */
+ virtual void ConstructProcess();
+
+protected:
+ // Elastic Process
+ G4HadronElasticProcess elasticProcess_;
+ G4LElastic* elasticModel_;
+
+ // Generic Ion physics
+ G4hMultipleScattering ionMultipleScattering_;
+ G4ionIonisation ionIonisation_;
+
+ // Deuteron physics
+ G4hMultipleScattering deuteronMultipleScattering_;
+ G4hIonisation deuteronIonisation_;
+ G4DeuteronInelasticProcess deuteronProcess_;
+ G4LEDeuteronInelastic* deuteronModel_;
+
+ // Triton physics
+ G4hMultipleScattering tritonMultipleScattering_;
+ G4hIonisation tritonIonisation_;
+ G4TritonInelasticProcess tritonProcess_;
+ G4LETritonInelastic* tritonModel_;
+
+ // Alpha physics
+ G4hMultipleScattering alphaMultipleScattering_;
+ G4hIonisation alphaIonisation_;
+ G4AlphaInelasticProcess alphaProcess_;
+ G4LEAlphaInelastic* alphaModel_;
+
+ // He3 physics
+ G4hMultipleScattering he3MultipleScattering_;
+ G4hIonisation he3Ionisation_;
+
+};
+
+
+#endif // G4TANKRESPONSE_G4BEAMTESTIONPHYSICS_H_INCLUDED