diff options
| author | shivesh <s.p.mandalia@qmul.ac.uk> | 2018-08-16 14:01:19 +0100 |
|---|---|---|
| committer | shivesh <s.p.mandalia@qmul.ac.uk> | 2018-08-16 14:01:19 +0100 |
| commit | 3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8 (patch) | |
| tree | 7b75a539576992ec9a82ec0add0d0e9b565347dd /include/G4BeamTestIonPhysics.h | |
| download | G4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.tar.gz G4BeamTest-3a83ec3bce239359f1cd71d1c0bfbf23b61d0db8.zip | |
initial commit
Diffstat (limited to 'include/G4BeamTestIonPhysics.h')
| -rw-r--r-- | include/G4BeamTestIonPhysics.h | 100 |
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 |
