Geant4
11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4EmExtraPhysics.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
//
27
//---------------------------------------------------------------------------
28
//
29
// ClassName: G4EmExtraPhysics
30
//
31
// Author: 2002 J.P. Wellisch
32
//
33
// Modified:
34
// 10.11.2005 V.Ivanchenko edit to provide a standard
35
// 19.06.2006 V.Ivanchenko add mu-nuclear process
36
// 16.10.2012 A.Ribon: renamed G4EmExtraBertiniPhysics as G4EmExtraPhysics
37
// 31.01.2018 V. Grichine: add neutrino-electron process and xsc
38
//
39
//----------------------------------------------------------------------------
40
//
41
42
#ifndef G4EmExtraPhysics_h
43
#define G4EmExtraPhysics_h 1
44
45
#include "
G4VPhysicsConstructor.hh
"
46
#include "
globals.hh
"
47
48
#include "
G4EmMessenger.hh
"
49
50
class
G4CascadeInterface
;
51
class
G4HadronInelasticProcess
;
52
53
class
G4EmExtraPhysics
:
public
G4VPhysicsConstructor
54
{
55
public
:
56
57
G4EmExtraPhysics
(
G4int
ver = 1);
58
59
// obsolete
60
G4EmExtraPhysics
(
const
G4String
& name);
61
62
~G4EmExtraPhysics
()
override
;
63
64
void
ConstructParticle
()
override
;
65
void
ConstructProcess
()
override
;
66
67
void
Synch
(
G4bool
val);
68
void
SynchAll
(
G4bool
val);
69
void
GammaNuclear
(
G4bool
val);
70
void
LENDGammaNuclear
(
G4bool
val);
71
void
ElectroNuclear
(
G4bool
val);
72
void
MuonNuclear
(
G4bool
val);
73
void
GammaToMuMu
(
G4bool
val);
74
void
MuonToMuMu
(
G4bool
val);
75
void
PositronToMuMu
(
G4bool
val);
76
void
PositronToHadrons
(
G4bool
val);
77
void
GammaToMuMuFactor
(
G4double
val);
78
void
PositronToMuMuFactor
(
G4double
val);
79
void
PositronToHadronsFactor
(
G4double
val);
80
void
GammaNuclearLEModelLimit
(
G4double
val);
81
82
void
NeutrinoActivated
(
G4bool
val);
83
void
NuETotXscActivated
(
G4bool
val);
84
void
SetUseGammaNuclearXS
(
G4bool
val);
85
void
SetNuEleCcBias
(
G4double
bf);
86
void
SetNuEleNcBias
(
G4double
bf);
87
void
SetNuNucleusBias
(
G4double
bf);
88
void
SetNuDetectorName
(
const
G4String
& dn);
89
90
private
:
91
92
void
ConstructGammaElectroNuclear();
93
94
void
ConstructLENDGammaNuclear(
G4CascadeInterface
* cascade,
95
G4HadronInelasticProcess
* gnuc);
96
97
G4bool
gnActivated =
true
;
98
G4bool
eActivated =
true
;
99
G4bool
gLENDActivated =
false
;
100
G4bool
munActivated =
true
;
101
G4bool
synActivated =
false
;
102
G4bool
synActivatedForAll =
false
;
103
G4bool
gmumuActivated =
false
;
104
G4bool
mmumuActivated =
false
;
105
G4bool
pmumuActivated =
false
;
106
G4bool
phadActivated =
false
;
107
G4bool
fNuActivated =
false
;
108
G4bool
fNuETotXscActivated =
false
;
109
G4bool
fUseGammaNuclearXS =
true
;
110
111
G4double
gmumuFactor = 1.0;
112
G4double
pmumuFactor = 1.0;
113
G4double
phadFactor = 1.0;
114
G4double
fNuEleCcBias = 1.0;
115
G4double
fNuEleNcBias = 1.0;
116
G4double
fNuNucleusBias = 1.0;
117
G4double
fGNLowEnergyLimit;
118
119
G4String
fNuDetectorName =
"0"
;
120
121
G4EmMessenger
* theMessenger;
122
G4int
verbose;
123
};
124
125
#endif
126
127
128
129
130
G4EmMessenger.hh
G4double
double G4double
Definition:
G4Types.hh:83
G4bool
bool G4bool
Definition:
G4Types.hh:86
G4int
int G4int
Definition:
G4Types.hh:85
G4VPhysicsConstructor.hh
G4CascadeInterface
Definition:
G4CascadeInterface.hh:88
G4EmExtraPhysics
Definition:
G4EmExtraPhysics.hh:54
G4EmExtraPhysics::SetNuNucleusBias
void SetNuNucleusBias(G4double bf)
Definition:
G4EmExtraPhysics.cc:255
G4EmExtraPhysics::Synch
void Synch(G4bool val)
Definition:
G4EmExtraPhysics.cc:160
G4EmExtraPhysics::SynchAll
void SynchAll(G4bool val)
Definition:
G4EmExtraPhysics.cc:165
G4EmExtraPhysics::NuETotXscActivated
void NuETotXscActivated(G4bool val)
Definition:
G4EmExtraPhysics.cc:235
G4EmExtraPhysics::NeutrinoActivated
void NeutrinoActivated(G4bool val)
Definition:
G4EmExtraPhysics.cc:230
G4EmExtraPhysics::ElectroNuclear
void ElectroNuclear(G4bool val)
Definition:
G4EmExtraPhysics.cc:183
G4EmExtraPhysics::LENDGammaNuclear
void LENDGammaNuclear(G4bool val)
Definition:
G4EmExtraPhysics.cc:176
G4EmExtraPhysics::SetUseGammaNuclearXS
void SetUseGammaNuclearXS(G4bool val)
Definition:
G4EmExtraPhysics.cc:240
G4EmExtraPhysics::GammaToMuMuFactor
void GammaToMuMuFactor(G4double val)
Definition:
G4EmExtraPhysics.cc:213
G4EmExtraPhysics::ConstructProcess
void ConstructProcess() override
Definition:
G4EmExtraPhysics.cc:295
G4EmExtraPhysics::SetNuEleNcBias
void SetNuEleNcBias(G4double bf)
Definition:
G4EmExtraPhysics.cc:250
G4EmExtraPhysics::PositronToHadronsFactor
void PositronToHadronsFactor(G4double val)
Definition:
G4EmExtraPhysics.cc:223
G4EmExtraPhysics::~G4EmExtraPhysics
~G4EmExtraPhysics() override
Definition:
G4EmExtraPhysics.cc:154
G4EmExtraPhysics::ConstructParticle
void ConstructParticle() override
Definition:
G4EmExtraPhysics.cc:279
G4EmExtraPhysics::GammaToMuMu
void GammaToMuMu(G4bool val)
Definition:
G4EmExtraPhysics.cc:193
G4EmExtraPhysics::GammaNuclearLEModelLimit
void GammaNuclearLEModelLimit(G4double val)
Definition:
G4EmExtraPhysics.cc:260
G4EmExtraPhysics::SetNuEleCcBias
void SetNuEleCcBias(G4double bf)
Definition:
G4EmExtraPhysics.cc:245
G4EmExtraPhysics::PositronToHadrons
void PositronToHadrons(G4bool val)
Definition:
G4EmExtraPhysics.cc:208
G4EmExtraPhysics::SetNuDetectorName
void SetNuDetectorName(const G4String &dn)
Definition:
G4EmExtraPhysics.cc:272
G4EmExtraPhysics::PositronToMuMu
void PositronToMuMu(G4bool val)
Definition:
G4EmExtraPhysics.cc:203
G4EmExtraPhysics::GammaNuclear
void GammaNuclear(G4bool val)
Definition:
G4EmExtraPhysics.cc:171
G4EmExtraPhysics::MuonNuclear
void MuonNuclear(G4bool val)
Definition:
G4EmExtraPhysics.cc:188
G4EmExtraPhysics::PositronToMuMuFactor
void PositronToMuMuFactor(G4double val)
Definition:
G4EmExtraPhysics.cc:218
G4EmExtraPhysics::MuonToMuMu
void MuonToMuMu(G4bool val)
Definition:
G4EmExtraPhysics.cc:198
G4EmMessenger
Definition:
G4EmMessenger.hh:56
G4HadronInelasticProcess
Definition:
G4HadronInelasticProcess.hh:47
G4String
Definition:
G4String.hh:62
G4VPhysicsConstructor
Definition:
G4VPhysicsConstructor.hh:109
globals.hh
geant4-v11.1.1
source
physics_lists
constructors
gamma_lepto_nuclear
include
G4EmExtraPhysics.hh
Generated by
1.9.6