Geant4  10.02.p03
Collimator40BeamLine Class Reference

#include <Collimator40BeamLine.hh>

Inheritance diagram for Collimator40BeamLine:
Collaboration diagram for Collimator40BeamLine:

Public Member Functions

 Collimator40BeamLine ()
 
 ~Collimator40BeamLine ()
 
G4VPhysicalVolumeConstruct ()
 
void IortBeamLineVacuumSource ()
 
void IortBeamLineTitaniumWindows ()
 
void IortBeamLineMonitorChambers ()
 
void IortBeamLineBlocks ()
 
void IortBeamLineJunctions ()
 
void IortBeamLineFinalCollimator ()
 
void SetInnerRadiusFinalCollimatorIORT (G4double)
 
void SetOuterRadiusFinalCollimatorIORT (G4double)
 
- 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
 

Private Member Functions

void SetDefaultDimensions ()
 
void ConstructCollimator40BeamLine ()
 

Private Attributes

Collimator40BeamLineMessengercollimatorMessenger
 
G4VPhysicalVolumephysicalTreatmentRoom
 
IORTDetectorConstructioniortDetectorConstruction
 
G4VisAttributesblue
 
G4VisAttributesgray
 
G4VisAttributeswhite
 
G4VisAttributesred
 
G4VisAttributesyellow
 
G4VisAttributesgreen
 
G4VisAttributesdarkGreen
 
G4VisAttributesdarkOrange3
 
G4VisAttributesskyBlue
 
G4double innerRadiusFinalCollimatorIORT
 
G4double OuterRadiusFinalCollimatorIORT
 
G4TubssolidFinalCollimatorIORT
 
G4VPhysicalVolumephysiFinalCollimatorIORT
 
G4MaterialfinalCollimatorMaterialIORT
 
G4MaterialGiunz1FinalCollMaterialIORT
 
G4MaterialGiunz2FinalCollMaterialIORT
 
G4TubssolidGiunz3FinalCollIORT
 
G4VPhysicalVolumephysiGiunz3FinalCollIORT
 
G4MaterialGiunz3FinalCollMaterialIORT
 
G4ConssolidGiunz3FinalCollIntIORT
 
G4MaterialGiunz3FinalCollMaterialIntIORT
 
G4VPhysicalVolumephysiGiunz3FinalCollIntIORT
 
G4TubssolidGiunz4FinalCollIORT
 
G4VPhysicalVolumephysiGiunz4FinalCollIORT
 
G4MaterialGiunz4FinalCollMaterialIORT
 
G4TubssolidGiunz5FinalCollIORT
 
G4VPhysicalVolumephysiGiunz5FinalCollIORT
 
G4MaterialGiunz5FinalCollMaterialIORT
 
G4TubssolidBlocco1IORT
 
G4VPhysicalVolumephysiBlocco1IORT
 
G4MaterialBlocco1IORTMaterialIORT
 
G4TubssolidBlocco2IORT
 
G4VPhysicalVolumephysiBlocco2IORT
 
G4MaterialBlocco2IORTMaterialIORT
 
G4TubssolidBlocco3IORT
 
G4VPhysicalVolumephysiBlocco3IORT
 
G4MaterialBlocco3IORTMaterialIORT
 
G4TubssolidBlocco20mmIORT
 
G4VPhysicalVolumephysiBlocco20mmIORT
 
G4MaterialBlocco20mmIORTMaterialIORT
 
G4TubssolidCM1_1_2IORT
 
G4VPhysicalVolumephysiCM1_1_2IORT
 
G4MaterialCM1_1_2IORTMaterialIORT
 
G4TubssolidCM1_2_2IORT
 
G4VPhysicalVolumephysiCM1_2_2IORT
 
G4MaterialCM1_2_2IORTMaterialIORT
 
G4TubssolidCM2_1_2IORT
 
G4VPhysicalVolumephysiCM2_1_2IORT
 
G4MaterialCM2_1_2IORTMaterialIORT
 
G4TubssolidCM2_2_2IORT
 
G4VPhysicalVolumephysiCM2_2_2IORT
 
G4MaterialCM2_2_2IORTMaterialIORT
 
G4TubssolidCCMIORT
 
G4VPhysicalVolumephysiCCMIORT
 
G4MaterialCCMIORTMaterialIORT
 
G4TubssolidPFS1IORT
 
G4VPhysicalVolumephysiPFS1IORT
 
G4MaterialPFS1IORTMaterialIORT
 
G4TubssolidPFS2IORT
 
G4VPhysicalVolumephysiPFS2IORT
 
G4MaterialPFS2IORTMaterialIORT
 
G4TubssolidPFS3IORT
 
G4VPhysicalVolumephysiPFS3IORT
 
G4MaterialPFS3IORTMaterialIORT
 
G4TubssolidFTIORT
 
G4VPhysicalVolumephysiFTIORT
 
G4MaterialFTIORTMaterialIORT
 
G4TubssolidVSIORT
 
G4VPhysicalVolumephysiVSIORT
 
G4MaterialVSIORTMaterialIORT
 

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 58 of file Collimator40BeamLine.hh.

Constructor & Destructor Documentation

◆ Collimator40BeamLine()

Collimator40BeamLine::Collimator40BeamLine ( )

Definition at line 59 of file Collimator40BeamLine.cc.

59  :
61 
62 
63 
66 
69 
72 
75 
78 
81 
84 
87 
90 
93 
96 
99 
100  solidCM2_2_2IORT(0),
101  physiCM2_2_2IORT(0),
102 
103  solidCCMIORT(0),
104  physiCCMIORT(0),
105 
106  solidPFS1IORT(0),
107  physiPFS1IORT(0),
108 
109  solidPFS2IORT(0),
110  physiPFS2IORT(0),
111 
112  solidPFS3IORT(0),
113  physiPFS3IORT(0),
114 
115  solidFTIORT(0),
116  physiFTIORT(0)
117 
118 
119 {
120  // Messenger to change parameters of the collimator40BeamLine geometry
122 
123 }
G4VPhysicalVolume * physiGiunz5FinalCollIORT
G4VPhysicalVolume * physiCM2_2_2IORT
G4VPhysicalVolume * physiPFS2IORT
G4VPhysicalVolume * physiGiunz4FinalCollIORT
G4VPhysicalVolume * physiFTIORT
G4VPhysicalVolume * physiGiunz3FinalCollIORT
G4VPhysicalVolume * physiGiunz3FinalCollIntIORT
G4VPhysicalVolume * physiCM2_1_2IORT
G4VPhysicalVolume * physiFinalCollimatorIORT
G4VPhysicalVolume * physiCM1_1_2IORT
G4VPhysicalVolume * physiBlocco1IORT
G4VPhysicalVolume * physiCCMIORT
G4VPhysicalVolume * physiBlocco20mmIORT
Collimator40BeamLineMessenger * collimatorMessenger
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiBlocco2IORT
G4VPhysicalVolume * physiPFS1IORT
G4VPhysicalVolume * physiBlocco3IORT
G4VPhysicalVolume * physiPFS3IORT
IORTDetectorConstruction * iortDetectorConstruction
G4VPhysicalVolume * physiCM1_2_2IORT

◆ ~Collimator40BeamLine()

Collimator40BeamLine::~Collimator40BeamLine ( )

Definition at line 125 of file Collimator40BeamLine.cc.

126 {
127  delete collimatorMessenger;
129 }
Collimator40BeamLineMessenger * collimatorMessenger
IORTDetectorConstruction * iortDetectorConstruction

Member Function Documentation

◆ Construct()

G4VPhysicalVolume * Collimator40BeamLine::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 134 of file Collimator40BeamLine.cc.

135 {
136  // Sets default geometry and materials
138 
139  // Construct the whole Collimator Beam Line
141 
142  // IORTDetectorConstruction builds ONLY the phantom and the detector with its associated ROGeometry
144 
145  return physicalTreatmentRoom;
146 }
G4VPhysicalVolume * physicalTreatmentRoom
IORTDetectorConstruction * iortDetectorConstruction
Here is the call graph for this function:

◆ ConstructCollimator40BeamLine()

void Collimator40BeamLine::ConstructCollimator40BeamLine ( )
private

Definition at line 306 of file Collimator40BeamLine.cc.

307 {
308  // -----------------------------
309  // Treatment room - World volume
310  //------------------------------
311  // Treatment room sizes
312  const G4double worldX = 400.0 *cm;
313  const G4double worldY = 400.0 *cm;
314  const G4double worldZ = 400.0 *cm;
315  G4bool isotopes = false;
316 
317  G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes);
318  G4Box* treatmentRoom = new G4Box("TreatmentRoom",worldX,worldY,worldZ);
319  G4LogicalVolume* logicTreatmentRoom = new G4LogicalVolume(treatmentRoom,
320  airNist,
321  "logicTreatmentRoom",
322  0,0,0);
324  G4ThreeVector(),
325  "physicalTreatmentRoom",
326  logicTreatmentRoom,
327  0,false,0);
328 
329 
330  // The treatment room is invisible in the Visualisation
331  logicTreatmentRoom -> SetVisAttributes (G4VisAttributes::Invisible);
332 
333  // Components of the Collimator Beam Line
334 
341 
342 }
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()
bool G4bool
Definition: G4Types.hh:79
static const G4VisAttributes Invisible
G4VPhysicalVolume * physicalTreatmentRoom
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IortBeamLineBlocks()

void Collimator40BeamLine::IortBeamLineBlocks ( )

Definition at line 642 of file Collimator40BeamLine.cc.

643 {
644 
645  G4double phi4 = 90. *deg;
646 
647 
648  G4RotationMatrix rm4;
649  rm4.rotateY(phi4);
650 
652 
653  // IORT BEAM LINE BLOCKS
654 
656 
657  // ------------------------------------------------//
658  // Block 4 //
659  // ------------------------------------------------//
660 
661  const G4double outRadiusBlocco20mmIORT = 36.5 *mm;
662  const G4double innRadiusBlocco20mmIORT = 10. *mm;
663  const G4double hightBlocco20mmIORT = 3. *mm;
664  const G4double startAngleBlocco20mmIORT = 0.*deg;
665  const G4double spanningAngleBlocco20mmIORT = 360.*deg;
666  const G4double XPositionBlocco20mmIORT = -830. *mm;
667 
668 
669  solidBlocco20mmIORT = new G4Tubs("Blocco20mmIORT", innRadiusBlocco20mmIORT,
670  outRadiusBlocco20mmIORT,
671  hightBlocco20mmIORT,
672  startAngleBlocco20mmIORT,
673  spanningAngleBlocco20mmIORT);
674 
675  G4LogicalVolume* logBlocco20mmIORT = new G4LogicalVolume(solidBlocco20mmIORT,
676  Blocco20mmIORTMaterialIORT, "Blocco20mmIORT", 0, 0, 0);
677 
678  physiBlocco20mmIORT = new G4PVPlacement(G4Transform3D(rm4, G4ThreeVector((XPositionBlocco20mmIORT),0.,0.)),
679  "Blocco20mmORT", logBlocco20mmIORT, physicalTreatmentRoom, false, 0);
680 
681  logBlocco20mmIORT -> SetVisAttributes(green);
682 
683 
684  // -----------------------//
685  // Block 3 //
686  // -----------------------//
687 
688  const G4double outRadiusBlocco3IORT = 36.5 *mm;
689  const G4double innRadiusBlocco3IORT = 15. *mm;
690  const G4double hightBlocco3IORT = 3.5 *mm;
691  const G4double startAngleBlocco3IORT = 0.*deg;
692  const G4double spanningAngleBlocco3IORT = 360.*deg;
693  const G4double XPositionBlocco3IORT = -823.5 *mm;
694 
695 
696  solidBlocco3IORT = new G4Tubs("Blocco3IORT", innRadiusBlocco3IORT,
697  outRadiusBlocco3IORT,
698  hightBlocco3IORT,
699  startAngleBlocco3IORT,
700  spanningAngleBlocco3IORT);
701 
702  G4LogicalVolume* logBlocco3IORT = new G4LogicalVolume(solidBlocco3IORT,
703  Blocco3IORTMaterialIORT, "Blocco3IORT", 0, 0, 0);
704 
705  physiBlocco3IORT = new G4PVPlacement(G4Transform3D(rm4, G4ThreeVector((XPositionBlocco3IORT),0.,0.)),
706  "Blocco3ORT", logBlocco3IORT, physicalTreatmentRoom, false, 0);
707 
708  logBlocco3IORT -> SetVisAttributes(yellow);
709 
710  // -----------------------//
711  // Block 2 //
712  // -----------------------//
713 
714  const G4double outRadiusBlocco2IORT = 41.5 *mm;
715  const G4double innRadiusBlocco2IORT = 15. *mm;
716  const G4double hightBlocco2IORT = 8. *mm;
717  const G4double startAngleBlocco2IORT = 0.*deg;
718  const G4double spanningAngleBlocco2IORT = 360.*deg;
719  const G4double XPositionBlocco2IORT = -812. *mm;
720 
721 
722  solidBlocco2IORT = new G4Tubs("Blocco2IORT", innRadiusBlocco2IORT,
723  outRadiusBlocco2IORT,
724  hightBlocco2IORT,
725  startAngleBlocco2IORT,
726  spanningAngleBlocco2IORT);
727 
728  G4LogicalVolume* logBlocco2IORT = new G4LogicalVolume(solidBlocco2IORT,
729  Blocco2IORTMaterialIORT, "Blocco2IORT", 0, 0, 0);
730 
731  physiBlocco2IORT = new G4PVPlacement(G4Transform3D(rm4, G4ThreeVector((XPositionBlocco2IORT),0.,0.)),
732  "Blocco2IORT", logBlocco2IORT, physicalTreatmentRoom, false, 0);
733 
734  logBlocco2IORT -> SetVisAttributes(red);
735 
736  // ----------------------- //
737  // Block 1 //
738  // ----------------------- //
739 
740  const G4double outRadiusBlocco1IORT = 52.0 *mm;
741  const G4double innRadiusBlocco1IORT = 15. *mm;
742  const G4double hightBlocco1IORT = 8.5 *mm;
743  const G4double startAngleBlocco1IORT = 0.*deg;
744  const G4double spanningAngleBlocco1IORT = 360.*deg;
745  const G4double XPositionBlocco1IORT = -795.5*mm;
746 
747 
748  solidBlocco1IORT = new G4Tubs("Blocco1IORT", innRadiusBlocco1IORT,
749  outRadiusBlocco1IORT,
750  hightBlocco1IORT,
751  startAngleBlocco1IORT,
752  spanningAngleBlocco1IORT);
753 
754  G4LogicalVolume* logBlocco1IORT = new G4LogicalVolume(solidBlocco1IORT,
755  Blocco1IORTMaterialIORT, "Blocco1IORT", 0, 0, 0);
756 
757  physiBlocco1IORT = new G4PVPlacement(G4Transform3D(rm4, G4ThreeVector((XPositionBlocco1IORT),0.,0.)),
758  "Blocco1IORT", logBlocco1IORT, physicalTreatmentRoom, false, 0);
759 
760  logBlocco1IORT -> SetVisAttributes(white);
761 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4Material * Blocco3IORTMaterialIORT
G4Material * Blocco1IORTMaterialIORT
static const double deg
Definition: G4SIunits.hh:151
G4VPhysicalVolume * physiBlocco1IORT
HepGeom::Transform3D G4Transform3D
G4Material * Blocco20mmIORTMaterialIORT
G4VPhysicalVolume * physiBlocco20mmIORT
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiBlocco2IORT
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
G4VPhysicalVolume * physiBlocco3IORT
G4Material * Blocco2IORTMaterialIORT
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IortBeamLineFinalCollimator()

void Collimator40BeamLine::IortBeamLineFinalCollimator ( )

Definition at line 871 of file Collimator40BeamLine.cc.

872 {
873 // -----------------------//
874  // FINAL COLLIMATOR IORT //
875  //------------------------//
876 
877  // const G4double outRadiusFinalCollimatorIORT = 35. *mm;
878  // const G4double innRadiusFinalCollimatorIORT = 30. *mm;
879  const G4double hightFinalCollimatorIORT = 349.75 *mm;
880  const G4double startAngleFinalCollimatorIORT = 0.*deg;
881  const G4double spanningAngleFinalCollimatorIORT = 360.*deg;
882  const G4double finalCollimatorXPositionIORT = -404.75 *mm;
883 
884  G4double phi6 = 90. *deg;
885 
886 
888  rm6.rotateY(phi6);
889 
890 
891  solidFinalCollimatorIORT = new G4Tubs("FinalCollimatorIORT", innerRadiusFinalCollimatorIORT,
893  hightFinalCollimatorIORT,
894  startAngleFinalCollimatorIORT,
895  spanningAngleFinalCollimatorIORT);
896 
897  G4LogicalVolume* logFinalCollimatorIORT = new G4LogicalVolume(solidFinalCollimatorIORT,
898  finalCollimatorMaterialIORT, "FinalCollimatorIORT", 0, 0, 0);
899 
900  physiFinalCollimatorIORT = new G4PVPlacement(G4Transform3D(rm6, G4ThreeVector((finalCollimatorXPositionIORT),0.,0.)),
901  "FinalCollimatorIORT", logFinalCollimatorIORT, physicalTreatmentRoom, false, 0);
902 
903  // logFinalCollimatorIORT -> SetVisAttributes(G4VisAttributes::Invisible);
904  logFinalCollimatorIORT -> SetVisAttributes(green);
905 
906 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4Material * finalCollimatorMaterialIORT
G4VPhysicalVolume * physiFinalCollimatorIORT
static const double deg
Definition: G4SIunits.hh:151
HepGeom::Transform3D G4Transform3D
G4VPhysicalVolume * physicalTreatmentRoom
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:

◆ IortBeamLineJunctions()

void Collimator40BeamLine::IortBeamLineJunctions ( )

Definition at line 763 of file Collimator40BeamLine.cc.

764 {
765 
766 
767  G4double phi5 = 90. *deg;
768 
769 
770  G4RotationMatrix rm5;
771  rm5.rotateY(phi5);
772 // --------------------------------- //
773  // Junction 5 FINAL COLLIMATOR IORT //
774  // --------------------------------- //
775 
776  const G4double outRadiusGiunz5FinalCollIORT = 48.25 *mm;
777  const G4double innRadiusGiunz5FinalCollIORT = 13.75 *mm;
778  const G4double hightGiunz5FinalCollIORT = 3.5 *mm;
779  const G4double startAngleGiunz5FinalCollIORT = 0.*deg;
780  const G4double spanningAngleGiunz5FinalCollIORT = 360.*deg;
781  const G4double Giunz5FinalCollXPositionIORT = -783.5 *mm;
782 
783  solidGiunz5FinalCollIORT = new G4Tubs("Giunz5FinalCollIORT", innRadiusGiunz5FinalCollIORT,
784  outRadiusGiunz5FinalCollIORT,
785  hightGiunz5FinalCollIORT,
786  startAngleGiunz5FinalCollIORT,
787  spanningAngleGiunz5FinalCollIORT);
788 
789  G4LogicalVolume* logGiunz5FinalCollIORT = new G4LogicalVolume(solidGiunz5FinalCollIORT,
790  Giunz5FinalCollMaterialIORT, "Giunz5FinalCollIORT", 0, 0, 0);
791 
792  physiGiunz5FinalCollIORT = new G4PVPlacement(G4Transform3D(rm5, G4ThreeVector((Giunz5FinalCollXPositionIORT),0.,0.)),
793  "Giunz5FinalCollIORT", logGiunz5FinalCollIORT, physicalTreatmentRoom, false, 0);
794 
795  logGiunz5FinalCollIORT -> SetVisAttributes(yellow);
796 
797 // --------------------------------- //
798  // Junction 4 FINAL COLLIMATOR IORT //
799  // --------------------------------- //
800 
801  const G4double outRadiusGiunz4FinalCollIORT = 42. *mm;
802  const G4double innRadiusGiunz4FinalCollIORT = 13.75 *mm;
803  const G4double hightGiunz4FinalCollIORT = 8.5 *mm;
804  const G4double startAngleGiunz4FinalCollIORT = 0.*deg;
805  const G4double spanningAngleGiunz4FinalCollIORT = 360.*deg;
806  const G4double Giunz4FinalCollXPositionIORT = -771.5 *mm;
807 
808 
809 
810  solidGiunz4FinalCollIORT = new G4Tubs("Giunz4FinalCollIORT", innRadiusGiunz4FinalCollIORT,
811  outRadiusGiunz4FinalCollIORT,
812  hightGiunz4FinalCollIORT,
813  startAngleGiunz4FinalCollIORT,
814  spanningAngleGiunz4FinalCollIORT);
815 
816  G4LogicalVolume* logGiunz4FinalCollIORT = new G4LogicalVolume(solidGiunz4FinalCollIORT,
817  Giunz4FinalCollMaterialIORT, "Giunz4FinalCollIORT", 0, 0, 0);
818 
819  physiGiunz4FinalCollIORT = new G4PVPlacement(G4Transform3D(rm5, G4ThreeVector((Giunz4FinalCollXPositionIORT),0.,0.)),
820  "Giunz4FinalCollIORT", logGiunz4FinalCollIORT, physicalTreatmentRoom, false, 0);
821 
822  logGiunz4FinalCollIORT -> SetVisAttributes(blue);
823 
824 
825 
826  // --------------------------------- //
827  // Junction 3 FINAL COLLIMATOR IORT //
828  // --------------------------------- //
829 
830  const G4double outRadiusGiunz3FinalCollIORT = 42. *mm;
831  const G4double innRadiusGiunz3FinalCollIORT = 0. *mm;
832  const G4double hightGiunz3FinalCollIORT = 4.25 *mm;
833  const G4double startAngleGiunz3FinalCollIORT = 0.*deg;
834  const G4double spanningAngleGiunz3FinalCollIORT = 360.*deg;
835  const G4double Giunz3FinalCollXPositionIORT = -758.75 *mm;
836 
837 
838  solidGiunz3FinalCollIORT = new G4Tubs("Giunz3FinalCollIORT", innRadiusGiunz3FinalCollIORT,
839  outRadiusGiunz3FinalCollIORT,
840  hightGiunz3FinalCollIORT,
841  startAngleGiunz3FinalCollIORT,
842  spanningAngleGiunz3FinalCollIORT);
843 
844  G4LogicalVolume* logicsolidGiunz3FinalCollIORT = new G4LogicalVolume(solidGiunz3FinalCollIORT,
845  Giunz3FinalCollMaterialIORT, "Giunz3FinalCollIORT", 0, 0, 0);
846 
847  physiGiunz3FinalCollIORT = new G4PVPlacement(G4Transform3D(rm5, G4ThreeVector((Giunz3FinalCollXPositionIORT),0.,0.)),
848  "Giunz3FinalCollIORT", logicsolidGiunz3FinalCollIORT, physicalTreatmentRoom, false, 0);
849 
850  logicsolidGiunz3FinalCollIORT -> SetVisAttributes(yellow);
851  // logicsolidGiunz3FinalCollIORT -> SetVisAttributes (G4VisAttributes::Invisible);
852 
853 
854 
855  // --------------------------------- //
856  // Junction 3 FINAL COLLIMATOR IORT internal //
857  // --------------------------------- //
858 
859 
860 
861  solidGiunz3FinalCollIntIORT = new G4Cons("Giunz3FinalCollIntIORT",0.*mm,13.75*mm,0.*mm,20.0*mm,4.25*mm,0.*deg,360.*deg);
862 
863  G4LogicalVolume* logicsolidGiunz3FinalCollIntIORT = new G4LogicalVolume(solidGiunz3FinalCollIntIORT,
864  Giunz3FinalCollMaterialIntIORT, "Giunz3FinalCollIntIORT", 0, 0, 0);
865 
866  physiGiunz3FinalCollIntIORT = new G4PVPlacement(0, G4ThreeVector(0.,0.,0.),"Giunz3FinalCollIntIORT", logicsolidGiunz3FinalCollIntIORT,physiGiunz3FinalCollIORT, false, 0);
867 
868  logicsolidGiunz3FinalCollIntIORT -> SetVisAttributes(yellow);
869 }
G4VPhysicalVolume * physiGiunz5FinalCollIORT
G4VPhysicalVolume * physiGiunz4FinalCollIORT
CLHEP::Hep3Vector G4ThreeVector
G4Material * Giunz4FinalCollMaterialIORT
Definition: G4Tubs.hh:85
G4Material * Giunz3FinalCollMaterialIntIORT
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4VPhysicalVolume * physiGiunz3FinalCollIORT
G4VPhysicalVolume * physiGiunz3FinalCollIntIORT
G4Material * Giunz3FinalCollMaterialIORT
static const double deg
Definition: G4SIunits.hh:151
Definition: G4Cons.hh:83
HepGeom::Transform3D G4Transform3D
G4VPhysicalVolume * physicalTreatmentRoom
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
G4Material * Giunz5FinalCollMaterialIORT
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IortBeamLineMonitorChambers()

void Collimator40BeamLine::IortBeamLineMonitorChambers ( )

Definition at line 415 of file Collimator40BeamLine.cc.

416 {
417 
418  G4double phi3 = 90. *deg;
419 
420 
422  rm3.rotateY(phi3);
423 
425 
426  // Monitor Chamber System
427 
429 
430 
431  // ---------------------------------------------------------------//
432  // Superior Final Part Monitor Chambers 3 //
433  // ---------------------------------------------------------------//
434 
435  const G4double outRadiusPFS3IORT = 44.75 *mm;
436  const G4double innRadiusPFS3IORT = 17.5 *mm;
437  const G4double hightPFS3IORT = 3.03 *mm;
438  const G4double startAnglePFS3IORT = 0.*deg;
439  const G4double spanningAnglePFS3IORT = 360.*deg;
440  const G4double XPositionPFS3IORT = -848.755 *mm;
441 
442  solidPFS3IORT = new G4Tubs("PFS3IORT", innRadiusPFS3IORT,
443  outRadiusPFS3IORT,
444  hightPFS3IORT,
445  startAnglePFS3IORT,
446  spanningAnglePFS3IORT);
447 
448  G4LogicalVolume* logPFS3IORT = new G4LogicalVolume(solidPFS3IORT,
449  PFS3IORTMaterialIORT, "PFS3IORT", 0, 0, 0);
450 
451  physiPFS3IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionPFS3IORT),0.,0.)),
452  "PFS3IORT", logPFS3IORT, physicalTreatmentRoom, false, 0);
453 
454  logPFS3IORT -> SetVisAttributes(white);
455 
456 
457  // ---------------------------------------------------------------//
458  // Superior Final Part Monitor Chambers 2 //
459  // ---------------------------------------------------------------//
460 
461  const G4double outRadiusPFS2IORT = 44.75 *mm;
462  const G4double innRadiusPFS2IORT = 10. *mm;
463  const G4double hightPFS2IORT = 1.47 *mm;
464  const G4double startAnglePFS2IORT = 0.*deg;
465  const G4double spanningAnglePFS2IORT = 360.*deg;
466  const G4double XPositionPFS2IORT = -844.255 *mm;
467 
468 
469  solidPFS2IORT = new G4Tubs("PFS2IORT", innRadiusPFS2IORT,
470  outRadiusPFS2IORT,
471  hightPFS2IORT,
472  startAnglePFS2IORT,
473  spanningAnglePFS2IORT);
474 
475  G4LogicalVolume* logPFS2IORT = new G4LogicalVolume(solidPFS2IORT,
476  PFS2IORTMaterialIORT, "PFS2IORT", 0, 0, 0);
477 
478  physiPFS2IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionPFS2IORT),0.,0.)),
479  "PFS2IORT", logPFS2IORT, physicalTreatmentRoom, false, 0);
480 
481  logPFS2IORT -> SetVisAttributes(green);
482 
483  // ---------------------------------------------------------------//
484  // Superior Final Part Monitor Chambers 1 //
485  // ---------------------------------------------------------------//
486 
487  const G4double outRadiusPFS1IORT = 35. *mm;
488  const G4double innRadiusPFS1IORT = 10. *mm;
489  const G4double hightPFS1IORT = 0.88 *mm;
490  const G4double startAnglePFS1IORT = 0.*deg;
491  const G4double spanningAnglePFS1IORT = 360.*deg;
492  const G4double XPositionPFS1IORT = -841.905 *mm;
493 
494 
495  solidPFS1IORT = new G4Tubs("PFS1IORT", innRadiusPFS1IORT,
496  outRadiusPFS1IORT,
497  hightPFS1IORT,
498  startAnglePFS1IORT,
499  spanningAnglePFS1IORT);
500 
501  G4LogicalVolume* logPFS1IORT = new G4LogicalVolume(solidPFS1IORT,
502  PFS1IORTMaterialIORT, "PFS1IORT", 0, 0, 0);
503 
504  physiPFS1IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionPFS1IORT),0.,0.)),
505  "PFS1IORT", logPFS1IORT, physicalTreatmentRoom, false, 0);
506 
507  logPFS1IORT -> SetVisAttributes(green);
508 
509  // ------------------------------------------------//
510  // Monitor Chambers Cylinder //
511  // ------------------------------------------------//
512 
513  const G4double outRadiusCCMIORT = 35. *mm;
514  const G4double innRadiusCCMIORT = 10. *mm;
515  const G4double hightCCMIORT = 4.0125 *mm;
516  const G4double startAngleCCMIORT = 0.*deg;
517  const G4double spanningAngleCCMIORT = 360.*deg;
518  const G4double XPositionCCMIORT = -837.0125 *mm;
519 
520 
521  solidCCMIORT = new G4Tubs("CCMIORT", innRadiusCCMIORT,
522  outRadiusCCMIORT,
523  hightCCMIORT,
524  startAngleCCMIORT,
525  spanningAngleCCMIORT);
526 
527  G4LogicalVolume* logCCMIORT = new G4LogicalVolume(solidCCMIORT,
528  CCMIORTMaterialIORT, "CCMIORT", 0, 0, 0);
529 
530  physiCCMIORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionCCMIORT),0.,0.)),
531  "CCMIORT", logCCMIORT, physicalTreatmentRoom, false, 0);
532 
533  logCCMIORT -> SetVisAttributes(green);
534 
535 
536  // ------------------------------------------------//
537  // Second Monitor Chamber Lamina Al 2 of 2 //
538  // ------------------------------------------------//
539 
540  const G4double outRadiusCM2_2_2IORT = 20. *mm;
541  const G4double innRadiusCM2_2_2IORT = 0. *mm;
542  const G4double hightCM2_2_2IORT = 0.025 *mm;
543  const G4double startAngleCM2_2_2IORT = 0.*deg;
544  const G4double spanningAngleCM2_2_2IORT = 360.*deg;
545  const G4double XPositionCM2_2_2IORT = -841. *mm;
546 
547 
548  solidCM2_2_2IORT = new G4Tubs("CM2_2_2IORT", innRadiusCM2_2_2IORT,
549  outRadiusCM2_2_2IORT,
550  hightCM2_2_2IORT,
551  startAngleCM2_2_2IORT,
552  spanningAngleCM2_2_2IORT);
553 
554  G4LogicalVolume* logCM2_2_2IORT = new G4LogicalVolume(solidCM2_2_2IORT,
555  CM2_2_2IORTMaterialIORT, "CM2_2_2IORT", 0, 0, 0);
556 
557  physiCM2_2_2IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionCM2_2_2IORT),0.,0.)),
558  "CM2_2_2ORT", logCM2_2_2IORT, physicalTreatmentRoom, false, 0);
559 
560  logCM2_2_2IORT -> SetVisAttributes(green);
561 
562 
563 // ------------------------------------------------//
564  // Second Monitor Chamber Lamina Al 1 of 2 //
565  // ------------------------------------------------//
566 
567  const G4double outRadiusCM2_1_2IORT = 20. *mm;
568  const G4double innRadiusCM2_1_2IORT = 0. *mm;
569  const G4double hightCM2_1_2IORT = 0.025 *mm;
570  const G4double startAngleCM2_1_2IORT = 0.*deg;
571  const G4double spanningAngleCM2_1_2IORT = 360.*deg;
572  const G4double XPositionCM2_1_2IORT = -839. *mm;
573 
574 
575  solidCM2_1_2IORT = new G4Tubs("CM2_1_2IORT", innRadiusCM2_1_2IORT,
576  outRadiusCM2_1_2IORT,
577  hightCM2_1_2IORT,
578  startAngleCM2_1_2IORT,
579  spanningAngleCM2_1_2IORT);
580 
581  G4LogicalVolume* logCM2_1_2IORT = new G4LogicalVolume(solidCM2_1_2IORT,
582  CM2_1_2IORTMaterialIORT, "CM2_1_2IORT", 0, 0, 0);
583 
584  physiCM2_1_2IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionCM2_1_2IORT),0.,0.)),
585  "CM2_1_2ORT", logCM2_1_2IORT, physicalTreatmentRoom, false, 0);
586 
587  logCM2_1_2IORT -> SetVisAttributes(yellow);
588 
589  // ------------------------------------------------//
590  // First Monitor Chamber Lamina Al 2 of 2 //
591  // ------------------------------------------------//
592 
593  const G4double outRadiusCM1_2_2IORT = 20. *mm;
594  const G4double innRadiusCM1_2_2IORT = 0. *mm;
595  const G4double hightCM1_2_2IORT = 0.025 *mm;
596  const G4double startAngleCM1_2_2IORT = 0.*deg;
597  const G4double spanningAngleCM1_2_2IORT = 360.*deg;
598  const G4double XPositionCM1_2_2IORT = -837. *mm;
599 
600  solidCM1_2_2IORT = new G4Tubs("CM1_2_2IORT", innRadiusCM1_2_2IORT,
601  outRadiusCM1_2_2IORT,
602  hightCM1_2_2IORT,
603  startAngleCM1_2_2IORT,
604  spanningAngleCM1_2_2IORT);
605 
606  G4LogicalVolume* logCM1_2_2IORT = new G4LogicalVolume(solidCM1_2_2IORT,
607  CM1_2_2IORTMaterialIORT, "CM1_2_2IORT", 0, 0, 0);
608 
609  physiCM1_2_2IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionCM1_2_2IORT),0.,0.)),
610  "CM1_2_2ORT", logCM1_2_2IORT, physicalTreatmentRoom, false, 0);
611 
612  logCM1_2_2IORT -> SetVisAttributes(yellow);
613 
614  // ------------------------------------------------//
615  // First Monitor Chamber Lamina Al 1 of 2 //
616  // ------------------------------------------------//
617 
618  const G4double outRadiusCM1_1_2IORT = 20. *mm;
619  const G4double innRadiusCM1_1_2IORT = 0. *mm;
620  const G4double hightCM1_1_2IORT = 0.025 *mm;
621  const G4double startAngleCM1_1_2IORT = 0.*deg;
622  const G4double spanningAngleCM1_1_2IORT = 360.*deg;
623  const G4double XPositionCM1_1_2IORT = -835. *mm;
624 
625 
626 
627  solidCM1_1_2IORT = new G4Tubs("CM1_1_2IORT", innRadiusCM1_1_2IORT,
628  outRadiusCM1_1_2IORT,
629  hightCM1_1_2IORT,
630  startAngleCM1_1_2IORT,
631  spanningAngleCM1_1_2IORT);
632 
633  G4LogicalVolume* logCM1_1_2IORT = new G4LogicalVolume(solidCM1_1_2IORT,
634  CM1_1_2IORTMaterialIORT, "CM1_1_2IORT", 0, 0, 0);
635 
636  physiCM1_1_2IORT = new G4PVPlacement(G4Transform3D(rm3, G4ThreeVector((XPositionCM1_1_2IORT),0.,0.)),
637  "CM1_1_2ORT", logCM1_1_2IORT, physicalTreatmentRoom, false, 0);
638 
639  logCM1_1_2IORT -> SetVisAttributes(yellow);
640 }
G4VPhysicalVolume * physiCM2_2_2IORT
G4VPhysicalVolume * physiPFS2IORT
CLHEP::Hep3Vector G4ThreeVector
G4Material * CM2_2_2IORTMaterialIORT
G4Material * CM1_2_2IORTMaterialIORT
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4VPhysicalVolume * physiCM2_1_2IORT
static const double deg
Definition: G4SIunits.hh:151
G4VPhysicalVolume * physiCM1_1_2IORT
G4VPhysicalVolume * physiCCMIORT
HepGeom::Transform3D G4Transform3D
G4Material * CM2_1_2IORTMaterialIORT
G4Material * CM1_1_2IORTMaterialIORT
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiPFS1IORT
double G4double
Definition: G4Types.hh:76
static const double mm
Definition: G4SIunits.hh:114
G4VPhysicalVolume * physiPFS3IORT
G4VPhysicalVolume * physiCM1_2_2IORT
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IortBeamLineTitaniumWindows()

void Collimator40BeamLine::IortBeamLineTitaniumWindows ( )

Definition at line 381 of file Collimator40BeamLine.cc.

382 {
383 // ---------------------------------------------------------------//
384  // Titanium Window //
385  // ---------------------------------------------------------------//
386 
387  G4double phi2 = 90. *deg;
388 
389 
390  G4RotationMatrix rm2;
391  rm2.rotateY(phi2);
392 
393  const G4double outRadiusFTIORT = 44.75 *mm;
394  const G4double innRadiusFTIORT = 8.5 *mm;
395  const G4double hightFTIORT = 0.006 *mm;
396  const G4double startAngleFTIORT = 0.*deg;
397  const G4double spanningAngleFTIORT = 360.*deg;
398  const G4double XPositionFTIORT = -861.791 *mm;
399 
400  solidFTIORT = new G4Tubs("FTIORT", innRadiusFTIORT,
401  outRadiusFTIORT,
402  hightFTIORT,
403  startAngleFTIORT,
404  spanningAngleFTIORT);
405 
406  G4LogicalVolume* logFTIORT = new G4LogicalVolume(solidFTIORT,
407  FTIORTMaterialIORT, "FTIORT", 0, 0, 0);
408 
409  physiFTIORT = new G4PVPlacement(G4Transform3D(rm2, G4ThreeVector((XPositionFTIORT),0.,0.)),
410  "FTIORT", logFTIORT, physicalTreatmentRoom, false, 0);
411 
412  logFTIORT -> SetVisAttributes(yellow);
413 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
G4VPhysicalVolume * physiFTIORT
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
static const double deg
Definition: G4SIunits.hh:151
HepGeom::Transform3D G4Transform3D
G4VPhysicalVolume * physicalTreatmentRoom
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:

◆ IortBeamLineVacuumSource()

void Collimator40BeamLine::IortBeamLineVacuumSource ( )

Definition at line 345 of file Collimator40BeamLine.cc.

346 {
347  // ---------------------------------------------------------------//
348  // Vacuum Source //
349  // ---------------------------------------------------------------//
350 
351 
352  G4double phi1 = 90. *deg;
353 
354 
355  G4RotationMatrix rm1;
356  rm1.rotateY(phi1);
357 
358  const G4double outRadiusVSIORT = 44.75 *mm;
359  const G4double innRadiusVSIORT = 0.*mm;
360  const G4double hightVSIORT = 1. *mm;
361  const G4double startAngleVSIORT = 0.*deg;
362  const G4double spanningAngleVSIORT = 360.*deg;
363  const G4double XPositionVSIORT = -862.797 *mm;
364 
365  solidVSIORT = new G4Tubs("VSIORT", innRadiusVSIORT,
366  outRadiusVSIORT,
367  hightVSIORT,
368  startAngleVSIORT,
369  spanningAngleVSIORT);
370 
371  G4LogicalVolume* logVSIORT = new G4LogicalVolume(solidVSIORT,
372  VSIORTMaterialIORT, "VSIORT", 0, 0, 0);
373 
374  physiVSIORT = new G4PVPlacement(G4Transform3D(rm1, G4ThreeVector((XPositionVSIORT),0.,0.)),
375  "VSIORT", logVSIORT, physicalTreatmentRoom, false, 0);
376 
377  logVSIORT -> SetVisAttributes(green);
378 
379 }
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
static const double deg
Definition: G4SIunits.hh:151
HepGeom::Transform3D G4Transform3D
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiVSIORT
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:

◆ SetDefaultDimensions()

void Collimator40BeamLine::SetDefaultDimensions ( )
private

Definition at line 158 of file Collimator40BeamLine.cc.

159 {
160 
161  // Set of coulors that can be used
162  white = new G4VisAttributes( G4Colour());
163  white -> SetVisibility(true);
164  //white -> SetForceSolid(true);
165 
166  blue = new G4VisAttributes(G4Colour(0. ,0. ,1.));
167  blue -> SetVisibility(true);
168  //blue -> SetForceSolid(true);
169 
170  gray = new G4VisAttributes( G4Colour(0.5, 0.5, 0.5 ));
171  gray-> SetVisibility(true);
172  //gray-> SetForceSolid(true);
173 
174  red = new G4VisAttributes(G4Colour(1. ,0. ,0.));
175  red-> SetVisibility(true);
176  //red-> SetForceSolid(true);
177 
178  yellow = new G4VisAttributes(G4Colour(1., 1., 0. ));
179  yellow-> SetVisibility(true);
180  //yellow-> SetForceSolid(true);
181 
182  green = new G4VisAttributes( G4Colour(25/255. , 255/255. , 25/255. ));
183  green -> SetVisibility(true);
184  //green -> SetForceSolid(true);
185 
186  darkGreen = new G4VisAttributes( G4Colour(0/255. , 100/255. , 0/255. ));
187  darkGreen -> SetVisibility(true);
188  //darkGreen -> SetForceSolid(true);
189 
190  darkOrange3 = new G4VisAttributes( G4Colour(205/255. , 102/255. , 000/255. ));
191  darkOrange3 -> SetVisibility(true);
192  //darkOrange3 -> SetForceSolid(true);
193 
194  skyBlue = new G4VisAttributes( G4Colour(135/255. , 206/255. , 235/255. ));
195  skyBlue -> SetVisibility(true);
196  //skyBlue -> SetForceSolid(true);
197 
198 
199 
200  // Geometry FINAL COLLIMATOR DEFAULTS
201 
202  G4double defaultOuterRadiusFinalCollimatorIORT = 25. *mm;
203  OuterRadiusFinalCollimatorIORT = defaultOuterRadiusFinalCollimatorIORT;
204 
205  G4double defaultinnerRadiusFinalCollimatorIORT = 20. *mm;
206  innerRadiusFinalCollimatorIORT = defaultinnerRadiusFinalCollimatorIORT;
207 
208  // DEFAULT DEFINITION OF THE MATERIALS
209  // All elements and compound definition follows the NIST database
210 
211  // ELEMENTS
212  G4bool isotopes = false;
213  G4Material* aluminumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Al", isotopes);
214  //G4Material* tantalumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Ta", isotopes);
215  //G4Material* copperNistAsMaterial = G4NistManager::Instance()->FindOrBuildMaterial("G4_Cu", isotopes);
218 
219  // COMPOUND
220  G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes);
221  //G4Material* kaptonNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_KAPTON", isotopes);
222  G4Material* galacticNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Galactic", isotopes);
223  G4Material* PMMANist = G4NistManager::Instance()->FindOrBuildMaterial("G4_PLEXIGLASS", isotopes);
224  //G4Material* mylarNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_MYLAR", isotopes);
225  G4Material* titanioNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Ti", isotopes);
226 
227  G4double d; // Density
228  G4int nComponents;// Number of components
229  G4double fractionmass; // Fraction in mass of an element in a material
230 
231  d = 8.40*g/cm3; // brass
232  nComponents = 2;
233  G4Material* brass = new G4Material("Brass", d, nComponents);
234  brass -> AddElement(zincNist, fractionmass = 30 *perCent);
235  brass -> AddElement(copperNist, fractionmass = 70 *perCent);
236 
237 
238  // MATERIAL ASSIGNMENT
239 
240 
241  // Material of the FINAL COLLIMATOR IORT
242  finalCollimatorMaterialIORT = PMMANist;
243 
244  // Junction 1 FINAL COLLIMATOR IORT
245  Giunz1FinalCollMaterialIORT = PMMANist;
246 
247  // Junction 2 FINAL COLLIMATOR IORT
248  Giunz2FinalCollMaterialIORT = PMMANist;
249 
250  // Junction 3 FINAL COLLIMATOR IORT
251  Giunz3FinalCollMaterialIORT = PMMANist;
252 
253  // Junction 3 FINAL COLLIMATOR Int IORT
255 
256  // Junction 4 FINAL COLLIMATOR IORT
257  Giunz4FinalCollMaterialIORT = PMMANist;
258 
259  // Junction 5 FINAL COLLIMATOR IORT
260  Giunz5FinalCollMaterialIORT = PMMANist;
261 
262  // Block 1 Diameter 30 mm
263  Blocco1IORTMaterialIORT = PMMANist;
264 
265  // Block 2 Diameter 30 mm
266  Blocco2IORTMaterialIORT = PMMANist;
267 
268  // Block 3 Diameter 30 mm
269  Blocco3IORTMaterialIORT = PMMANist;
270 
271  // Block Diameter 20 mm
272  Blocco20mmIORTMaterialIORT = PMMANist;
273 
274  // First Monitor Chamber Lamina Al 1 of 2
275  CM1_1_2IORTMaterialIORT = aluminumNist;
276 
277  // First Monitor Chamber Lamina Al 2 of 2
278  CM1_2_2IORTMaterialIORT = aluminumNist;
279 
280  // Second Monitor Chamber Lamina Al 1 of 2
281  CM2_1_2IORTMaterialIORT = aluminumNist;
282 
283  // Second Monitor Chamber Lamina Al 2 of 2
284  CM2_2_2IORTMaterialIORT = aluminumNist;
285 
286  // Monitor Chamber Cylinder
287  CCMIORTMaterialIORT = PMMANist;
288 
289  // Superior Final Part Monitor Chambers
290  PFS1IORTMaterialIORT = PMMANist;
291 
292  // Superior Final Part Monitor Chambers
293  PFS2IORTMaterialIORT = PMMANist;
294 
295  // Superior Final Part Monitor Chambers
296  PFS3IORTMaterialIORT = PMMANist;
297 
298  // Superior Final Part Monitor Chambers Material
299  FTIORTMaterialIORT = titanioNist;
300 
301  // Vacuum Source
302  VSIORTMaterialIORT = galacticNist;
303 }
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
Float_t d
G4Material * CM2_2_2IORTMaterialIORT
G4Material * Giunz4FinalCollMaterialIORT
G4Material * CM1_2_2IORTMaterialIORT
G4Material * Giunz3FinalCollMaterialIntIORT
G4int nComponents
Definition: TRTMaterials.hh:41
G4Material * Giunz2FinalCollMaterialIORT
int G4int
Definition: G4Types.hh:78
static G4NistManager * Instance()
G4Material * finalCollimatorMaterialIORT
G4Material * Giunz3FinalCollMaterialIORT
function g(Y1, Y2, PT2)
Definition: hijing1.383.f:5206
G4Material * Giunz1FinalCollMaterialIORT
G4Material * Blocco3IORTMaterialIORT
G4Material * Blocco1IORTMaterialIORT
bool G4bool
Definition: G4Types.hh:79
static const double cm3
Definition: G4SIunits.hh:120
static const double perCent
Definition: G4SIunits.hh:329
G4Material * Blocco20mmIORTMaterialIORT
G4Material * CM2_1_2IORTMaterialIORT
G4Material * CM1_1_2IORTMaterialIORT
G4VisAttributes * darkOrange3
G4VisAttributes * darkGreen
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
G4Material * Blocco2IORTMaterialIORT
G4Material * Giunz5FinalCollMaterialIORT
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetInnerRadiusFinalCollimatorIORT()

void Collimator40BeamLine::SetInnerRadiusFinalCollimatorIORT ( G4double  value)

Definition at line 913 of file Collimator40BeamLine.cc.

914 {
915  solidFinalCollimatorIORT -> SetInnerRadius(value);
917  G4cout<<"Inner Radius of the final collimator IORT is (mm):"
918  << solidFinalCollimatorIORT -> GetInnerRadius()/mm
919  << G4endl;
920 }
G4GLOB_DLL std::ostream G4cout
static G4RunManager * GetRunManager()
Definition: G4RunManager.cc:79
#define G4endl
Definition: G4ios.hh:61
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:

◆ SetOuterRadiusFinalCollimatorIORT()

void Collimator40BeamLine::SetOuterRadiusFinalCollimatorIORT ( G4double  value)

Definition at line 924 of file Collimator40BeamLine.cc.

925 {
926  solidFinalCollimatorIORT -> SetOuterRadius(value);
928  G4cout<<"Outer Radius of the final collimator IORT is (mm):"
929  << solidFinalCollimatorIORT -> GetOuterRadius()/mm
930  << G4endl;
931 }
G4GLOB_DLL std::ostream G4cout
static G4RunManager * GetRunManager()
Definition: G4RunManager.cc:79
#define G4endl
Definition: G4ios.hh:61
static const double mm
Definition: G4SIunits.hh:114
Here is the call graph for this function:

Member Data Documentation

◆ Blocco1IORTMaterialIORT

G4Material* Collimator40BeamLine::Blocco1IORTMaterialIORT
private

Definition at line 147 of file Collimator40BeamLine.hh.

◆ Blocco20mmIORTMaterialIORT

G4Material* Collimator40BeamLine::Blocco20mmIORTMaterialIORT
private

Definition at line 162 of file Collimator40BeamLine.hh.

◆ Blocco2IORTMaterialIORT

G4Material* Collimator40BeamLine::Blocco2IORTMaterialIORT
private

Definition at line 152 of file Collimator40BeamLine.hh.

◆ Blocco3IORTMaterialIORT

G4Material* Collimator40BeamLine::Blocco3IORTMaterialIORT
private

Definition at line 157 of file Collimator40BeamLine.hh.

◆ blue

G4VisAttributes* Collimator40BeamLine::blue
private

Definition at line 101 of file Collimator40BeamLine.hh.

◆ CCMIORTMaterialIORT

G4Material* Collimator40BeamLine::CCMIORTMaterialIORT
private

Definition at line 187 of file Collimator40BeamLine.hh.

◆ CM1_1_2IORTMaterialIORT

G4Material* Collimator40BeamLine::CM1_1_2IORTMaterialIORT
private

Definition at line 167 of file Collimator40BeamLine.hh.

◆ CM1_2_2IORTMaterialIORT

G4Material* Collimator40BeamLine::CM1_2_2IORTMaterialIORT
private

Definition at line 172 of file Collimator40BeamLine.hh.

◆ CM2_1_2IORTMaterialIORT

G4Material* Collimator40BeamLine::CM2_1_2IORTMaterialIORT
private

Definition at line 177 of file Collimator40BeamLine.hh.

◆ CM2_2_2IORTMaterialIORT

G4Material* Collimator40BeamLine::CM2_2_2IORTMaterialIORT
private

Definition at line 182 of file Collimator40BeamLine.hh.

◆ collimatorMessenger

Collimator40BeamLineMessenger* Collimator40BeamLine::collimatorMessenger
private

Definition at line 97 of file Collimator40BeamLine.hh.

◆ darkGreen

G4VisAttributes* Collimator40BeamLine::darkGreen
private

Definition at line 107 of file Collimator40BeamLine.hh.

◆ darkOrange3

G4VisAttributes* Collimator40BeamLine::darkOrange3
private

Definition at line 108 of file Collimator40BeamLine.hh.

◆ finalCollimatorMaterialIORT

G4Material* Collimator40BeamLine::finalCollimatorMaterialIORT
private

Definition at line 116 of file Collimator40BeamLine.hh.

◆ FTIORTMaterialIORT

G4Material* Collimator40BeamLine::FTIORTMaterialIORT
private

Definition at line 207 of file Collimator40BeamLine.hh.

◆ Giunz1FinalCollMaterialIORT

G4Material* Collimator40BeamLine::Giunz1FinalCollMaterialIORT
private

Definition at line 119 of file Collimator40BeamLine.hh.

◆ Giunz2FinalCollMaterialIORT

G4Material* Collimator40BeamLine::Giunz2FinalCollMaterialIORT
private

Definition at line 122 of file Collimator40BeamLine.hh.

◆ Giunz3FinalCollMaterialIntIORT

G4Material* Collimator40BeamLine::Giunz3FinalCollMaterialIntIORT
private

Definition at line 131 of file Collimator40BeamLine.hh.

◆ Giunz3FinalCollMaterialIORT

G4Material* Collimator40BeamLine::Giunz3FinalCollMaterialIORT
private

Definition at line 127 of file Collimator40BeamLine.hh.

◆ Giunz4FinalCollMaterialIORT

G4Material* Collimator40BeamLine::Giunz4FinalCollMaterialIORT
private

Definition at line 137 of file Collimator40BeamLine.hh.

◆ Giunz5FinalCollMaterialIORT

G4Material* Collimator40BeamLine::Giunz5FinalCollMaterialIORT
private

Definition at line 142 of file Collimator40BeamLine.hh.

◆ gray

G4VisAttributes* Collimator40BeamLine::gray
private

Definition at line 102 of file Collimator40BeamLine.hh.

◆ green

G4VisAttributes* Collimator40BeamLine::green
private

Definition at line 106 of file Collimator40BeamLine.hh.

◆ innerRadiusFinalCollimatorIORT

G4double Collimator40BeamLine::innerRadiusFinalCollimatorIORT
private

Definition at line 112 of file Collimator40BeamLine.hh.

◆ iortDetectorConstruction

IORTDetectorConstruction* Collimator40BeamLine::iortDetectorConstruction
private

Definition at line 99 of file Collimator40BeamLine.hh.

◆ OuterRadiusFinalCollimatorIORT

G4double Collimator40BeamLine::OuterRadiusFinalCollimatorIORT
private

Definition at line 113 of file Collimator40BeamLine.hh.

◆ PFS1IORTMaterialIORT

G4Material* Collimator40BeamLine::PFS1IORTMaterialIORT
private

Definition at line 192 of file Collimator40BeamLine.hh.

◆ PFS2IORTMaterialIORT

G4Material* Collimator40BeamLine::PFS2IORTMaterialIORT
private

Definition at line 197 of file Collimator40BeamLine.hh.

◆ PFS3IORTMaterialIORT

G4Material* Collimator40BeamLine::PFS3IORTMaterialIORT
private

Definition at line 202 of file Collimator40BeamLine.hh.

◆ physiBlocco1IORT

G4VPhysicalVolume* Collimator40BeamLine::physiBlocco1IORT
private

Definition at line 146 of file Collimator40BeamLine.hh.

◆ physiBlocco20mmIORT

G4VPhysicalVolume* Collimator40BeamLine::physiBlocco20mmIORT
private

Definition at line 161 of file Collimator40BeamLine.hh.

◆ physiBlocco2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiBlocco2IORT
private

Definition at line 151 of file Collimator40BeamLine.hh.

◆ physiBlocco3IORT

G4VPhysicalVolume* Collimator40BeamLine::physiBlocco3IORT
private

Definition at line 156 of file Collimator40BeamLine.hh.

◆ physicalTreatmentRoom

G4VPhysicalVolume* Collimator40BeamLine::physicalTreatmentRoom
private

Definition at line 98 of file Collimator40BeamLine.hh.

◆ physiCCMIORT

G4VPhysicalVolume* Collimator40BeamLine::physiCCMIORT
private

Definition at line 186 of file Collimator40BeamLine.hh.

◆ physiCM1_1_2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiCM1_1_2IORT
private

Definition at line 166 of file Collimator40BeamLine.hh.

◆ physiCM1_2_2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiCM1_2_2IORT
private

Definition at line 171 of file Collimator40BeamLine.hh.

◆ physiCM2_1_2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiCM2_1_2IORT
private

Definition at line 176 of file Collimator40BeamLine.hh.

◆ physiCM2_2_2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiCM2_2_2IORT
private

Definition at line 181 of file Collimator40BeamLine.hh.

◆ physiFinalCollimatorIORT

G4VPhysicalVolume* Collimator40BeamLine::physiFinalCollimatorIORT
private

Definition at line 115 of file Collimator40BeamLine.hh.

◆ physiFTIORT

G4VPhysicalVolume* Collimator40BeamLine::physiFTIORT
private

Definition at line 206 of file Collimator40BeamLine.hh.

◆ physiGiunz3FinalCollIntIORT

G4VPhysicalVolume* Collimator40BeamLine::physiGiunz3FinalCollIntIORT
private

Definition at line 132 of file Collimator40BeamLine.hh.

◆ physiGiunz3FinalCollIORT

G4VPhysicalVolume* Collimator40BeamLine::physiGiunz3FinalCollIORT
private

Definition at line 126 of file Collimator40BeamLine.hh.

◆ physiGiunz4FinalCollIORT

G4VPhysicalVolume* Collimator40BeamLine::physiGiunz4FinalCollIORT
private

Definition at line 136 of file Collimator40BeamLine.hh.

◆ physiGiunz5FinalCollIORT

G4VPhysicalVolume* Collimator40BeamLine::physiGiunz5FinalCollIORT
private

Definition at line 141 of file Collimator40BeamLine.hh.

◆ physiPFS1IORT

G4VPhysicalVolume* Collimator40BeamLine::physiPFS1IORT
private

Definition at line 191 of file Collimator40BeamLine.hh.

◆ physiPFS2IORT

G4VPhysicalVolume* Collimator40BeamLine::physiPFS2IORT
private

Definition at line 196 of file Collimator40BeamLine.hh.

◆ physiPFS3IORT

G4VPhysicalVolume* Collimator40BeamLine::physiPFS3IORT
private

Definition at line 201 of file Collimator40BeamLine.hh.

◆ physiVSIORT

G4VPhysicalVolume* Collimator40BeamLine::physiVSIORT
private

Definition at line 211 of file Collimator40BeamLine.hh.

◆ red

G4VisAttributes* Collimator40BeamLine::red
private

Definition at line 104 of file Collimator40BeamLine.hh.

◆ skyBlue

G4VisAttributes* Collimator40BeamLine::skyBlue
private

Definition at line 109 of file Collimator40BeamLine.hh.

◆ solidBlocco1IORT

G4Tubs* Collimator40BeamLine::solidBlocco1IORT
private

Definition at line 145 of file Collimator40BeamLine.hh.

◆ solidBlocco20mmIORT

G4Tubs* Collimator40BeamLine::solidBlocco20mmIORT
private

Definition at line 160 of file Collimator40BeamLine.hh.

◆ solidBlocco2IORT

G4Tubs* Collimator40BeamLine::solidBlocco2IORT
private

Definition at line 150 of file Collimator40BeamLine.hh.

◆ solidBlocco3IORT

G4Tubs* Collimator40BeamLine::solidBlocco3IORT
private

Definition at line 155 of file Collimator40BeamLine.hh.

◆ solidCCMIORT

G4Tubs* Collimator40BeamLine::solidCCMIORT
private

Definition at line 185 of file Collimator40BeamLine.hh.

◆ solidCM1_1_2IORT

G4Tubs* Collimator40BeamLine::solidCM1_1_2IORT
private

Definition at line 165 of file Collimator40BeamLine.hh.

◆ solidCM1_2_2IORT

G4Tubs* Collimator40BeamLine::solidCM1_2_2IORT
private

Definition at line 170 of file Collimator40BeamLine.hh.

◆ solidCM2_1_2IORT

G4Tubs* Collimator40BeamLine::solidCM2_1_2IORT
private

Definition at line 175 of file Collimator40BeamLine.hh.

◆ solidCM2_2_2IORT

G4Tubs* Collimator40BeamLine::solidCM2_2_2IORT
private

Definition at line 180 of file Collimator40BeamLine.hh.

◆ solidFinalCollimatorIORT

G4Tubs* Collimator40BeamLine::solidFinalCollimatorIORT
private

Definition at line 114 of file Collimator40BeamLine.hh.

◆ solidFTIORT

G4Tubs* Collimator40BeamLine::solidFTIORT
private

Definition at line 205 of file Collimator40BeamLine.hh.

◆ solidGiunz3FinalCollIntIORT

G4Cons* Collimator40BeamLine::solidGiunz3FinalCollIntIORT
private

Definition at line 130 of file Collimator40BeamLine.hh.

◆ solidGiunz3FinalCollIORT

G4Tubs* Collimator40BeamLine::solidGiunz3FinalCollIORT
private

Definition at line 125 of file Collimator40BeamLine.hh.

◆ solidGiunz4FinalCollIORT

G4Tubs* Collimator40BeamLine::solidGiunz4FinalCollIORT
private

Definition at line 135 of file Collimator40BeamLine.hh.

◆ solidGiunz5FinalCollIORT

G4Tubs* Collimator40BeamLine::solidGiunz5FinalCollIORT
private

Definition at line 140 of file Collimator40BeamLine.hh.

◆ solidPFS1IORT

G4Tubs* Collimator40BeamLine::solidPFS1IORT
private

Definition at line 190 of file Collimator40BeamLine.hh.

◆ solidPFS2IORT

G4Tubs* Collimator40BeamLine::solidPFS2IORT
private

Definition at line 195 of file Collimator40BeamLine.hh.

◆ solidPFS3IORT

G4Tubs* Collimator40BeamLine::solidPFS3IORT
private

Definition at line 200 of file Collimator40BeamLine.hh.

◆ solidVSIORT

G4Tubs* Collimator40BeamLine::solidVSIORT
private

Definition at line 210 of file Collimator40BeamLine.hh.

◆ VSIORTMaterialIORT

G4Material* Collimator40BeamLine::VSIORTMaterialIORT
private

Definition at line 212 of file Collimator40BeamLine.hh.

◆ white

G4VisAttributes* Collimator40BeamLine::white
private

Definition at line 103 of file Collimator40BeamLine.hh.

◆ yellow

G4VisAttributes* Collimator40BeamLine::yellow
private

Definition at line 105 of file Collimator40BeamLine.hh.


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