blob: e7a88dd29b8a2e0d52a877c727d6cad789397be5 (
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
65
66
67
|
#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>
#include <G4Cerenkov.hh>
#include <G4Scintillation.hh>
#include <G4OpAbsorption.hh>
#include <G4OpRayleigh.hh>
#include <G4OpMieHG.hh>
#include <G4OpBoundaryProcess.hh>
#include <G4LossTableManager.hh>
#include <G4EmSaturation.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();
void ConstructOp();
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;
// Cerenkov physics
G4Cerenkov cerenkov;
};
#endif // G4TANKRESPONSE_G4BEAMTESTEMPHYSICS_H_INCLUDED
|