Geant4 11.2.2
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
46#include "globals.hh"
47
48#include "G4EmMessenger.hh"
49
52
54{
55public:
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);
82
85
86private:
87
88 void ConstructGammaElectroNuclear();
89
90 void ConstructLENDGammaNuclear(G4CascadeInterface* cascade,
92
93 G4bool gnActivated{true};
94 G4bool eActivated{true};
95 G4bool gLENDActivated{false};
96 G4bool munActivated{true};
97 G4bool synActivated{false};
98 G4bool synActivatedForAll{false};
99 G4bool gmumuActivated{false};
100 G4bool mmumuActivated{false};
101 G4bool pmumuActivated{false};
102 G4bool phadActivated{false};
103 G4bool fUseGammaNuclearXS{true};
104
105 G4double gmumuFactor{1.0};
106 G4double pmumuFactor{1.0};
107 G4double phadFactor{1.0};
108 G4double fGNLowEnergyLimit;
109
110 G4EmMessenger* theMessenger;
111 G4int verbose;
112};
113
114#endif
double G4double
Definition G4Types.hh:83
bool G4bool
Definition G4Types.hh:86
int G4int
Definition G4Types.hh:85
void Synch(G4bool val)
void SynchAll(G4bool val)
void ElectroNuclear(G4bool val)
void LENDGammaNuclear(G4bool val)
void SetUseGammaNuclearXS(G4bool val)
void GammaToMuMuFactor(G4double val)
void ConstructProcess() override
void PositronToHadronsFactor(G4double val)
~G4EmExtraPhysics() override
void ConstructParticle() override
void GammaToMuMu(G4bool val)
void GammaNuclearLEModelLimit(G4double val)
void PositronToHadrons(G4bool val)
G4EmExtraPhysics(G4int ver=1)
G4EmExtraPhysics & operator=(const G4EmExtraPhysics &right)=delete
void PositronToMuMu(G4bool val)
void GammaNuclear(G4bool val)
void MuonNuclear(G4bool val)
void PositronToMuMuFactor(G4double val)
void MuonToMuMu(G4bool val)
G4EmExtraPhysics(const G4EmExtraPhysics &)=delete