blob: 797719eaa131f623912be32479f586c5d4a239d2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
/*
* copyright (C) 2010
* The Icecube Collaboration
*
* $Id: G4BeamTestEMPhysics.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_G4BEAMTESTEMPHYSICS_H_INCLUDED
#define G4TANKRESPONSE_G4BEAMTESTEMPHYSICS_H_INCLUDED
#include <globals.hh>
#include <G4VPhysicsConstructor.hh>
#include <G4PhotoElectricEffect.hh>
#include <G4ComptonScattering.hh>
#include <G4GammaConversion.hh>
#include <G4eMultipleScattering.hh>
#include <G4eIonisation.hh>
#include <G4eBremsstrahlung.hh>
#include <G4eplusAnnihilation.hh>
/**
@class G4BeamTestEMPhysics
@brief Electromagnetic physics. Used only if Geant4 version is earlier than 4.10.
This class implements the electromagnetic interactions
- Photoelectric effect
- Compton scattering
- Gamma conversion
- Multiple scattering
- Ionisation/Bremsstrahlung for electrons
- Positron annihilation
*/
class G4BeamTestEMPhysics : public G4VPhysicsConstructor {
public:
G4BeamTestEMPhysics();
~G4BeamTestEMPhysics();
void ConstructParticle();
void ConstructProcess();
private:
// Gamma physics
G4PhotoElectricEffect photoEffect;
G4ComptonScattering comptonEffect;
G4GammaConversion pairProduction;
// Electron physics
G4eMultipleScattering electronMultipleScattering;
G4eIonisation electronIonisation;
G4eBremsstrahlung electronBremsStrahlung;
//Positron physics
G4eMultipleScattering positronMultipleScattering;
G4eIonisation positronIonisation;
G4eBremsstrahlung positronBremsStrahlung;
G4eplusAnnihilation annihilation;
};
#endif // G4TANKRESPONSE_G4BEAMTESTEMPHYSICS_H_INCLUDED
|