Geant4  10.02.p03
PassiveCarbonBeamLine Class Reference

#include <PassiveCarbonBeamLine.hh>

Inheritance diagram for PassiveCarbonBeamLine:
Collaboration diagram for PassiveCarbonBeamLine:

Public Member Functions

 PassiveCarbonBeamLine ()
 
 ~PassiveCarbonBeamLine ()
 
G4VPhysicalVolumeConstruct ()
 
void HadrontherapyBeamLineSupport ()
 
void ScatteringSystem ()
 
void VacuumToAirInterface ()
 
void HadrontherapyBeamMonitoring ()
 
void HadrontherapyBeamNozzle ()
 
void HadrontherapyBeamFinalCollimator ()
 
- Public Member Functions inherited from G4VUserDetectorConstruction
 G4VUserDetectorConstruction ()
 
virtual ~G4VUserDetectorConstruction ()
 
virtual void ConstructSDandField ()
 
virtual void CloneSD ()
 
virtual void CloneF ()
 
void RegisterParallelWorld (G4VUserParallelWorld *)
 
G4int ConstructParallelGeometries ()
 
void ConstructParallelSD ()
 
G4int GetNumberOfParallelWorld () const
 
G4VUserParallelWorldGetParallelWorld (G4int i) const
 

Public Attributes

G4Materialkapton
 
G4VisAttributesredWire
 
G4VPhysicalVolumemother
 
G4double firstScatteringFoilXPosition
 
G4double firstScatteringFoilYPosition
 
G4double firstScatteringFoilZPosition
 

Private Member Functions

void SetDefaultDimensions ()
 
void ConstructPassiveCarbonBeamLine ()
 

Private Attributes

G4VPhysicalVolumephysicalTreatmentRoom
 
HadrontherapyDetectorConstructionhadrontherapyDetectorConstruction
 
G4double vacuumZoneXSize
 
G4double vacuumZoneYSize
 
G4double vacuumZoneZSize
 
G4double vacuumZoneXPosition
 
G4double kaptonWindowXSize
 
G4double kaptonWindowYSize
 
G4double kaptonWindowZSize
 
G4double kaptonWindowXPosition
 
G4VPhysicalVolumephysiBeamLineSupport
 
G4VPhysicalVolumephysiBeamLineCover
 
G4VPhysicalVolumephysiBeamLineCover2
 
G4VPhysicalVolumephysiKaptonWindow
 
G4TubssolidStopper
 
G4VPhysicalVolumephysiStopper
 
G4LogicalVolumelogicStopper
 
G4double innerRadiusStopper
 
G4double heightStopper
 
G4double startAngleStopper
 
G4double spanningAngleStopper
 
G4double stopperXPosition
 
G4double stopperYPosition
 
G4double stopperZPosition
 
G4double outerRadiusStopper
 
G4BoxfirstScatteringFoil
 
G4VPhysicalVolumephysiFirstScatteringFoil
 
G4double firstScatteringFoilXSize
 
G4double firstScatteringFoilYSize
 
G4double firstScatteringFoilZSize
 
G4BoxsecondScatteringFoil
 
G4VPhysicalVolumephysiSecondScatteringFoil
 
G4double secondScatteringFoilXSize
 
G4double secondScatteringFoilYSize
 
G4double secondScatteringFoilZSize
 
G4double secondScatteringFoilXPosition
 
G4double secondScatteringFoilYPosition
 
G4double secondScatteringFoilZPosition
 
G4double innerRadiusFinalCollimator
 
G4VPhysicalVolumephysiFirstMonitorLayer1
 
G4VPhysicalVolumephysiFirstMonitorLayer2
 
G4VPhysicalVolumephysiFirstMonitorLayer3
 
G4VPhysicalVolumephysiFirstMonitorLayer4
 
G4VPhysicalVolumephysiNozzleSupport
 
G4VPhysicalVolumephysiHoleNozzleSupport
 
G4VPhysicalVolumephysiNozzleSupportHole
 
G4VPhysicalVolumephysiSecondHoleNozzleSupport
 
G4TubssolidFinalCollimator
 
G4VPhysicalVolumephysiFinalCollimator
 
G4VisAttributesblue
 
G4VisAttributesgray
 
G4VisAttributeswhite
 
G4VisAttributesred
 
G4VisAttributesyellow
 
G4VisAttributesgreen
 
G4VisAttributesdarkGreen
 
G4VisAttributesdarkOrange3
 
G4VisAttributesskyBlue
 
G4MaterialbeamLineSupportMaterial
 
G4MaterialvacuumZoneMaterial
 
G4MaterialfirstScatteringFoilMaterial
 
G4MaterialkaptonWindowMaterial
 
G4MaterialstopperMaterial
 
G4MaterialsecondScatteringFoilMaterial
 
G4Materiallayer1MonitorChamberMaterial
 
G4Materiallayer2MonitorChamberMaterial
 
G4Materiallayer3MonitorChamberMaterial
 
G4Materiallayer4MonitorChamberMaterial
 
G4MaterialnozzleSupportMaterial
 
G4MaterialholeNozzleSupportMaterial
 
G4MaterialseconHoleNozzleSupportMaterial
 
G4MaterialfinalCollimatorMaterial
 
HadrontherapyDetectorROGeometryRO
 

Additional Inherited Members

- Protected Member Functions inherited from G4VUserDetectorConstruction
void SetSensitiveDetector (const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void SetSensitiveDetector (G4LogicalVolume *logVol, G4VSensitiveDetector *aSD)
 

Detailed Description

Definition at line 43 of file PassiveCarbonBeamLine.hh.

Constructor & Destructor Documentation

◆ PassiveCarbonBeamLine()

PassiveCarbonBeamLine::PassiveCarbonBeamLine ( )

Definition at line 48 of file PassiveCarbonBeamLine.cc.

48  :
58 {
59 
60 //***************************** PW ***************************************
61 
62  static G4String ROGeometryName = "DetectorROGeometry";
63  RO = new HadrontherapyDetectorROGeometry(ROGeometryName);
64 
65 
66 
67  G4cout << "Going to register Parallel world...";
69  G4cout << "... done" << G4endl;
70 //***************************** PW ***************************************
71 }
HadrontherapyDetectorConstruction * hadrontherapyDetectorConstruction
G4VPhysicalVolume * physiKaptonWindow
G4VPhysicalVolume * physiFirstMonitorLayer4
G4VPhysicalVolume * physiBeamLineSupport
G4VPhysicalVolume * physiHoleNozzleSupport
void RegisterParallelWorld(G4VUserParallelWorld *)
HadrontherapyDetectorROGeometry * RO
G4VPhysicalVolume * physicalTreatmentRoom
G4GLOB_DLL std::ostream G4cout
G4VPhysicalVolume * physiFinalCollimator
G4VPhysicalVolume * physiBeamLineCover
G4VPhysicalVolume * physiFirstMonitorLayer3
G4VPhysicalVolume * physiNozzleSupport
G4VPhysicalVolume * physiBeamLineCover2
#define G4endl
Definition: G4ios.hh:61
G4VPhysicalVolume * physiFirstMonitorLayer1
G4VPhysicalVolume * physiFirstMonitorLayer2
G4VPhysicalVolume * physiSecondHoleNozzleSupport
Here is the call graph for this function:

◆ ~PassiveCarbonBeamLine()

PassiveCarbonBeamLine::~PassiveCarbonBeamLine ( )

Definition at line 74 of file PassiveCarbonBeamLine.cc.

75 {
77 }
HadrontherapyDetectorConstruction * hadrontherapyDetectorConstruction

Member Function Documentation

◆ Construct()

G4VPhysicalVolume * PassiveCarbonBeamLine::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 80 of file PassiveCarbonBeamLine.cc.

81 {
82  // Sets default geometry and materials
84 
85  // Construct the whole CarbonPassive Beam Line
87 
88 
89 //***************************** PW ***************************************
91 
92 //***************************** PW ***************************************
93 
94  // HadrontherapyDetectorConstruction builds ONLY the phantom and the detector with its associated ROGeometry
96 
97 //***************************** PW ***************************************
98 
100 
101 //***************************** PW ***************************************
102  return physicalTreatmentRoom;
103 }
HadrontherapyDetectorConstruction * hadrontherapyDetectorConstruction
HadrontherapyDetectorROGeometry * RO
G4VPhysicalVolume * physicalTreatmentRoom
void InitializeDetectorROGeometry(HadrontherapyDetectorROGeometry *, G4ThreeVector detectorToWorldPosition)
Here is the call graph for this function:

◆ ConstructPassiveCarbonBeamLine()

void PassiveCarbonBeamLine::ConstructPassiveCarbonBeamLine ( )
private

Definition at line 327 of file PassiveCarbonBeamLine.cc.

328 {
329  // -----------------------------
330  // Treatment room - World volume
331  //------------------------------
332  // Treatment room sizes
333  const G4double worldX = 400.0 *cm;
334  const G4double worldY = 400.0 *cm;
335  const G4double worldZ = 400.0 *cm;
336  G4bool isotopes = false;
337 
338  G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes);
339  G4Box* treatmentRoom = new G4Box("TreatmentRoom",worldX,worldY,worldZ);
340  G4LogicalVolume* logicTreatmentRoom = new G4LogicalVolume(treatmentRoom,
341  airNist,
342  "logicTreatmentRoom",
343  0,0,0);
345  G4ThreeVector(),
346  "physicalTreatmentRoom",
347  logicTreatmentRoom,
348  0,false,0);
349 
350 
351  // The treatment room is invisible in the Visualisation
352  logicTreatmentRoom -> SetVisAttributes (G4VisAttributes::Invisible);
353 
354  // Components of the Passive Carbon Beam Line
361 }
static const double cm
Definition: G4SIunits.hh:118
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
static G4NistManager * Instance()
G4VPhysicalVolume * physicalTreatmentRoom
bool G4bool
Definition: G4Types.hh:79
static const G4VisAttributes Invisible
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ HadrontherapyBeamFinalCollimator()

void PassiveCarbonBeamLine::HadrontherapyBeamFinalCollimator ( )

Definition at line 800 of file PassiveCarbonBeamLine.cc.

801 {
802  // -----------------------//
803  // FINAL COLLIMATOR //
804  //------------------------//
805  const G4double outerRadiusFinalCollimator = 21.5*mm;
806  const G4double hightFinalCollimator = 3.5*mm;
807  const G4double startAngleFinalCollimator = 0.*deg;
808  const G4double spanningAngleFinalCollimator = 360.*deg;
809  //XXX
810  const G4double finalCollimatorXPosition = -299.0 *mm;
811 
812  G4double phi = 90. *deg;
813 
814  // Matrix definition for a 90 deg rotation. Also used for other volumes
815  G4RotationMatrix rm;
816  rm.rotateY(phi);
817 
818  solidFinalCollimator = new G4Tubs("FinalCollimator",
820  outerRadiusFinalCollimator,
821  hightFinalCollimator,
822  startAngleFinalCollimator,
823  spanningAngleFinalCollimator);
824 
825  G4LogicalVolume* logicFinalCollimator = new G4LogicalVolume(solidFinalCollimator,
827  "FinalCollimator",
828  0,
829  0,
830  0);
831 
832  physiFinalCollimator = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector(finalCollimatorXPosition,0.,0.)),
833  "FinalCollimator", logicFinalCollimator, physicalTreatmentRoom, false, 0);
834 
835  logicFinalCollimator -> SetVisAttributes(yellow);
836 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4VPhysicalVolume * physicalTreatmentRoom
static const double deg
Definition: G4SIunits.hh:151
G4VPhysicalVolume * physiFinalCollimator
HepGeom::Transform3D G4Transform3D
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:
Here is the caller graph for this function:

◆ HadrontherapyBeamLineSupport()

void PassiveCarbonBeamLine::HadrontherapyBeamLineSupport ( )

Definition at line 364 of file PassiveCarbonBeamLine.cc.

365 {
366  // ------------------//
367  // BEAM LINE SUPPORT //
368  //-------------------//
369  const G4double beamLineSupportXSize = 1.5*m;
370  const G4double beamLineSupportYSize = 20.*mm;
371  const G4double beamLineSupportZSize = 600.*mm;
372 
373  const G4double beamLineSupportXPosition = -1745.09 *mm;
374  const G4double beamLineSupportYPosition = -230. *mm;
375  const G4double beamLineSupportZPosition = 0.*mm;
376 
377  G4Box* beamLineSupport = new G4Box("BeamLineSupport",
378  beamLineSupportXSize,
379  beamLineSupportYSize,
380  beamLineSupportZSize);
381 
382  G4LogicalVolume* logicBeamLineSupport = new G4LogicalVolume(beamLineSupport,
384  "BeamLineSupport");
385  physiBeamLineSupport = new G4PVPlacement(0, G4ThreeVector(beamLineSupportXPosition,
386  beamLineSupportYPosition,
387  beamLineSupportZPosition),
388  "BeamLineSupport",
389  logicBeamLineSupport,
390  physicalTreatmentRoom, false, 0);
391 
392  // Visualisation attributes of the beam line support
393 
394  logicBeamLineSupport -> SetVisAttributes(gray);
395 
396  //---------------------------------//
397  // Beam line cover 1 (left panel) //
398  //---------------------------------//
399  const G4double beamLineCoverXSize = 1.5*m;
400  const G4double beamLineCoverYSize = 750.*mm;
401  const G4double beamLineCoverZSize = 10.*mm;
402 
403  const G4double beamLineCoverXPosition = -1745.09 *mm;
404  const G4double beamLineCoverYPosition = -1000.*mm;
405  const G4double beamLineCoverZPosition = 610.*mm;
406 
407  G4Box* beamLineCover = new G4Box("BeamLineCover",
408  beamLineCoverXSize,
409  beamLineCoverYSize,
410  beamLineCoverZSize);
411 
412  G4LogicalVolume* logicBeamLineCover = new G4LogicalVolume(beamLineCover,
414  "BeamLineCover");
415 
416  physiBeamLineCover = new G4PVPlacement(0, G4ThreeVector(beamLineCoverXPosition,
417  beamLineCoverYPosition,
418  beamLineCoverZPosition),
419  "BeamLineCover",
420  logicBeamLineCover,
422  false,
423  0);
424 
425  // ---------------------------------//
426  // Beam line cover 2 (rigth panel) //
427  // ---------------------------------//
428  // It has the same characteristic of beam line cover 1 but set in a different position
429  physiBeamLineCover2 = new G4PVPlacement(0, G4ThreeVector(beamLineCoverXPosition,
430  beamLineCoverYPosition,
431  - beamLineCoverZPosition),
432  "BeamLineCover2",
433  logicBeamLineCover,
435  false,
436  0);
437 
438 
439  logicBeamLineCover -> SetVisAttributes(blue);
440 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
G4VPhysicalVolume * physiBeamLineSupport
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiBeamLineCover
G4VPhysicalVolume * physiBeamLineCover2
static const double m
Definition: G4SIunits.hh:128
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
Here is the caller graph for this function:

◆ HadrontherapyBeamMonitoring()

void PassiveCarbonBeamLine::HadrontherapyBeamMonitoring ( )

Definition at line 587 of file PassiveCarbonBeamLine.cc.

588 {
589  // ----------------------------
590  // THE FIRST MONITOR CHAMBER
591  // ----------------------------
592  // A monitor chamber is a free-air ionisation chamber
593  // able to measure do carbon fluence during the treatment.
594  // Here its responce is not simulated in terms of produced
595  // charge but only the energy losses are taked into account.
596  // Each chamber consist of 9 mm of air in a box
597  // that has two layers one of kapton and one
598  // of copper
599  const G4double monitor1XSize = 4.525022*mm;
600  const G4double monitor2XSize = 0.000011*mm;
601  const G4double monitor3XSize = 4.5*mm;
602  const G4double monitorYSize = 10.*cm;
603  const G4double monitorZSize = 10.*cm;
604  // XXX (Camera monitor size = 9.050088 mm)
605  const G4double monitor1XPosition = -1450.474956 *mm;
606  const G4double monitor2XPosition = -4.500011*mm;
607  const G4double monitor4XPosition = 4.500011*mm;
608 
609  G4Box* solidFirstMonitorLayer1 = new G4Box("FirstMonitorLayer1",
610  monitor1XSize,
611  monitorYSize,
612  monitorZSize);
613 
614  G4LogicalVolume* logicFirstMonitorLayer1 = new G4LogicalVolume(solidFirstMonitorLayer1,
616  "FirstMonitorLayer1");
617 
619  G4ThreeVector(monitor1XPosition,0.*cm,0.*cm),
620  "FirstMonitorLayer1",
621  logicFirstMonitorLayer1,
623  false,
624  0);
625 
626  G4Box* solidFirstMonitorLayer2 = new G4Box("FirstMonitorLayer2",
627  monitor2XSize,
628  monitorYSize,
629  monitorZSize);
630 
631  G4LogicalVolume* logicFirstMonitorLayer2 = new G4LogicalVolume(solidFirstMonitorLayer2,
633  "FirstMonitorLayer2");
634 
635  physiFirstMonitorLayer2 = new G4PVPlacement(0, G4ThreeVector(monitor2XPosition,0.*cm,0.*cm),
636  "FirstMonitorLayer2",
637  logicFirstMonitorLayer2,
639  false,
640  0);
641 
642  G4Box* solidFirstMonitorLayer3 = new G4Box("FirstMonitorLayer3",
643  monitor3XSize,
644  monitorYSize,
645  monitorZSize);
646 
647  G4LogicalVolume* logicFirstMonitorLayer3 = new G4LogicalVolume(solidFirstMonitorLayer3,
649  "FirstMonitorLayer3");
650 
652  G4ThreeVector(0.*mm,0.*cm,0.*cm),
653  "MonitorLayer3",
654  logicFirstMonitorLayer3,
656  false,
657  0);
658 
659  G4Box* solidFirstMonitorLayer4 = new G4Box("FirstMonitorLayer4",
660  monitor2XSize,
661  monitorYSize,
662  monitorZSize);
663 
664  G4LogicalVolume* logicFirstMonitorLayer4 = new G4LogicalVolume(solidFirstMonitorLayer4,
666  "FirstMonitorLayer4");
667 
668  physiFirstMonitorLayer4 = new G4PVPlacement(0, G4ThreeVector(monitor4XPosition,0.*cm,0.*cm),
669  "FirstMonitorLayer4",
670  logicFirstMonitorLayer4,
671  physiFirstMonitorLayer1, false, 0);
672 
673  logicFirstMonitorLayer3 -> SetVisAttributes(white);
674 
675 }
static const double cm
Definition: G4SIunits.hh:118
CLHEP::Hep3Vector G4ThreeVector
G4Material * layer2MonitorChamberMaterial
Definition: G4Box.hh:64
G4Material * layer3MonitorChamberMaterial
G4VPhysicalVolume * physiFirstMonitorLayer4
G4VPhysicalVolume * physicalTreatmentRoom
G4Material * layer1MonitorChamberMaterial
G4VPhysicalVolume * physiFirstMonitorLayer3
G4Material * layer4MonitorChamberMaterial
G4VPhysicalVolume * physiFirstMonitorLayer1
G4VPhysicalVolume * physiFirstMonitorLayer2
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
Here is the caller graph for this function:

◆ HadrontherapyBeamNozzle()

void PassiveCarbonBeamLine::HadrontherapyBeamNozzle ( )

Definition at line 679 of file PassiveCarbonBeamLine.cc.

680 {
681  // ------------------------------//
682  // THE FINAL TUBE AND COLLIMATOR //
683  //-------------------------------//
684  // The last part of the transport beam line consists of
685  // a 59 mm thick PMMA slab (to stop all the diffused radiation), a 285 mm brass tube
686  // (to well collimate the carbon beam) and a final collimator with 25 mm diameter
687  // aperture (that provide the final trasversal shape of the beam)
688 
689  // -------------------//
690  // PMMA SUPPORT //
691  // -------------------//
692 
693  const G4double nozzleSupportXSize = 29.5 *mm;
694  const G4double nozzleSupportYSize = 180. *mm;
695  const G4double nozzleSupportZSize = 180. *mm;
696  //XXX Placed at
697  const G4double nozzleSupportXPosition = -558. *mm;
698 
699  G4double phi = 90. *deg;
700  // Matrix definition for a 90 deg rotation. Also used for other volumes
701  G4RotationMatrix rm;
702  rm.rotateY(phi);
703 
704  G4Box* solidNozzleSupport = new G4Box("NozzleSupport",
705  nozzleSupportXSize,
706  nozzleSupportYSize,
707  nozzleSupportZSize);
708 
709  G4LogicalVolume* logicNozzleSupport = new G4LogicalVolume(solidNozzleSupport,
711  "NozzleSupport");
712 
713  physiNozzleSupport = new G4PVPlacement(0, G4ThreeVector(nozzleSupportXPosition,0., 0.),
714  "NozzleSupport",
715  logicNozzleSupport,
717  false,
718  0);
719 
720  logicNozzleSupport -> SetVisAttributes(yellow);
721  // -------------------//
722  // BRASS TUBE //
723  // -------------------//
724  const G4double innerRadiusHoleNozzleSupport = 18.*mm;
725  const G4double outerRadiusHoleNozzleSupport = 21.5 *mm;
726  //XXX h/2 = 142.5 mm
727  const G4double hightHoleNozzleSupportFirst = nozzleSupportXSize;
728  const G4double hightHoleNozzleSupport = 113.0*mm;
729  const G4double startAngleHoleNozzleSupport = 0.*deg;
730  const G4double spanningAngleHoleNozzleSupport = 360.*deg;
731  const G4double holeNozzleSupportXPosition = -415.5 *mm;
732  G4Tubs* solidNozzleSupportHole = new G4Tubs("NozzleSupportHole1", innerRadiusHoleNozzleSupport,
733  outerRadiusHoleNozzleSupport,
734  hightHoleNozzleSupportFirst,
735  startAngleHoleNozzleSupport,
736  spanningAngleHoleNozzleSupport);
737 
738  G4LogicalVolume* logicNozzleSupportHole = new G4LogicalVolume(solidNozzleSupportHole,
740  "NozzleSupportHole1");
741 
743  "HoleNozzleSupportHole1",
744  logicNozzleSupportHole,
745  physiNozzleSupport, false, 0);
746 
747  G4Tubs* solidHoleNozzleSupport = new G4Tubs("HoleNozzleSupport",
748  innerRadiusHoleNozzleSupport,
749  outerRadiusHoleNozzleSupport,
750  hightHoleNozzleSupport,
751  startAngleHoleNozzleSupport,
752  spanningAngleHoleNozzleSupport);
753 
754  G4LogicalVolume* logicHoleNozzleSupport = new G4LogicalVolume(solidHoleNozzleSupport,
756  "HoleNozzleSupport",
757  0, 0, 0);
758 
759  physiHoleNozzleSupport = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector(holeNozzleSupportXPosition, 0., 0.)),
760  "HoleNozzleSupport",
761  logicHoleNozzleSupport,
762  physicalTreatmentRoom, false, 0);
763  logicNozzleSupportHole -> SetVisAttributes(darkOrange3);
764  logicHoleNozzleSupport -> SetVisAttributes(darkOrange3);
765 
766  //--------------------------------------------------------------//
767  // HOLE OF THE BRASS TUBE (otherwise we'll have PMMA) //
768  //--------------------------------------------------------------//
769  const G4double innerRadiusSecondHoleNozzleSupport = 0.*mm;
770  const G4double outerRadiusSecondHoleNozzleSupport = 18.*mm;
771  const G4double hightSecondHoleNozzleSupport = 29.5 *mm;
772  const G4double startAngleSecondHoleNozzleSupport = 0.*deg;
773  const G4double spanningAngleSecondHoleNozzleSupport = 360.*deg;
774 
775  G4Tubs* solidSecondHoleNozzleSupport = new G4Tubs("SecondHoleNozzleSupport",
776  innerRadiusSecondHoleNozzleSupport,
777  outerRadiusSecondHoleNozzleSupport,
778  hightSecondHoleNozzleSupport,
779  startAngleSecondHoleNozzleSupport,
780  spanningAngleSecondHoleNozzleSupport);
781 
782  G4LogicalVolume* logicSecondHoleNozzleSupport = new G4LogicalVolume(solidSecondHoleNozzleSupport,
784  "SecondHoleNozzleSupport",
785  0,
786  0,
787  0);
788 
790  "SecondHoleNozzleSupport",
791  logicSecondHoleNozzleSupport,
793  false, 0);
794 
795 
796  logicHoleNozzleSupport -> SetVisAttributes(darkOrange3);
797 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
Definition: G4Tubs.hh:85
G4Material * seconHoleNozzleSupportMaterial
G4VPhysicalVolume * physiHoleNozzleSupport
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4VPhysicalVolume * physiNozzleSupportHole
G4VPhysicalVolume * physicalTreatmentRoom
static const double deg
Definition: G4SIunits.hh:151
HepGeom::Transform3D G4Transform3D
G4VPhysicalVolume * physiNozzleSupport
double G4double
Definition: G4Types.hh:76
G4VPhysicalVolume * physiSecondHoleNozzleSupport
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ScatteringSystem()

void PassiveCarbonBeamLine::ScatteringSystem ( )

Definition at line 520 of file PassiveCarbonBeamLine.cc.

521 {
522  // ------------//
523  // THE STOPPER //
524  //-------------//
525  // Is a small cylinder able to stop the central component
526  // of the beam (having a gaussian shape). It is connected to the SECON SCATTERING FOIL
527  // and represent the second element of the scattering system
528 
529  G4double phi = 90. *deg;
530  // Matrix definition for a 90 deg rotation with respect to Y axis
531  G4RotationMatrix rm;
532  rm.rotateY(phi);
533 
534  solidStopper = new G4Tubs("Stopper",
537  heightStopper/2,
540 
543  "Stopper",
544  0, 0, 0);
545 
549  "Stopper",
550  logicStopper,
552  false,
553  0);
554 
555  logicStopper -> SetVisAttributes(red);
556 
557  // ---------------------------//
558  // THE SECOND SCATTERING FOIL //
559  // ---------------------------//
560  // It is another thin foil and provides the
561  // final diffusion of the beam. It represents the third element of the scattering
562  // system;
563 
564  secondScatteringFoil = new G4Box("SecondScatteringFoil",
568 
569  G4LogicalVolume* logicSecondScatteringFoil = new G4LogicalVolume(secondScatteringFoil,
571  "SecondScatteringFoil");
572 
576  "SeconScatteringFoil",
577  logicSecondScatteringFoil,
579  false,
580  0);
581 
582  logicSecondScatteringFoil -> SetVisAttributes(skyBlue);
583 
584 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
Definition: G4Tubs.hh:85
G4VPhysicalVolume * physiStopper
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4Material * secondScatteringFoilMaterial
G4VPhysicalVolume * physicalTreatmentRoom
static const double deg
Definition: G4SIunits.hh:151
G4VPhysicalVolume * physiSecondScatteringFoil
HepGeom::Transform3D G4Transform3D
double G4double
Definition: G4Types.hh:76
G4LogicalVolume * logicStopper
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetDefaultDimensions()

void PassiveCarbonBeamLine::SetDefaultDimensions ( )
private

Definition at line 115 of file PassiveCarbonBeamLine.cc.

116 {
117  // Set of coulors that can be used
118  white = new G4VisAttributes( G4Colour());
119  white -> SetVisibility(true);
120  white -> SetForceSolid(true);
121 
122  blue = new G4VisAttributes(G4Colour(0. ,0. ,1.));
123  blue -> SetVisibility(true);
124  blue -> SetForceSolid(true);
125 
126  gray = new G4VisAttributes( G4Colour(0.5, 0.5, 0.5 ));
127  gray-> SetVisibility(true);
128  gray-> SetForceSolid(true);
129 
130  red = new G4VisAttributes(G4Colour(1. ,0. ,0.));
131  red-> SetVisibility(true);
132  red-> SetForceSolid(true);
133 
134  yellow = new G4VisAttributes(G4Colour(1., 1., 0. ));
135  yellow-> SetVisibility(true);
136  yellow-> SetForceSolid(true);
137 
138  green = new G4VisAttributes( G4Colour(25/255. , 255/255. , 25/255. ));
139  green -> SetVisibility(true);
140  green -> SetForceSolid(true);
141 
142  darkGreen = new G4VisAttributes( G4Colour(0/255. , 100/255. , 0/255. ));
143  darkGreen -> SetVisibility(true);
144  darkGreen -> SetForceSolid(true);
145 
146  darkOrange3 = new G4VisAttributes( G4Colour(205/255. , 102/255. , 000/255. ));
147  darkOrange3 -> SetVisibility(true);
148  darkOrange3 -> SetForceSolid(true);
149 
150  skyBlue = new G4VisAttributes( G4Colour(135/255. , 206/255. , 235/255. ));
151  skyBlue -> SetVisibility(true);
152  skyBlue -> SetForceSolid(true);
153 
154 
155  // VACUUM PIPE: first track of the beam line is inside vacuum;
156  // The PIPE contains KAPTON WINDOW
157  G4double defaultVacuumZoneXSize = 80.5325 *mm;
158  vacuumZoneXSize = defaultVacuumZoneXSize;
159 
160  G4double defaultVacuumZoneYSize = 52.5 *mm;
161  vacuumZoneYSize = defaultVacuumZoneYSize;
162 
163  G4double defaultVacuumZoneZSize = 52.5 *mm;
164  vacuumZoneZSize = defaultVacuumZoneZSize;
165 
166  // XXX -1775 mm (xKapton to WORLD) - 80.5075 (xKapton to vacuumZone)
167  G4double defaultVacuumZoneXPosition = -1855.5075 *mm;
168  vacuumZoneXPosition = defaultVacuumZoneXPosition;
169 
170 
171  // KAPTON WINDOW: it permits the passage of the beam from vacuum to air
172  G4double defaultKaptonWindowXSize = 0.025*mm;
173  kaptonWindowXSize = defaultKaptonWindowXSize;
174 
175  G4double defaultKaptonWindowYSize = 5.25*cm;
176  kaptonWindowYSize = defaultKaptonWindowYSize;
177 
178  G4double defaultKaptonWindowZSize = 5.25*cm;
179  kaptonWindowZSize = defaultKaptonWindowZSize;
180 
181  G4double defaultKaptonWindowXPosition = 80.5075*mm;
182  kaptonWindowXPosition = defaultKaptonWindowXPosition;
183 
184  // FIRST SCATTERING FOIL: a thin foil performing a first scattering
185  // of the original beam
186  G4double defaultFirstScatteringFoilXSize = 0.025 *mm;
187  firstScatteringFoilXSize = defaultFirstScatteringFoilXSize;
188 
189  G4double defaultFirstScatteringFoilYSize = 105.0 *mm;
190  firstScatteringFoilYSize = defaultFirstScatteringFoilYSize;
191 
192  G4double defaultFirstScatteringFoilZSize = 105 *mm;
193  firstScatteringFoilZSize = defaultFirstScatteringFoilZSize;
194 
195  G4double defaultFirstScatteringFoilXPosition = 0.0 *mm;
196  firstScatteringFoilXPosition = defaultFirstScatteringFoilXPosition;
197 
198 
199 
200  // STOPPER AND SCATTERING FOIL SIMULATED TO TEST THEIR EFFECT
201  // IN THE LATERAL DOSE DISTRIBUTION
202  // STOPPER: is a small cylinder able to stop the central component
203  // of the beam (having a gaussian shape). It is connected to the SECON SCATTERING FOIL
204  // and represent the second element of the scattering system
205  G4double defaultInnerRadiusStopper = 0.*cm;
206  innerRadiusStopper = defaultInnerRadiusStopper;
207 
208  G4double defaultHeightStopper = 7.0 *mm;
209  heightStopper = defaultHeightStopper;
210 
211  G4double defaultStartAngleStopper = 0.*deg;
212  startAngleStopper = defaultStartAngleStopper;
213 
214  G4double defaultSpanningAngleStopper = 360.*deg;
215  spanningAngleStopper = defaultSpanningAngleStopper;
216 
217  G4double defaultStopperXPosition = -1675.0 *mm;
218  stopperXPosition = defaultStopperXPosition;
219 
220  G4double defaultStopperYPosition = 0.*m;
221  stopperYPosition = defaultStopperYPosition;
222 
223  G4double defaultStopperZPosition = 0.*m;
224  stopperZPosition = defaultStopperZPosition;
225 
226  G4double defaultOuterRadiusStopper = 2 *mm;
227  outerRadiusStopper = defaultOuterRadiusStopper;
228 
229  // SECOND SCATTERING FOIL: it is another thin foil and provides the
230  // final diffusion of the beam. It represents the third element of the scattering
231  // system;
232  G4double defaultSecondScatteringFoilXSize = 0.025 *mm;
233  secondScatteringFoilXSize = defaultSecondScatteringFoilXSize;
234 
235  G4double defaultSecondScatteringFoilYSize = 105.0 *mm;
236  secondScatteringFoilYSize = defaultSecondScatteringFoilYSize;
237 
238  G4double defaultSecondScatteringFoilZSize = 105.0 *mm;
239  secondScatteringFoilZSize = defaultSecondScatteringFoilZSize;
240 
241  G4double defaultSecondScatteringFoilXPosition = defaultStopperXPosition + defaultHeightStopper + defaultSecondScatteringFoilXSize/2;
242  secondScatteringFoilXPosition = defaultSecondScatteringFoilXPosition;
243 
244  G4double defaultSecondScatteringFoilYPosition = 0 *mm;
245  secondScatteringFoilYPosition = defaultSecondScatteringFoilYPosition;
246 
247  G4double defaultSecondScatteringFoilZPosition = 0 *mm;
248  secondScatteringFoilZPosition = defaultSecondScatteringFoilZPosition;
249 
250 
251  // FINAL COLLIMATOR: is the collimator giving the final transversal shape
252  // of the beam
253  G4double defaultinnerRadiusFinalCollimator = 12.5 *mm;
254  innerRadiusFinalCollimator = defaultinnerRadiusFinalCollimator;
255 
256  // DEFAULT DEFINITION OF THE MATERIALS
257  // All elements and compound definition follows the NIST database
258 
259  // ELEMENTS
260  G4bool isotopes = false;
261  G4Material* aluminumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Al", isotopes);
262  G4Material* copperNistAsMaterial = G4NistManager::Instance()->FindOrBuildMaterial("G4_Cu", isotopes);
265  G4Material* tantalumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Ta", isotopes);
266 
267  // COMPOUND
268  G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes);
269  G4Material* kaptonNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_KAPTON", isotopes);
270  G4Material* galacticNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Galactic", isotopes);
271  G4Material* PMMANist = G4NistManager::Instance()->FindOrBuildMaterial("G4_PLEXIGLASS", isotopes);
272 
273  G4double d; // Density
274  G4int nComponents;// Number of components
275  G4double fractionmass; // Fraction in mass of an element in a material
276 
277  d = 8.40*g/cm3;
278  nComponents = 2;
279  G4Material* brass = new G4Material("Brass", d, nComponents);
280  brass -> AddElement(zincNist, fractionmass = 30 *perCent);
281  brass -> AddElement(copperNist, fractionmass = 70 *perCent);
282 
283 //***************************** PW ***************************************
284 
285 // DetectorROGeometry Material
286  new G4Material("dummyMat", 1., 1.*g/mole, 1.*g/cm3);
287 
288 //***************************** PW ***************************************
289 
290 
291  // MATERIAL ASSIGNMENT
292  // Support of the beam line
293  beamLineSupportMaterial = aluminumNist;
294 
295  // Vacuum pipe
296  vacuumZoneMaterial = galacticNist;
297 
298  // Material of the firt scattering foil
299  firstScatteringFoilMaterial = tantalumNist;
300 
301  // Material of kapton window
302  kaptonWindowMaterial = kaptonNist;
303 
304  // Material of the stopper
305  stopperMaterial = brass;
306 
307  // Material of the second scattering foil
308  secondScatteringFoilMaterial = tantalumNist;
309 
310  // Materials of the monitor chamber
311  layer1MonitorChamberMaterial = kaptonNist;
312  layer2MonitorChamberMaterial = copperNistAsMaterial;
314  layer4MonitorChamberMaterial = copperNistAsMaterial;
315 
316 
317  // material of the final nozzle
318  nozzleSupportMaterial = PMMANist;
321 
322  // Material of the final collimator
323  finalCollimatorMaterial = brass;
324 }
static const double cm
Definition: G4SIunits.hh:118
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
Float_t d
G4Material * layer2MonitorChamberMaterial
G4Material * layer3MonitorChamberMaterial
G4Material * seconHoleNozzleSupportMaterial
G4Material * firstScatteringFoilMaterial
G4int nComponents
Definition: TRTMaterials.hh:41
G4Material * secondScatteringFoilMaterial
int G4int
Definition: G4Types.hh:78
static G4NistManager * Instance()
function g(Y1, Y2, PT2)
Definition: hijing1.383.f:5206
static const double deg
Definition: G4SIunits.hh:151
G4Material * layer1MonitorChamberMaterial
bool G4bool
Definition: G4Types.hh:79
static const double cm3
Definition: G4SIunits.hh:120
static const double perCent
Definition: G4SIunits.hh:329
G4Material * layer4MonitorChamberMaterial
static const double mole
Definition: G4SIunits.hh:283
static const double m
Definition: G4SIunits.hh:128
double G4double
Definition: G4Types.hh:76
G4Element * FindOrBuildElement(G4int Z, G4bool isotopes=true)
Air AddElement(elN,.7)
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:
Here is the caller graph for this function:

◆ VacuumToAirInterface()

void PassiveCarbonBeamLine::VacuumToAirInterface ( )

Definition at line 443 of file PassiveCarbonBeamLine.cc.

444 {
445  // ------------//
446  // VACUUM PIPE //
447  //-------------//
448  //
449  // First track of the beam line is inside vacuum;
450  // The PIPE contains the FIRST SCATTERING FOIL and the KAPTON WINDOW
451  G4Box* vacuumZone = new G4Box("VacuumZone",
455 
456  G4LogicalVolume* logicVacuumZone = new G4LogicalVolume(vacuumZone,
458  "VacuumZone");
459 
460  G4VPhysicalVolume* physiVacuumZone = new G4PVPlacement(0,
462  "VacuumZone",
463  logicVacuumZone,
465  false,
466  0);
467 
468 
469 
470 
471 
472  // --------------------------//
473  // THE FIRST SCATTERING FOIL //
474  // --------------------------//
475  // A thin foil performing a first scattering
476  // of the original beam
477 
478  firstScatteringFoil = new G4Box("FirstScatteringFoil",
482 
483  G4LogicalVolume* logicFirstScatteringFoil = new G4LogicalVolume(firstScatteringFoil,
485  "FirstScatteringFoil");
486 
489  "FirstScatteringFoil",
490  logicFirstScatteringFoil,
491  physiVacuumZone,
492  false, 0);
493 
494  logicFirstScatteringFoil -> SetVisAttributes(skyBlue);
495 
496 
497 
498  // -------------------//
499  // THE KAPTON WINDOWS //
500  //--------------------//
501  //It permits the passage of the beam from vacuum to air
502 
503  G4Box* solidKaptonWindow = new G4Box("KaptonWindow",
507 
508  G4LogicalVolume* logicKaptonWindow = new G4LogicalVolume(solidKaptonWindow,
510  "KaptonWindow");
511 
513  "KaptonWindow", logicKaptonWindow,
514  physiVacuumZone, false, 0);
515 
516  logicKaptonWindow -> SetVisAttributes(darkOrange3);
517 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Box.hh:64
G4VPhysicalVolume * physiKaptonWindow
G4Material * firstScatteringFoilMaterial
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiFirstScatteringFoil
Here is the caller graph for this function:

Member Data Documentation

◆ beamLineSupportMaterial

G4Material* PassiveCarbonBeamLine::beamLineSupportMaterial
private

Definition at line 160 of file PassiveCarbonBeamLine.hh.

◆ blue

G4VisAttributes* PassiveCarbonBeamLine::blue
private

Definition at line 150 of file PassiveCarbonBeamLine.hh.

◆ darkGreen

G4VisAttributes* PassiveCarbonBeamLine::darkGreen
private

Definition at line 156 of file PassiveCarbonBeamLine.hh.

◆ darkOrange3

G4VisAttributes* PassiveCarbonBeamLine::darkOrange3
private

Definition at line 157 of file PassiveCarbonBeamLine.hh.

◆ finalCollimatorMaterial

G4Material* PassiveCarbonBeamLine::finalCollimatorMaterial
private

Definition at line 174 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoil

G4Box* PassiveCarbonBeamLine::firstScatteringFoil
private

Definition at line 120 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilMaterial

G4Material* PassiveCarbonBeamLine::firstScatteringFoilMaterial
private

Definition at line 162 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilXPosition

G4double PassiveCarbonBeamLine::firstScatteringFoilXPosition

Definition at line 78 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilXSize

G4double PassiveCarbonBeamLine::firstScatteringFoilXSize
private

Definition at line 122 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilYPosition

G4double PassiveCarbonBeamLine::firstScatteringFoilYPosition

Definition at line 79 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilYSize

G4double PassiveCarbonBeamLine::firstScatteringFoilYSize
private

Definition at line 123 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilZPosition

G4double PassiveCarbonBeamLine::firstScatteringFoilZPosition

Definition at line 80 of file PassiveCarbonBeamLine.hh.

◆ firstScatteringFoilZSize

G4double PassiveCarbonBeamLine::firstScatteringFoilZSize
private

Definition at line 124 of file PassiveCarbonBeamLine.hh.

◆ gray

G4VisAttributes* PassiveCarbonBeamLine::gray
private

Definition at line 151 of file PassiveCarbonBeamLine.hh.

◆ green

G4VisAttributes* PassiveCarbonBeamLine::green
private

Definition at line 155 of file PassiveCarbonBeamLine.hh.

◆ hadrontherapyDetectorConstruction

HadrontherapyDetectorConstruction* PassiveCarbonBeamLine::hadrontherapyDetectorConstruction
private

Definition at line 89 of file PassiveCarbonBeamLine.hh.

◆ heightStopper

G4double PassiveCarbonBeamLine::heightStopper
private

Definition at line 111 of file PassiveCarbonBeamLine.hh.

◆ holeNozzleSupportMaterial

G4Material* PassiveCarbonBeamLine::holeNozzleSupportMaterial
private

Definition at line 172 of file PassiveCarbonBeamLine.hh.

◆ innerRadiusFinalCollimator

G4double PassiveCarbonBeamLine::innerRadiusFinalCollimator
private

Definition at line 137 of file PassiveCarbonBeamLine.hh.

◆ innerRadiusStopper

G4double PassiveCarbonBeamLine::innerRadiusStopper
private

Definition at line 110 of file PassiveCarbonBeamLine.hh.

◆ kapton

G4Material* PassiveCarbonBeamLine::kapton

Definition at line 75 of file PassiveCarbonBeamLine.hh.

◆ kaptonWindowMaterial

G4Material* PassiveCarbonBeamLine::kaptonWindowMaterial
private

Definition at line 163 of file PassiveCarbonBeamLine.hh.

◆ kaptonWindowXPosition

G4double PassiveCarbonBeamLine::kaptonWindowXPosition
private

Definition at line 100 of file PassiveCarbonBeamLine.hh.

◆ kaptonWindowXSize

G4double PassiveCarbonBeamLine::kaptonWindowXSize
private

Definition at line 97 of file PassiveCarbonBeamLine.hh.

◆ kaptonWindowYSize

G4double PassiveCarbonBeamLine::kaptonWindowYSize
private

Definition at line 98 of file PassiveCarbonBeamLine.hh.

◆ kaptonWindowZSize

G4double PassiveCarbonBeamLine::kaptonWindowZSize
private

Definition at line 99 of file PassiveCarbonBeamLine.hh.

◆ layer1MonitorChamberMaterial

G4Material* PassiveCarbonBeamLine::layer1MonitorChamberMaterial
private

Definition at line 167 of file PassiveCarbonBeamLine.hh.

◆ layer2MonitorChamberMaterial

G4Material* PassiveCarbonBeamLine::layer2MonitorChamberMaterial
private

Definition at line 168 of file PassiveCarbonBeamLine.hh.

◆ layer3MonitorChamberMaterial

G4Material* PassiveCarbonBeamLine::layer3MonitorChamberMaterial
private

Definition at line 169 of file PassiveCarbonBeamLine.hh.

◆ layer4MonitorChamberMaterial

G4Material* PassiveCarbonBeamLine::layer4MonitorChamberMaterial
private

Definition at line 170 of file PassiveCarbonBeamLine.hh.

◆ logicStopper

G4LogicalVolume* PassiveCarbonBeamLine::logicStopper
private

Definition at line 109 of file PassiveCarbonBeamLine.hh.

◆ mother

G4VPhysicalVolume* PassiveCarbonBeamLine::mother

Definition at line 77 of file PassiveCarbonBeamLine.hh.

◆ nozzleSupportMaterial

G4Material* PassiveCarbonBeamLine::nozzleSupportMaterial
private

Definition at line 171 of file PassiveCarbonBeamLine.hh.

◆ outerRadiusStopper

G4double PassiveCarbonBeamLine::outerRadiusStopper
private

Definition at line 117 of file PassiveCarbonBeamLine.hh.

◆ physiBeamLineCover

G4VPhysicalVolume* PassiveCarbonBeamLine::physiBeamLineCover
private

Definition at line 103 of file PassiveCarbonBeamLine.hh.

◆ physiBeamLineCover2

G4VPhysicalVolume* PassiveCarbonBeamLine::physiBeamLineCover2
private

Definition at line 104 of file PassiveCarbonBeamLine.hh.

◆ physiBeamLineSupport

G4VPhysicalVolume* PassiveCarbonBeamLine::physiBeamLineSupport
private

Definition at line 102 of file PassiveCarbonBeamLine.hh.

◆ physicalTreatmentRoom

G4VPhysicalVolume* PassiveCarbonBeamLine::physicalTreatmentRoom
private

Definition at line 88 of file PassiveCarbonBeamLine.hh.

◆ physiFinalCollimator

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFinalCollimator
private

Definition at line 148 of file PassiveCarbonBeamLine.hh.

◆ physiFirstMonitorLayer1

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFirstMonitorLayer1
private

Definition at line 139 of file PassiveCarbonBeamLine.hh.

◆ physiFirstMonitorLayer2

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFirstMonitorLayer2
private

Definition at line 140 of file PassiveCarbonBeamLine.hh.

◆ physiFirstMonitorLayer3

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFirstMonitorLayer3
private

Definition at line 141 of file PassiveCarbonBeamLine.hh.

◆ physiFirstMonitorLayer4

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFirstMonitorLayer4
private

Definition at line 142 of file PassiveCarbonBeamLine.hh.

◆ physiFirstScatteringFoil

G4VPhysicalVolume* PassiveCarbonBeamLine::physiFirstScatteringFoil
private

Definition at line 121 of file PassiveCarbonBeamLine.hh.

◆ physiHoleNozzleSupport

G4VPhysicalVolume* PassiveCarbonBeamLine::physiHoleNozzleSupport
private

Definition at line 144 of file PassiveCarbonBeamLine.hh.

◆ physiKaptonWindow

G4VPhysicalVolume* PassiveCarbonBeamLine::physiKaptonWindow
private

Definition at line 105 of file PassiveCarbonBeamLine.hh.

◆ physiNozzleSupport

G4VPhysicalVolume* PassiveCarbonBeamLine::physiNozzleSupport
private

Definition at line 143 of file PassiveCarbonBeamLine.hh.

◆ physiNozzleSupportHole

G4VPhysicalVolume* PassiveCarbonBeamLine::physiNozzleSupportHole
private

Definition at line 145 of file PassiveCarbonBeamLine.hh.

◆ physiSecondHoleNozzleSupport

G4VPhysicalVolume* PassiveCarbonBeamLine::physiSecondHoleNozzleSupport
private

Definition at line 146 of file PassiveCarbonBeamLine.hh.

◆ physiSecondScatteringFoil

G4VPhysicalVolume* PassiveCarbonBeamLine::physiSecondScatteringFoil
private

Definition at line 128 of file PassiveCarbonBeamLine.hh.

◆ physiStopper

G4VPhysicalVolume* PassiveCarbonBeamLine::physiStopper
private

Definition at line 108 of file PassiveCarbonBeamLine.hh.

◆ red

G4VisAttributes* PassiveCarbonBeamLine::red
private

Definition at line 153 of file PassiveCarbonBeamLine.hh.

◆ redWire

G4VisAttributes* PassiveCarbonBeamLine::redWire

Definition at line 76 of file PassiveCarbonBeamLine.hh.

◆ RO

HadrontherapyDetectorROGeometry* PassiveCarbonBeamLine::RO
private

Definition at line 176 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoil

G4Box* PassiveCarbonBeamLine::secondScatteringFoil
private

Definition at line 127 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilMaterial

G4Material* PassiveCarbonBeamLine::secondScatteringFoilMaterial
private

Definition at line 165 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilXPosition

G4double PassiveCarbonBeamLine::secondScatteringFoilXPosition
private

Definition at line 132 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilXSize

G4double PassiveCarbonBeamLine::secondScatteringFoilXSize
private

Definition at line 129 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilYPosition

G4double PassiveCarbonBeamLine::secondScatteringFoilYPosition
private

Definition at line 133 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilYSize

G4double PassiveCarbonBeamLine::secondScatteringFoilYSize
private

Definition at line 130 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilZPosition

G4double PassiveCarbonBeamLine::secondScatteringFoilZPosition
private

Definition at line 134 of file PassiveCarbonBeamLine.hh.

◆ secondScatteringFoilZSize

G4double PassiveCarbonBeamLine::secondScatteringFoilZSize
private

Definition at line 131 of file PassiveCarbonBeamLine.hh.

◆ seconHoleNozzleSupportMaterial

G4Material* PassiveCarbonBeamLine::seconHoleNozzleSupportMaterial
private

Definition at line 173 of file PassiveCarbonBeamLine.hh.

◆ skyBlue

G4VisAttributes* PassiveCarbonBeamLine::skyBlue
private

Definition at line 158 of file PassiveCarbonBeamLine.hh.

◆ solidFinalCollimator

G4Tubs* PassiveCarbonBeamLine::solidFinalCollimator
private

Definition at line 147 of file PassiveCarbonBeamLine.hh.

◆ solidStopper

G4Tubs* PassiveCarbonBeamLine::solidStopper
private

Definition at line 107 of file PassiveCarbonBeamLine.hh.

◆ spanningAngleStopper

G4double PassiveCarbonBeamLine::spanningAngleStopper
private

Definition at line 113 of file PassiveCarbonBeamLine.hh.

◆ startAngleStopper

G4double PassiveCarbonBeamLine::startAngleStopper
private

Definition at line 112 of file PassiveCarbonBeamLine.hh.

◆ stopperMaterial

G4Material* PassiveCarbonBeamLine::stopperMaterial
private

Definition at line 164 of file PassiveCarbonBeamLine.hh.

◆ stopperXPosition

G4double PassiveCarbonBeamLine::stopperXPosition
private

Definition at line 114 of file PassiveCarbonBeamLine.hh.

◆ stopperYPosition

G4double PassiveCarbonBeamLine::stopperYPosition
private

Definition at line 115 of file PassiveCarbonBeamLine.hh.

◆ stopperZPosition

G4double PassiveCarbonBeamLine::stopperZPosition
private

Definition at line 116 of file PassiveCarbonBeamLine.hh.

◆ vacuumZoneMaterial

G4Material* PassiveCarbonBeamLine::vacuumZoneMaterial
private

Definition at line 161 of file PassiveCarbonBeamLine.hh.

◆ vacuumZoneXPosition

G4double PassiveCarbonBeamLine::vacuumZoneXPosition
private

Definition at line 95 of file PassiveCarbonBeamLine.hh.

◆ vacuumZoneXSize

G4double PassiveCarbonBeamLine::vacuumZoneXSize
private

Definition at line 92 of file PassiveCarbonBeamLine.hh.

◆ vacuumZoneYSize

G4double PassiveCarbonBeamLine::vacuumZoneYSize
private

Definition at line 93 of file PassiveCarbonBeamLine.hh.

◆ vacuumZoneZSize

G4double PassiveCarbonBeamLine::vacuumZoneZSize
private

Definition at line 94 of file PassiveCarbonBeamLine.hh.

◆ white

G4VisAttributes* PassiveCarbonBeamLine::white
private

Definition at line 152 of file PassiveCarbonBeamLine.hh.

◆ yellow

G4VisAttributes* PassiveCarbonBeamLine::yellow
private

Definition at line 154 of file PassiveCarbonBeamLine.hh.


The documentation for this class was generated from the following files: