Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
LaserDrivenBeamLine.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 LaserDrivenBeamLine_H
30 #define LaserDrivenBeamLine_H 1
31 
32 #include "globals.hh"
34 #include "G4Box.hh"
35 #include "G4Tubs.hh"
36 #include "G4Sphere.hh"
37 #include "G4VisAttributes.hh"
38 #include "G4LogicalVolume.hh"
39 
40 class G4VPhysicalVolume;
43 class G4Mag_UsualEqRhs;
45 class G4ChordFinder;
46 class G4UniformMagField;
47 class G4MagInt_Driver;
49 //class G4TransportationManager;
50 class G4FieldManager;
51 class G4MagneticField;
54 
56 
57 
59 {
60 public:
61 
64 
66  void ConstructSDandField();
67 
68  void RemoveESS();
75  void SetThicknessSlit(G4double value);
76  void SetSlitHoleDimensionY(G4double value);
77  void SetSlitHoleDimensionZ(G4double value);
78  void SetSlitHolePositionZ(G4double value);
79  void RemoveQuads();
80 
81 private:
82  void SetDefaultDimensions();
84  void EnergySelectorChamber();
85  void Collimator();
86  void Magnet_1();
87  void Magnet_2();
88  void Magnet_3();
89  void Magnet_4();
90  void Slit();
91  void FinalCollimator();
92  void ExitPipe();
93  void ExitWindow();
94  void Exithole();
95  void Entrancehole();
96  void EntrancePipe();
97  void Quadrupole();
98  void FaradayCup();
99 
102 
104 
105  // Variables definition for the World
106  // (called treatment room)
110 
111  // Variables definition for the triplet of quadrupoles
113 
120 
142 
146 
150 
151  // Variables definition for the vacuum chamber containing
152  // the spectrometer
155 
159 
163 
165 
173 
178 
182 
189 
193 
200 
204 
214 
225 
229 
237 
245 
249 
250  // Variables definition of the collimator
253 
256 
259 
262 
265 
268 
271 
274 
277 
281 
285 
289 
292  // Variables definition of the final collimator
293 
296 
299 
302 
305 
308 
311 
314 
317 
321 
325 
329 
333 
336 
338 
340 
341 
342  // Variables definition of the magnetic component
344 
346 
356 
361 
366 
371 
376 
381 
386 
390 
394 
395 
399 
403 
407 
411 
415 
419 
423 
427 
431 
435 
439 
443 
447 
451 
456 
460 
464 
468 
472 
476 
480 
484 
488 
492 
496 
498 
499 
505 
509 
514 
518 
522 
526 
530 
534 
538 
542 
546 
550 
554 
555  // Colours
566 };
567 #endif
G4LogicalVolume * logicVirtualOverBottom
G4VPhysicalVolume * physicInternalChamber
G4ChordFinder * pChordFinderQuadFourth
G4LogicalVolume * logicExternalMagnet_3
G4LogicalVolume * logicCollimator
G4Mag_UsualEqRhs * fEquationQuadThird
G4LogicalVolume * logicFinalCollimator
G4LogicalVolume * logicInternalChamber
G4VPhysicalVolume * physicEntranceholeESSChamber
G4VPhysicalVolume * physicMagnet_1Left
G4LogicalVolume * logicSecondQuad
G4LogicalVolume * logicCollimatorHole
G4MagIntegratorStepper * fstepper
G4LogicalVolume * logicThirdQuad
G4VisAttributes * blue
G4VPhysicalVolume * physicMagnet_3Right
G4MagInt_Driver * pIntgrDriverQuadThird
G4MagInt_Driver * pIntgrDriverQuadFourth
void SetSlitHolePositionZ(G4double value)
G4MagneticField * PurgMagFieldQuadFirst
G4LogicalVolume * logicVirtualBottom
G4VPhysicalVolume * physicFinalCollimatorHole
void SetFirstCollimatorPositionZ(G4double value)
G4LogicalVolume * logicExternalMagnet_2
G4LogicalVolume * logicGuardRing
G4LogicalVolume * logicFourthQuad
G4VPhysicalVolume * Construct()
G4Material * externalMagnet_2Material
G4Material * externalMagnet_1Material
Definition: G4Tubs.hh:85
G4Material * KaptonEntranceWindowMaterial
G4VisAttributes * darkGreen
G4VPhysicalVolume * physicEntrancePipe
G4LogicalVolume * logicFaradayCupBottom
G4Mag_UsualEqRhs * fEquationQuadSecond
G4VPhysicalVolume * physicExternalMagnet_2
G4VPhysicalVolume * physicMassRing
G4VisAttributes * skyBlue
G4LogicalVolume * logicKaptonEntranceWindow
G4LogicalVolume * logicFinalCollimatorHole
G4LogicalVolume * LFirstTriplet
G4VisAttributes * black
G4VPhysicalVolume * PQuadChamber
G4Mag_UsualEqRhs * fEquationQuadFourth
G4LogicalVolume * logicTreatmentRoom
G4LogicalVolume * logicFirstQuad
G4VPhysicalVolume * physicMagnet_2Right
G4VisAttributes * yellow
G4VPhysicalVolume * physicVirtualMag
G4VPhysicalVolume * physicExithole
G4FieldManager * pFieldMgrQuadThird
G4Mag_UsualEqRhs * fEquationQuadFirst
G4double defaultStartAngleFinalCollimator
void SetSlitHoleDimensionZ(G4double value)
G4LogicalVolume * LThirdTriplet
G4LogicalVolume * logicEntrancehole
G4VPhysicalVolume * physicTreatmentRoom
G4ChordFinder * pChordFinderQuadFirst
G4LogicalVolume * logicEntrancePipe
G4double defaultFinalCollimatorXPosition
G4double defaultInnerRadiusFinalCollimator
G4VPhysicalVolume * PThirdTriplet
G4VPhysicalVolume * physicMagnet_3Left
G4Material * internalChamberMaterial
G4VPhysicalVolume * physicInternalSlit
G4Mag_UsualEqRhs * fEquation
G4VPhysicalVolume * physicVirtualWindow
G4Material * internalSlitMaterial
void SetSecondCollimatorThickness(G4double value)
G4VPhysicalVolume * physicExternalChamber
G4LogicalVolume * logicInternalSlit
LaserDrivenBeamLineMessenger * laserDrivenMessenger
G4LogicalVolume * logicVirtualMag
G4MagInt_Driver * pIntgrDriverQuadFirst
G4VPhysicalVolume * physicCollimatorHole
G4LogicalVolume * logicExithole
double G4double
Definition: G4Types.hh:76
G4VPhysicalVolume * physicSecondQuad
G4Material * FinalcollimatorMaterial
G4ChordFinder * pChordFinderQuadSecond
G4FieldManager * pFieldMgr
G4MagIntegratorStepper * fstepperQuadFirst
void SetSecondCollimatorRadius(G4double value)
G4VPhysicalVolume * physicExternalMagnet_3
G4double defaultFinalCollimatorYPosition
const XML_Char int const XML_Char * value
Definition: expat.h:331
G4VPhysicalVolume * physicGuardRing
G4LogicalVolume * LQuadChamber
G4VPhysicalVolume * PFirstTriplet
G4VPhysicalVolume * physicMagnet_1Right
G4VPhysicalVolume * PFourthTriplet
G4LogicalVolume * logicVirtualLateral
Definition: G4Box.hh:64
G4FieldManager * pFieldMgrQuadFourth
G4LogicalVolume * logicExternalMagnet_1
G4LogicalVolume * LFourthTriplet
G4VPhysicalVolume * physicMagnet_4Left
void SetThicknessSlit(G4double value)
G4MagneticField * PurgMagFieldQuadThird
G4VisAttributes * gray
G4MagIntegratorStepper * fstepperQuadSecond
G4VPhysicalVolume * physicExternalMagnet_4
G4VPhysicalVolume * physicEntrancehole
G4double defaultFinalCollimatorZPosition
G4VPhysicalVolume * physicCup
G4Material * externalChamberMaterial
G4LogicalVolume * logicExternalMagnet_4
G4double defaultSpanningAngleFinalCollimator
G4VPhysicalVolume * physicExternalSlit
G4VisAttributes * white
G4Material * externalMagnet_4Material
G4Material * collimatorHoleMaterial
G4VPhysicalVolume * physicVirtualLateral
G4ChordFinder * pChordFinderQuadThird
G4LogicalVolume * logicVirtualWindow
G4VisAttributes * green
G4LogicalVolume * logicExternalSlit
G4VPhysicalVolume * physicExternalMagnet_4Down
G4MagneticField * PurgMagFieldQuadFourth
G4VPhysicalVolume * physicMagnet_4Right
G4VPhysicalVolume * physicVirtualOverBottom
G4MagIntegratorStepper * fstepperQuadThird
G4double defaultFinalCollimatorThickness
G4VPhysicalVolume * PQuadChamberWall
G4ChordFinder * pChordFinder
G4VPhysicalVolume * physicFinalCollimator
G4VPhysicalVolume * physicVirtualBottom
void SetSecondCollimatorPositionZ(G4double value)
G4MagneticField * PurgMagFieldQuadSecond
void SetSlitHoleDimensionY(G4double value)
G4VPhysicalVolume * physicExternalMagnet_3Down
G4VPhysicalVolume * physicBeveledCylinder
G4FieldManager * pFieldMgrQuadSecond
G4VPhysicalVolume * physicThirdQuad
G4LogicalVolume * logicMassRing
G4VPhysicalVolume * physicExternalMagnet_1Down
G4Material * externalSlitMaterial
G4LogicalVolume * LQuadChamberWall
G4MagInt_Driver * pIntgrDriverQuadSecond
void SetFirstCollimatorRadius(G4double value)
G4LogicalVolume * LSecondTriplet
G4LogicalVolume * logicMagnet_4
G4LogicalVolume * logicExternalChamber
HadrontherapyDetectorConstruction * hadrontherapydetectorconstruction
G4MagIntegratorStepper * fstepperQuadFourth
G4LogicalVolume * logicMagnet_2
G4LogicalVolume * logicVirtualMiddle
G4Material * FaradayCupBottomMaterial
G4LogicalVolume * logicCup
G4VPhysicalVolume * physicExternalMagnet_1
G4LogicalVolume * logicMagnet_1
void SetFirstCollimatorThickness(G4double value)
G4VPhysicalVolume * physicCollimator
G4double defaultOuterRadiusFinalCollimator
G4LogicalVolume * logicBeveledCylinder
G4VPhysicalVolume * physicFourthQuad
G4MagInt_Driver * pIntgrDriver
G4VPhysicalVolume * PSecondTriplet
HadrontherapyDetectorROGeometry * RO
G4FieldManager * pFieldMgrQuadFirst
G4MagneticField * PurgMagField
G4VisAttributes * darkOrange3
G4LogicalVolume * logicExitPipe
G4VPhysicalVolume * physicKaptonEntranceWindow
G4Material * externalMagnet_3Material
G4VPhysicalVolume * physicMagnet_2Left
G4VPhysicalVolume * physicFaradayCupBottom
G4VPhysicalVolume * physicFirstQuad
G4VPhysicalVolume * physicExitPipe
G4VPhysicalVolume * physicExitWindow
G4VPhysicalVolume * physicExternalMagnet_2Down
G4LogicalVolume * logicMagnet_3
G4LogicalVolume * logicExitWindow
G4VPhysicalVolume * physicVirtualMiddle
G4Material * FinalcollimatorHoleMaterial