Geant4  10.02.p03
Collimator50BeamLine Class Reference

#include <Collimator50BeamLine.hh>

Inheritance diagram for Collimator50BeamLine:
Collaboration diagram for Collimator50BeamLine:

Public Member Functions

 Collimator50BeamLine ()
 
 ~Collimator50BeamLine ()
 
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 ConstructCollimator50BeamLine ()
 

Private Attributes

Collimator50BeamLineMessengercollimatorMessenger
 
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 Collimator50BeamLine.hh.

Constructor & Destructor Documentation

◆ Collimator50BeamLine()

Collimator50BeamLine::Collimator50BeamLine ( )

Definition at line 60 of file Collimator50BeamLine.cc.

60  :
62 
63 
64 
67 
70 
73 
76 
79 
82 
85 
88 
91 
94 
97 
100 
101  solidCM2_2_2IORT(0),
102  physiCM2_2_2IORT(0),
103 
104  solidCCMIORT(0),
105  physiCCMIORT(0),
106 
107  solidPFS1IORT(0),
108  physiPFS1IORT(0),
109 
110  solidPFS2IORT(0),
111  physiPFS2IORT(0),
112 
113  solidPFS3IORT(0),
114  physiPFS3IORT(0),
115 
116  solidFTIORT(0),
117  physiFTIORT(0)
118 
119 
120 {
121  // Messenger to change parameters of the collimator50BeamLine geometry
123 
124 }
IORTDetectorConstruction * iortDetectorConstruction
G4VPhysicalVolume * physicalTreatmentRoom
G4VPhysicalVolume * physiFTIORT
G4VPhysicalVolume * physiGiunz5FinalCollIORT
G4VPhysicalVolume * physiBlocco20mmIORT
G4VPhysicalVolume * physiFinalCollimatorIORT
G4VPhysicalVolume * physiBlocco1IORT
Collimator50BeamLineMessenger * collimatorMessenger
G4VPhysicalVolume * physiPFS1IORT
G4VPhysicalVolume * physiGiunz3FinalCollIORT
G4VPhysicalVolume * physiGiunz4FinalCollIORT
G4VPhysicalVolume * physiCCMIORT
G4VPhysicalVolume * physiBlocco2IORT
G4VPhysicalVolume * physiGiunz3FinalCollIntIORT
G4VPhysicalVolume * physiPFS3IORT
G4VPhysicalVolume * physiCM2_2_2IORT
G4VPhysicalVolume * physiCM1_2_2IORT
G4VPhysicalVolume * physiPFS2IORT
G4VPhysicalVolume * physiBlocco3IORT
G4VPhysicalVolume * physiCM2_1_2IORT
G4VPhysicalVolume * physiCM1_1_2IORT

◆ ~Collimator50BeamLine()

Collimator50BeamLine::~Collimator50BeamLine ( )

Definition at line 126 of file Collimator50BeamLine.cc.

127 {
128  delete collimatorMessenger;
130 }
IORTDetectorConstruction * iortDetectorConstruction
Collimator50BeamLineMessenger * collimatorMessenger

Member Function Documentation

◆ Construct()

G4VPhysicalVolume * Collimator50BeamLine::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 135 of file Collimator50BeamLine.cc.

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

◆ ConstructCollimator50BeamLine()

void Collimator50BeamLine::ConstructCollimator50BeamLine ( )
private

Definition at line 309 of file Collimator50BeamLine.cc.

310 {
311  // -----------------------------
312  // Treatment room - World volume
313  //------------------------------
314  // Treatment room sizes
315  const G4double worldX = 400.0 *cm;
316  const G4double worldY = 400.0 *cm;
317  const G4double worldZ = 400.0 *cm;
318  G4bool isotopes = false;
319 
320  G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes);
321  G4Box* treatmentRoom = new G4Box("TreatmentRoom",worldX,worldY,worldZ);
322  G4LogicalVolume* logicTreatmentRoom = new G4LogicalVolume(treatmentRoom,
323  airNist,
324  "logicTreatmentRoom",
325  0,0,0);
327  G4ThreeVector(),
328  "physicalTreatmentRoom",
329  logicTreatmentRoom,
330  0,false,0);
331 
332 
333  // The treatment room is invisible in the Visualisation
334  logicTreatmentRoom -> SetVisAttributes (G4VisAttributes::Invisible);
335 
336  // Components of the Collimator Beam Line
337 
344 
345 }
static const double cm
Definition: G4SIunits.hh:118
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
CLHEP::Hep3Vector G4ThreeVector
G4VPhysicalVolume * physicalTreatmentRoom
Definition: G4Box.hh:64
static G4NistManager * Instance()
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:

◆ IortBeamLineBlocks()

void Collimator50BeamLine::IortBeamLineBlocks ( )

Definition at line 638 of file Collimator50BeamLine.cc.

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

◆ IortBeamLineFinalCollimator()

void Collimator50BeamLine::IortBeamLineFinalCollimator ( )

Definition at line 862 of file Collimator50BeamLine.cc.

863 {
864 // -----------------------//
865  // FINAL COLLIMATOR IORT //
866  //------------------------//
867 
868  // const G4double outRadiusFinalCollimatorIORT = 35. *mm;
869  // const G4double innRadiusFinalCollimatorIORT = 30. *mm;
870  const G4double hightFinalCollimatorIORT = 349.75 *mm;
871  const G4double startAngleFinalCollimatorIORT = 0.*deg;
872  const G4double spanningAngleFinalCollimatorIORT = 360.*deg;
873  const G4double finalCollimatorXPositionIORT = -404.75 *mm;
874 
875  G4double phi6 = 90. *deg;
876 
877 
879  rm6.rotateY(phi6);
880 
881 
882  solidFinalCollimatorIORT = new G4Tubs("FinalCollimatorIORT", innerRadiusFinalCollimatorIORT,
884  hightFinalCollimatorIORT,
885  startAngleFinalCollimatorIORT,
886  spanningAngleFinalCollimatorIORT);
887 
888  G4LogicalVolume* logFinalCollimatorIORT = new G4LogicalVolume(solidFinalCollimatorIORT,
889  finalCollimatorMaterialIORT, "FinalCollimatorIORT", 0, 0, 0);
890 
891  physiFinalCollimatorIORT = new G4PVPlacement(G4Transform3D(rm6, G4ThreeVector((finalCollimatorXPositionIORT),0.,0.)),
892  "FinalCollimatorIORT", logFinalCollimatorIORT, physicalTreatmentRoom, false, 0);
893 
894  // logFinalCollimatorIORT -> SetVisAttributes(G4VisAttributes::Invisible);
895  logFinalCollimatorIORT -> SetVisAttributes(gray);
896 }
CLHEP::Hep3Vector G4ThreeVector
G4VPhysicalVolume * physicalTreatmentRoom
Definition: G4Tubs.hh:85
HepRotation & rotateY(double delta)
Definition: Rotation.cc:79
G4VPhysicalVolume * physiFinalCollimatorIORT
static const double deg
Definition: G4SIunits.hh:151
HepGeom::Transform3D G4Transform3D
G4Material * finalCollimatorMaterialIORT
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 Collimator50BeamLine::IortBeamLineJunctions ( )

Definition at line 757 of file Collimator50BeamLine.cc.

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

◆ IortBeamLineMonitorChambers()

void Collimator50BeamLine::IortBeamLineMonitorChambers ( )

Definition at line 419 of file Collimator50BeamLine.cc.

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

◆ IortBeamLineTitaniumWindows()

void Collimator50BeamLine::IortBeamLineTitaniumWindows ( )

Definition at line 384 of file Collimator50BeamLine.cc.

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

◆ IortBeamLineVacuumSource()

void Collimator50BeamLine::IortBeamLineVacuumSource ( )

Definition at line 348 of file Collimator50BeamLine.cc.

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

◆ SetDefaultDimensions()

void Collimator50BeamLine::SetDefaultDimensions ( )
private

Definition at line 159 of file Collimator50BeamLine.cc.

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

◆ SetInnerRadiusFinalCollimatorIORT()

void Collimator50BeamLine::SetInnerRadiusFinalCollimatorIORT ( G4double  value)

Definition at line 903 of file Collimator50BeamLine.cc.

904 {
905  solidFinalCollimatorIORT -> SetInnerRadius(value);
907  G4cout<<"Inner Radius of the final collimator IORT is (mm):"
908  << solidFinalCollimatorIORT -> GetInnerRadius()/mm
909  << G4endl;
910 }
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 Collimator50BeamLine::SetOuterRadiusFinalCollimatorIORT ( G4double  value)

Definition at line 914 of file Collimator50BeamLine.cc.

915 {
916  solidFinalCollimatorIORT -> SetOuterRadius(value);
918  G4cout<<"Outer Radius of the final collimator IORT is (mm):"
919  << solidFinalCollimatorIORT -> GetOuterRadius()/mm
920  << G4endl;
921 }
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* Collimator50BeamLine::Blocco1IORTMaterialIORT
private

Definition at line 147 of file Collimator50BeamLine.hh.

◆ Blocco20mmIORTMaterialIORT

G4Material* Collimator50BeamLine::Blocco20mmIORTMaterialIORT
private

Definition at line 162 of file Collimator50BeamLine.hh.

◆ Blocco2IORTMaterialIORT

G4Material* Collimator50BeamLine::Blocco2IORTMaterialIORT
private

Definition at line 152 of file Collimator50BeamLine.hh.

◆ Blocco3IORTMaterialIORT

G4Material* Collimator50BeamLine::Blocco3IORTMaterialIORT
private

Definition at line 157 of file Collimator50BeamLine.hh.

◆ blue

G4VisAttributes* Collimator50BeamLine::blue
private

Definition at line 101 of file Collimator50BeamLine.hh.

◆ CCMIORTMaterialIORT

G4Material* Collimator50BeamLine::CCMIORTMaterialIORT
private

Definition at line 187 of file Collimator50BeamLine.hh.

◆ CM1_1_2IORTMaterialIORT

G4Material* Collimator50BeamLine::CM1_1_2IORTMaterialIORT
private

Definition at line 167 of file Collimator50BeamLine.hh.

◆ CM1_2_2IORTMaterialIORT

G4Material* Collimator50BeamLine::CM1_2_2IORTMaterialIORT
private

Definition at line 172 of file Collimator50BeamLine.hh.

◆ CM2_1_2IORTMaterialIORT

G4Material* Collimator50BeamLine::CM2_1_2IORTMaterialIORT
private

Definition at line 177 of file Collimator50BeamLine.hh.

◆ CM2_2_2IORTMaterialIORT

G4Material* Collimator50BeamLine::CM2_2_2IORTMaterialIORT
private

Definition at line 182 of file Collimator50BeamLine.hh.

◆ collimatorMessenger

Collimator50BeamLineMessenger* Collimator50BeamLine::collimatorMessenger
private

Definition at line 97 of file Collimator50BeamLine.hh.

◆ darkGreen

G4VisAttributes* Collimator50BeamLine::darkGreen
private

Definition at line 107 of file Collimator50BeamLine.hh.

◆ darkOrange3

G4VisAttributes* Collimator50BeamLine::darkOrange3
private

Definition at line 108 of file Collimator50BeamLine.hh.

◆ finalCollimatorMaterialIORT

G4Material* Collimator50BeamLine::finalCollimatorMaterialIORT
private

Definition at line 116 of file Collimator50BeamLine.hh.

◆ FTIORTMaterialIORT

G4Material* Collimator50BeamLine::FTIORTMaterialIORT
private

Definition at line 207 of file Collimator50BeamLine.hh.

◆ Giunz1FinalCollMaterialIORT

G4Material* Collimator50BeamLine::Giunz1FinalCollMaterialIORT
private

Definition at line 119 of file Collimator50BeamLine.hh.

◆ Giunz2FinalCollMaterialIORT

G4Material* Collimator50BeamLine::Giunz2FinalCollMaterialIORT
private

Definition at line 122 of file Collimator50BeamLine.hh.

◆ Giunz3FinalCollMaterialIntIORT

G4Material* Collimator50BeamLine::Giunz3FinalCollMaterialIntIORT
private

Definition at line 131 of file Collimator50BeamLine.hh.

◆ Giunz3FinalCollMaterialIORT

G4Material* Collimator50BeamLine::Giunz3FinalCollMaterialIORT
private

Definition at line 127 of file Collimator50BeamLine.hh.

◆ Giunz4FinalCollMaterialIORT

G4Material* Collimator50BeamLine::Giunz4FinalCollMaterialIORT
private

Definition at line 137 of file Collimator50BeamLine.hh.

◆ Giunz5FinalCollMaterialIORT

G4Material* Collimator50BeamLine::Giunz5FinalCollMaterialIORT
private

Definition at line 142 of file Collimator50BeamLine.hh.

◆ gray

G4VisAttributes* Collimator50BeamLine::gray
private

Definition at line 102 of file Collimator50BeamLine.hh.

◆ green

G4VisAttributes* Collimator50BeamLine::green
private

Definition at line 106 of file Collimator50BeamLine.hh.

◆ innerRadiusFinalCollimatorIORT

G4double Collimator50BeamLine::innerRadiusFinalCollimatorIORT
private

Definition at line 112 of file Collimator50BeamLine.hh.

◆ iortDetectorConstruction

IORTDetectorConstruction* Collimator50BeamLine::iortDetectorConstruction
private

Definition at line 99 of file Collimator50BeamLine.hh.

◆ OuterRadiusFinalCollimatorIORT

G4double Collimator50BeamLine::OuterRadiusFinalCollimatorIORT
private

Definition at line 113 of file Collimator50BeamLine.hh.

◆ PFS1IORTMaterialIORT

G4Material* Collimator50BeamLine::PFS1IORTMaterialIORT
private

Definition at line 192 of file Collimator50BeamLine.hh.

◆ PFS2IORTMaterialIORT

G4Material* Collimator50BeamLine::PFS2IORTMaterialIORT
private

Definition at line 197 of file Collimator50BeamLine.hh.

◆ PFS3IORTMaterialIORT

G4Material* Collimator50BeamLine::PFS3IORTMaterialIORT
private

Definition at line 202 of file Collimator50BeamLine.hh.

◆ physiBlocco1IORT

G4VPhysicalVolume* Collimator50BeamLine::physiBlocco1IORT
private

Definition at line 146 of file Collimator50BeamLine.hh.

◆ physiBlocco20mmIORT

G4VPhysicalVolume* Collimator50BeamLine::physiBlocco20mmIORT
private

Definition at line 161 of file Collimator50BeamLine.hh.

◆ physiBlocco2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiBlocco2IORT
private

Definition at line 151 of file Collimator50BeamLine.hh.

◆ physiBlocco3IORT

G4VPhysicalVolume* Collimator50BeamLine::physiBlocco3IORT
private

Definition at line 156 of file Collimator50BeamLine.hh.

◆ physicalTreatmentRoom

G4VPhysicalVolume* Collimator50BeamLine::physicalTreatmentRoom
private

Definition at line 98 of file Collimator50BeamLine.hh.

◆ physiCCMIORT

G4VPhysicalVolume* Collimator50BeamLine::physiCCMIORT
private

Definition at line 186 of file Collimator50BeamLine.hh.

◆ physiCM1_1_2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiCM1_1_2IORT
private

Definition at line 166 of file Collimator50BeamLine.hh.

◆ physiCM1_2_2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiCM1_2_2IORT
private

Definition at line 171 of file Collimator50BeamLine.hh.

◆ physiCM2_1_2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiCM2_1_2IORT
private

Definition at line 176 of file Collimator50BeamLine.hh.

◆ physiCM2_2_2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiCM2_2_2IORT
private

Definition at line 181 of file Collimator50BeamLine.hh.

◆ physiFinalCollimatorIORT

G4VPhysicalVolume* Collimator50BeamLine::physiFinalCollimatorIORT
private

Definition at line 115 of file Collimator50BeamLine.hh.

◆ physiFTIORT

G4VPhysicalVolume* Collimator50BeamLine::physiFTIORT
private

Definition at line 206 of file Collimator50BeamLine.hh.

◆ physiGiunz3FinalCollIntIORT

G4VPhysicalVolume* Collimator50BeamLine::physiGiunz3FinalCollIntIORT
private

Definition at line 132 of file Collimator50BeamLine.hh.

◆ physiGiunz3FinalCollIORT

G4VPhysicalVolume* Collimator50BeamLine::physiGiunz3FinalCollIORT
private

Definition at line 126 of file Collimator50BeamLine.hh.

◆ physiGiunz4FinalCollIORT

G4VPhysicalVolume* Collimator50BeamLine::physiGiunz4FinalCollIORT
private

Definition at line 136 of file Collimator50BeamLine.hh.

◆ physiGiunz5FinalCollIORT

G4VPhysicalVolume* Collimator50BeamLine::physiGiunz5FinalCollIORT
private

Definition at line 141 of file Collimator50BeamLine.hh.

◆ physiPFS1IORT

G4VPhysicalVolume* Collimator50BeamLine::physiPFS1IORT
private

Definition at line 191 of file Collimator50BeamLine.hh.

◆ physiPFS2IORT

G4VPhysicalVolume* Collimator50BeamLine::physiPFS2IORT
private

Definition at line 196 of file Collimator50BeamLine.hh.

◆ physiPFS3IORT

G4VPhysicalVolume* Collimator50BeamLine::physiPFS3IORT
private

Definition at line 201 of file Collimator50BeamLine.hh.

◆ physiVSIORT

G4VPhysicalVolume* Collimator50BeamLine::physiVSIORT
private

Definition at line 211 of file Collimator50BeamLine.hh.

◆ red

G4VisAttributes* Collimator50BeamLine::red
private

Definition at line 104 of file Collimator50BeamLine.hh.

◆ skyBlue

G4VisAttributes* Collimator50BeamLine::skyBlue
private

Definition at line 109 of file Collimator50BeamLine.hh.

◆ solidBlocco1IORT

G4Tubs* Collimator50BeamLine::solidBlocco1IORT
private

Definition at line 145 of file Collimator50BeamLine.hh.

◆ solidBlocco20mmIORT

G4Tubs* Collimator50BeamLine::solidBlocco20mmIORT
private

Definition at line 160 of file Collimator50BeamLine.hh.

◆ solidBlocco2IORT

G4Tubs* Collimator50BeamLine::solidBlocco2IORT
private

Definition at line 150 of file Collimator50BeamLine.hh.

◆ solidBlocco3IORT

G4Tubs* Collimator50BeamLine::solidBlocco3IORT
private

Definition at line 155 of file Collimator50BeamLine.hh.

◆ solidCCMIORT

G4Tubs* Collimator50BeamLine::solidCCMIORT
private

Definition at line 185 of file Collimator50BeamLine.hh.

◆ solidCM1_1_2IORT

G4Tubs* Collimator50BeamLine::solidCM1_1_2IORT
private

Definition at line 165 of file Collimator50BeamLine.hh.

◆ solidCM1_2_2IORT

G4Tubs* Collimator50BeamLine::solidCM1_2_2IORT
private

Definition at line 170 of file Collimator50BeamLine.hh.

◆ solidCM2_1_2IORT

G4Tubs* Collimator50BeamLine::solidCM2_1_2IORT
private

Definition at line 175 of file Collimator50BeamLine.hh.

◆ solidCM2_2_2IORT

G4Tubs* Collimator50BeamLine::solidCM2_2_2IORT
private

Definition at line 180 of file Collimator50BeamLine.hh.

◆ solidFinalCollimatorIORT

G4Tubs* Collimator50BeamLine::solidFinalCollimatorIORT
private

Definition at line 114 of file Collimator50BeamLine.hh.

◆ solidFTIORT

G4Tubs* Collimator50BeamLine::solidFTIORT
private

Definition at line 205 of file Collimator50BeamLine.hh.

◆ solidGiunz3FinalCollIntIORT

G4Cons* Collimator50BeamLine::solidGiunz3FinalCollIntIORT
private

Definition at line 130 of file Collimator50BeamLine.hh.

◆ solidGiunz3FinalCollIORT

G4Tubs* Collimator50BeamLine::solidGiunz3FinalCollIORT
private

Definition at line 125 of file Collimator50BeamLine.hh.

◆ solidGiunz4FinalCollIORT

G4Tubs* Collimator50BeamLine::solidGiunz4FinalCollIORT
private

Definition at line 135 of file Collimator50BeamLine.hh.

◆ solidGiunz5FinalCollIORT

G4Tubs* Collimator50BeamLine::solidGiunz5FinalCollIORT
private

Definition at line 140 of file Collimator50BeamLine.hh.

◆ solidPFS1IORT

G4Tubs* Collimator50BeamLine::solidPFS1IORT
private

Definition at line 190 of file Collimator50BeamLine.hh.

◆ solidPFS2IORT

G4Tubs* Collimator50BeamLine::solidPFS2IORT
private

Definition at line 195 of file Collimator50BeamLine.hh.

◆ solidPFS3IORT

G4Tubs* Collimator50BeamLine::solidPFS3IORT
private

Definition at line 200 of file Collimator50BeamLine.hh.

◆ solidVSIORT

G4Tubs* Collimator50BeamLine::solidVSIORT
private

Definition at line 210 of file Collimator50BeamLine.hh.

◆ VSIORTMaterialIORT

G4Material* Collimator50BeamLine::VSIORTMaterialIORT
private

Definition at line 212 of file Collimator50BeamLine.hh.

◆ white

G4VisAttributes* Collimator50BeamLine::white
private

Definition at line 103 of file Collimator50BeamLine.hh.

◆ yellow

G4VisAttributes* Collimator50BeamLine::yellow
private

Definition at line 105 of file Collimator50BeamLine.hh.


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