BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
BesMuonPhysics.cc
Go to the documentation of this file.
1
2#include "BesMuonPhysics.hh"
3
4#include "globals.hh"
5#include "G4ios.hh"
6#include <iomanip>
7
8
9BesMuonPhysics::BesMuonPhysics(const G4String& name)
10 : G4VPhysicsConstructor(name)
11{
12}
13
15{
16}
17
18#include "G4ParticleDefinition.hh"
19#include "G4ParticleTable.hh"
20
21#include "G4MuonPlus.hh"
22#include "G4MuonMinus.hh"
23#include "G4TauMinus.hh"
24#include "G4TauPlus.hh"
25#include "G4NeutrinoTau.hh"
26#include "G4AntiNeutrinoTau.hh"
27#include "G4NeutrinoMu.hh"
28#include "G4AntiNeutrinoMu.hh"
29
31{
32 // Mu
33 G4MuonPlus::MuonPlusDefinition();
34 G4MuonMinus::MuonMinusDefinition();
35 G4NeutrinoMu::NeutrinoMuDefinition();
36 G4AntiNeutrinoMu::AntiNeutrinoMuDefinition();
37
38 // Tau
39 G4TauMinus::TauMinusDefinition();
40 G4TauPlus::TauPlusDefinition();
41 G4NeutrinoTau::NeutrinoTauDefinition();
42 G4AntiNeutrinoTau::AntiNeutrinoTauDefinition();
43
44}
45
46
47#include "G4ProcessManager.hh"
48
50{
51 G4ProcessManager * pManager = 0;
52
53 // Muon Plus Physics
54 pManager = G4MuonPlus::MuonPlus()->GetProcessManager();
55
56 pManager->AddProcess(&fMuPlusMultipleScattering,-1, 1, 1);
57 pManager->AddProcess(&fMuPlusIonisation, -1, 2, 2);
58 pManager->AddProcess(&fMuPlusBremsstrahlung, -1, 3, 3);
59 pManager->AddProcess(&fMuPlusPairProduction, -1, 4, 4);
60
61 // Muon Minus Physics
62 pManager = G4MuonMinus::MuonMinus()->GetProcessManager();
63
64 pManager->AddProcess(&fMuMinusMultipleScattering,-1, 1, 1);
65 pManager->AddProcess(&fMuMinusIonisation, -1, 2, 2);
66 pManager->AddProcess(&fMuMinusBremsstrahlung, -1, 3, 3);
67 pManager->AddProcess(&fMuMinusPairProduction, -1, 4, 4);
68
69 pManager->AddRestProcess(&fMuMinusCaptureAtRest);
70
71 // Tau Plus Physics
72 pManager = G4TauPlus::TauPlus()->GetProcessManager();
73
74 pManager->AddProcess(&fTauPlusMultipleScattering, -1, 1, 1);
75 pManager->AddProcess(&fTauPlusIonisation, -1, 2, 2);
76
77 // Tau Minus Physics
78 pManager = G4TauMinus::TauMinus()->GetProcessManager();
79
80 pManager->AddProcess(&fTauMinusMultipleScattering, -1, 1, 1);
81 pManager->AddProcess(&fTauMinusIonisation, -1, 2, 2);
82
83}
84
85
86
virtual void ConstructParticle()
G4hIonisation fTauMinusIonisation
G4MultipleScattering fTauMinusMultipleScattering
G4MuPairProduction fMuPlusPairProduction
G4MuPairProduction fMuMinusPairProduction
virtual void ConstructProcess()
virtual ~BesMuonPhysics()
G4hIonisation fTauPlusIonisation
G4MuIonisation fMuMinusIonisation
G4MultipleScattering fMuMinusMultipleScattering
G4MultipleScattering fTauPlusMultipleScattering
G4MuBremsstrahlung fMuMinusBremsstrahlung
G4MuonMinusCaptureAtRest fMuMinusCaptureAtRest
G4MuBremsstrahlung fMuPlusBremsstrahlung
BesMuonPhysics(const G4String &name="muon")
G4MultipleScattering fMuPlusMultipleScattering
G4MuIonisation fMuPlusIonisation