ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PassiveCarbonBeamLine.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PassiveCarbonBeamLine.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 // Hadrontherapy advanced example for Geant4
27 // See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy
28 
29 #ifndef PassiveCarbonBeamLine_H
30 #define PassiveCarbonBeamLine_H 1
31 
32 #include "globals.hh"
34 #include "G4Box.hh"
35 #include "G4Tubs.hh"
36 #include "G4VisAttributes.hh"
37 #include "G4LogicalVolume.hh"
38 #include "G4Trd.hh"
40 
41 class G4VPhysicalVolume;
45 
47 {
48 public:
49 
52 
54 
56  // Definition of the beam line support
57 
58  void VacuumToAirInterface();
59 
61  // Definition of three monitor chambers
62 
64  // Definition of the beam noozle
65 
67  // Definition of the final collimator
68 
70  // Definition of the PMMA collimator
71 
73  // Definition of the ripple filter
74 
76  // This method allows to change the size of the inner radius of the
77  // final collimator
78 
80  // This method allows to change the material
81  // of the ripple filter
82 
84 
85  // The following methods allow to change parameters
86  // of some beam line components
87 
91 private:
93  //passive carbon line dimensions
94  void SetDefaultDimensions();
96 
100 
102  // Definitions of all volumes
103  // World (experimental hall)
106 
107 
108  // Beamline support
112 
113  // Beamline covers
118 
119  // Vacuum pipe
123 
124  // Scattering foil
128 
129  // Kapton window
133 
134  //Ripple filter
138 
142 
146 
147  // PMMA Collimator
151 
155 
156  // Monitor chamber
160 
164 
168 
172 
173  // Final nozzle and collimator
177 
181 
185 
189 
193 
194  // Final collimator
198 
200  // Dimensions and positions of all volumes
201  // Beamline support
208 
209  // Beamline covers
216 
217  // vacuum pipe
222 
223  // Scattering foil
228 
229  // kapton Windows
234 
235  // PMMA Collimator
245 
246  // Monitor chamber
255 
256  // Final nozzle and collimator
261 
267 
274 
280 
287 
288  // Final collimator
295 
296  // Colors
307 
308  // Elements, compounds and materials
317 
322 
337 
339 };
340 #endif
341