Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LBE.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// For information related to this code contact: Alex Howard
30// e-mail: alexander.howard@cern.ch
31// --------------------------------------------------------------
32// Comments
33//
34// Underground Advanced
35//
36// This physics list is taken from the underground_physics example with small
37// modifications. It is an example of a "flat" physics list with no dependence
38// on builders. The physics covered would be suitable for a low background
39// experiment including the neutron_hp package
40//
41//
42//
43// PhysicsList header
44// --------------------------------------------------------------
45
46#ifndef LBE_h
47#define LBE_h 1
48
49#include "globals.hh"
50#include "G4VUserPhysicsList.hh"
52
53class G4StoppingPhysics; // This builder encapsulate stopping processes
54
55//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
56
57
59{
60public:
61 LBE(G4int ver = 1);
62 virtual ~LBE();
63
64 //delete copy constructor and assignment operator
65 LBE(const LBE &)=delete;
66 LBE& operator=(const LBE &right)=delete;
67
68public:
69 virtual void SetCuts();
70
71
72protected:
73 // Construct particle and physics
74 virtual void ConstructParticle();
75 virtual void ConstructProcess();
76
77 // these methods Construct physics processes and register them
78 virtual void ConstructGeneral();
79 virtual void ConstructEM();
80 virtual void ConstructHad();
81 virtual void ConstructOp();
82
83
84 /*
85 // these methods Construct all particles in each category
86 virtual void ConstructAllBosons();
87 virtual void ConstructAllLeptons();
88 virtual void ConstructAllMesons();
89 virtual void ConstructAllBaryons();
90 virtual void ConstructAllIons();
91 virtual void ConstructAllShortLiveds();
92 */
93
94 virtual void AddTransportation();
95
96private:
97 G4int VerboseLevel;
98 G4int OpVerbLevel;
99
100 G4double cutForGamma;
101 G4double cutForElectron;
102 G4double cutForPositron;
103// uncomment if the code if corresponding code in LBE.cc is un-commented
104// G4double cutForProton;
105// G4double cutForAlpha;
106// G4double cutForGenericIon;
107
108 G4StoppingPhysics* stoppingPhysics;
109
110 // these methods Construct particles
111 void ConstructMyBosons();
112 void ConstructMyLeptons();
113 void ConstructMyMesons();
114 void ConstructMyBaryons();
115 void ConstructMyIons();
116 void ConstructMyShortLiveds();
117
118};
119
120#endif
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
Definition: LBE.hh:59
virtual void ConstructEM()
Definition: LBE.cc:287
virtual void ConstructParticle()
Definition: LBE.cc:109
virtual void AddTransportation()
Definition: LBE.cc:217
LBE & operator=(const LBE &right)=delete
virtual void ConstructProcess()
Definition: LBE.cc:203
virtual void ConstructOp()
Definition: LBE.cc:438
virtual ~LBE()
Definition: LBE.cc:102
virtual void SetCuts()
Definition: LBE.cc:952
LBE(const LBE &)=delete
virtual void ConstructHad()
Definition: LBE.cc:579
virtual void ConstructGeneral()
Definition: LBE.cc:886