ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
DMXDetectorConstruction.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file DMXDetectorConstruction.hh
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
// GEANT 4 - Underground Dark Matter Detector Advanced Example
29
//
30
// For information related to this code contact: Alex Howard
31
// e-mail: alexander.howard@cern.ch
32
// --------------------------------------------------------------
33
// Comments
34
//
35
// Underground Advanced
36
// by A. Howard and H. Araujo
37
// (27th November 2001)
38
//
39
// DetectorConstruction header
40
// --------------------------------------------------------------
41
42
#ifndef DMXDetectorConstruction_h
43
#define DMXDetectorConstruction_h 1
44
45
#include "
G4VUserDetectorConstruction.hh
"
46
#include "
globals.hh
"
47
#include "
G4Cache.hh
"
48
49
class
G4LogicalVolume
;
50
class
G4VPhysicalVolume
;
51
class
G4Material
;
52
53
class
G4UserLimits
;
54
55
class
DMXScintSD
;
56
class
DMXPmtSD
;
57
58
class
DMXDetectorMessenger
;
59
60
class
DMXDetectorConstruction
:
public
G4VUserDetectorConstruction
61
{
62
public
:
63
64
DMXDetectorConstruction
();
65
~DMXDetectorConstruction
();
66
67
public
:
68
69
G4VPhysicalVolume
*
Construct
();
70
void
ConstructSDandField
();
71
72
void
SetRoomEnergyCut
(
G4double
);
73
void
SetEnergyCut
(
G4double
);
74
void
SetTimeCut
(
G4double
);
75
void
SetRoomTimeCut
(
G4double
);
76
77
private
:
78
79
void
DefineMaterials
();
80
81
G4UserLimits
*
theUserLimitsForRoom
;
82
G4UserLimits
*
theUserLimitsForDetector
;
83
// G4UserLimits* theUserLimitsForXenon;
84
85
G4double
theMaxTimeCuts
;
86
G4double
theMaxStepSize
;
87
G4double
theDetectorStepSize
;
88
G4double
theMinEkine
;
89
G4double
theRoomMinEkine
;
90
91
G4double
theRoomTimeCut
;
92
93
94
#include "DMXDetectorMaterial.ihh"
// materials used
95
96
G4double
sourceZ
;
97
98
G4LogicalVolume
*
world_log
;
// pointers
99
G4VPhysicalVolume
*
world_phys
;
100
101
#include "DMXDetectorRoom.ihh"
102
103
G4LogicalVolume
*
lab_log
;
104
G4VPhysicalVolume
*
lab_phys
;
105
106
G4LogicalVolume
*
LN2jacket_log
;
107
G4VPhysicalVolume
*
LN2jacket_phys
;
108
G4LogicalVolume
*
LN2vacuum_log
;
109
G4VPhysicalVolume
*
LN2vacuum_phys
;
110
G4LogicalVolume
*
LN2vessel_log
;
111
G4VPhysicalVolume
*
LN2vessel_phys
;
112
G4LogicalVolume
*
LN2_log
;
113
G4VPhysicalVolume
*
LN2_phys
;
114
G4LogicalVolume
*
jacket_log
;
115
G4VPhysicalVolume
*
jacket_phys
;
116
G4LogicalVolume
*
jacketflange_log
;
117
G4VPhysicalVolume
*
topjacketflange_phys
;
118
G4VPhysicalVolume
*
bottomjacketflange_phys
;
119
G4LogicalVolume
*
vacuum_log
;
120
G4VPhysicalVolume
*
vacuum_phys
;
121
G4LogicalVolume
*
copper_log
;
122
G4VPhysicalVolume
*
copper_phys
;
123
G4LogicalVolume
*
coppertop_log
;
124
G4VPhysicalVolume
*
coppertop_phys
;
125
G4LogicalVolume
*
vessel_log
;
126
G4VPhysicalVolume
*
vessel_phys
;
127
G4LogicalVolume
*
vesseltop_log1
;
128
G4VPhysicalVolume
*
vesseltop_phys1
;
129
G4LogicalVolume
*
vesseltop_log2
;
130
G4VPhysicalVolume
*
vesseltop_phys2
;
131
G4LogicalVolume
*
vesselbottom_log1
;
132
G4VPhysicalVolume
*
vesselbottom_phys1
;
133
G4LogicalVolume
*
vesselbottom_log2
;
134
G4VPhysicalVolume
*
vesselbottom_phys2
;
135
G4LogicalVolume
*
pmtvesselbottom_log1
;
136
G4VPhysicalVolume
*
pmtvesselbottom_phys1
;
137
G4LogicalVolume
*
pmtvesselbottom_log2
;
138
G4VPhysicalVolume
*
pmtvesselbottom_phys2
;
139
G4LogicalVolume
*
GXe_log
;
140
G4VPhysicalVolume
*
GXe_phys
;
141
G4LogicalVolume
*
gaslag_log
;
142
G4VPhysicalVolume
*
gaslag_phys
;
143
G4LogicalVolume
*
CuShield_log
;
144
G4VPhysicalVolume
*
CuShield_phys
;
145
G4LogicalVolume
*
LXe_log
;
146
G4VPhysicalVolume
*
LXe_phys
;
147
G4LogicalVolume
*
liqLag_log
;
148
G4VPhysicalVolume
*
liqLag_phys
;
149
G4LogicalVolume
*
alpha_log
;
150
G4VPhysicalVolume
*
alpha_phys
;
151
G4LogicalVolume
*
americium_log
;
152
G4VPhysicalVolume
*
americium_phys
;
153
G4LogicalVolume
*
ring_log
;
154
G4VPhysicalVolume
*
ring_phys_gas
[2];
155
G4VPhysicalVolume
*
ring_phys_liq
[6];
156
G4LogicalVolume
*
mirror_log
;
157
G4VPhysicalVolume
*
mirror_phys
;
158
G4LogicalVolume
*
grid1_log
;
159
G4VPhysicalVolume
*
grid1_phys
;
160
G4LogicalVolume
*
grid2_log
;
161
G4VPhysicalVolume
*
grid2_phys
;
162
G4LogicalVolume
*
pmt_log
;
163
G4VPhysicalVolume
*
pmt_phys
;
164
G4LogicalVolume
*
phcath_log
;
165
G4VPhysicalVolume
*
phcath_phys
;
166
167
G4Cache<DMXScintSD*>
LXeSD
;
//pointer to sensitive detectors
168
G4Cache<DMXPmtSD*>
pmtSD
;
169
170
// pointer to the Detector Messenger:
171
DMXDetectorMessenger
*
detectorMessenger
;
172
173
};
174
175
#endif
176
geant4
tree
geant4-10.6-release
examples
advanced
underground_physics
include
DMXDetectorConstruction.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:00
using
1.8.2 with
ECCE GitHub integration