Geant4-11
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:
99
103// uncomment if the code if corresponding code in LBE.cc is un-commented
104// G4double cutForProton;
105// G4double cutForAlpha;
106// G4double cutForGenericIon;
107
109
110 // these methods Construct particles
111 void ConstructMyBosons();
112 void ConstructMyLeptons();
113 void ConstructMyMesons();
114 void ConstructMyBaryons();
115 void ConstructMyIons();
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
void ConstructMyIons()
Definition: LBE.cc:183
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
void ConstructMyBaryons()
Definition: LBE.cc:173
virtual void ConstructOp()
Definition: LBE.cc:438
LBE(G4int ver=1)
Definition: LBE.cc:77
G4int VerboseLevel
Definition: LBE.hh:97
G4double cutForGamma
Definition: LBE.hh:100
void ConstructMyMesons()
Definition: LBE.cc:163
G4int OpVerbLevel
Definition: LBE.hh:98
G4double cutForPositron
Definition: LBE.hh:102
virtual ~LBE()
Definition: LBE.cc:102
virtual void SetCuts()
Definition: LBE.cc:952
LBE(const LBE &)=delete
G4double cutForElectron
Definition: LBE.hh:101
void ConstructMyShortLiveds()
Definition: LBE.cc:192
G4StoppingPhysics * stoppingPhysics
Definition: LBE.hh:108
virtual void ConstructHad()
Definition: LBE.cc:579
void ConstructMyLeptons()
Definition: LBE.cc:143
virtual void ConstructGeneral()
Definition: LBE.cc:886
void ConstructMyBosons()
Definition: LBE.cc:128