50 modulator(0), physicalTreatmentRoom(0),hadrontherapyDetectorConstruction(0),
    51 physiBeamLineSupport(0), physiBeamLineCover(0), physiBeamLineCover2(0),
    52 firstScatteringFoil(0), physiFirstScatteringFoil(0), physiKaptonWindow(0),
    53 solidStopper(0), physiStopper(0), secondScatteringFoil(0), physiSecondScatteringFoil(0),
    54 physiFirstCollimator(0), solidRangeShifterBox(0), logicRangeShifterBox(0),
    55 physiRangeShifterBox(0), physiSecondCollimator(0), physiFirstCollimatorModulatorBox(0),
    56 physiHoleFirstCollimatorModulatorBox(0), physiSecondCollimatorModulatorBox(0),
    57 physiHoleSecondCollimatorModulatorBox(0), physiMOPIMotherVolume(0),
    58 physiFirstMonitorLayer1(0), physiFirstMonitorLayer2(0), physiFirstMonitorLayer3(0),
    59 physiFirstMonitorLayer4(0), physiSecondMonitorLayer1(0), physiSecondMonitorLayer2(0),
    60 physiSecondMonitorLayer3(0), physiSecondMonitorLayer4(0), physiNozzleSupport(0), 
    61 physiBrassTube(0), solidFinalCollimator(0), physiFinalCollimator(0)
    67     static G4String ROGeometryName = 
"DetectorROGeometry";
    70     G4cout << 
"Going to register Parallel world...";
   136     white -> SetVisibility(
true);
   137     white -> SetForceSolid(
true);
   140     blue -> SetVisibility(
true);
   141     blue -> SetForceSolid(
true);
   144     gray-> SetVisibility(
true);
   145     gray-> SetForceSolid(
true);
   148     red-> SetVisibility(
true);
   149     red-> SetForceSolid(
true);
   152     yellow-> SetVisibility(
true);
   153     yellow-> SetForceSolid(
true);
   156     green -> SetVisibility(
true);
   157     green -> SetForceSolid(
true);
   168     skyBlue -> SetVisibility(
true);
   169     skyBlue -> SetForceSolid(
true);
   183     G4double defaultVacuumZoneXPosition = -3010.0 *
mm;
   188     G4double defaultFirstScatteringFoilXSize = 0.0075 *
mm;
   191     G4double defaultFirstScatteringFoilYSize = 52.5   *
mm;
   194     G4double defaultFirstScatteringFoilZSize = 52.5   *
mm;
   197     G4double defaultFirstScatteringFoilXPosition = 0.0 *
mm;
   210     G4double defaultKaptonWindowXPosition = 100.0*
mm - defaultKaptonWindowXSize;
   228     G4double defaultStopperXPosition = -2705.0 *
mm;
   243     G4double defaultSecondScatteringFoilXSize = 0.0125 *
mm;
   246     G4double defaultSecondScatteringFoilYSize = 52.5   *
mm;
   249     G4double defaultSecondScatteringFoilZSize = 52.5   *
mm;
   252     G4double defaultSecondScatteringFoilXPosition = defaultStopperXPosition + defaultHeightStopper + defaultSecondScatteringFoilXSize;
   255     G4double defaultSecondScatteringFoilYPosition =  0 *
mm;
   258     G4double defaultSecondScatteringFoilZPosition =  0 *
mm;
   275     G4double defaultRangeShifterXPosition = -2393.0 *
mm;
   278     G4double defaultRangeShifterYPosition = 0. *
mm;
   281     G4double defaultRangeShifterZPosition = 0. *
mm;
   292     G4double defaultMOPIMotherVolumeXSize = 12127.0 *
um;
   295     G4double defaultMOPIMotherVolumeYSize = 40.0 *
cm;
   298     G4double defaultMOPIMotherVolumeZSize = 40.0 *
cm;
   301     G4double defaultMOPIMotherVolumeXPosition = -1000.0 *
mm;
   304     G4double defaultMOPIMotherVolumeYPosition = 0.0 *
mm;
   307     G4double defaultMOPIMotherVolumeZPosition = 0.0 *
mm;
   311     G4double defaultMOPIFirstKaptonLayerXSize = 35 *
um;
   314     G4double defaultMOPIFirstKaptonLayerYSize = 30 *
cm;
   317     G4double defaultMOPIFirstKaptonLayerZSize = 30 *
cm;
   323     G4double defaultMOPIFirstKaptonLayerYPosition = 0.0 *
mm;
   326     G4double defaultMOPIFirstKaptonLayerZPosition = 0.0 *
mm;
   330     G4double defaultMOPIFirstAluminumLayerXSize = 15 *
um;
   333     G4double defaultMOPIFirstAluminumLayerYSize = 30 *
cm;
   336     G4double defaultMOPIFirstAluminumLayerZSize = 30 *
cm;
   339     G4double defaultMOPIFirstAluminumLayerXPosition =
   343     G4double defaultMOPIFirstAluminumLayerYPosition = 0.0 *
mm;
   346     G4double defaultMOPIFirstAluminumLayerZPosition = 0.0 *
mm;
   350     G4double defaultMOPIFirstAirGapXSize = 6000 *
um;
   353     G4double defaultMOPIFirstAirGapYSize = 30 *
cm;
   356     G4double defaultMOPIFirstAirGapZSize = 30 *
cm;
   359     G4double defaultMOPIFirstAirGapXPosition =
   363     G4double defaultMOPIFirstAirGapYPosition = 0.0 *
mm;
   366     G4double defaultMOPIFirstAirGapZPosition = 0.0 *
mm;
   379     G4double defaultMOPICathodeXPosition =
   383     G4double defaultMOPICathodeYPosition = 0.0 *
mm;
   386     G4double defaultMOPICathodeZPosition = 0.0 *
mm;
   390     G4double defaultMOPISecondAirGapXSize = 6000 *
um;
   393     G4double defaultMOPISecondAirGapYSize = 30 *
cm;
   396     G4double defaultMOPISecondAirGapZSize = 30 *
cm;
   399     G4double defaultMOPISecondAirGapXPosition =
   403     G4double defaultMOPISecondAirGapYPosition = 0.0 *
mm;
   406     G4double defaultMOPISecondAirGapZPosition = 0.0 *
mm;
   410     G4double defaultMOPISecondAluminumLayerXSize = 15 *
um;
   413     G4double defaultMOPISecondAluminumLayerYSize = 30 *
cm;
   416     G4double defaultMOPISecondAluminumLayerZSize = 30 *
cm;
   419     G4double defaultMOPISecondAluminumLayerXPosition =
   423     G4double defaultMOPISecondAluminumLayerYPosition = 0.0 *
mm;
   426     G4double defaultMOPISecondAluminumLayerZPosition = 0.0 *
mm;
   430     G4double defaultMOPISecondKaptonLayerXSize = 35 *
um;
   433     G4double defaultMOPISecondKaptonLayerYSize = 30 *
cm;
   436     G4double defaultMOPISecondKaptonLayerZSize = 30 *
cm;
   439     G4double defaultMOPISecondKaptonLayerXPosition =
   443     G4double defaultMOPISecondKaptonLayerYPosition = 0.0 *
mm;
   446     G4double defaultMOPISecondKaptonLayerZPosition = 0.0 *
mm;
   452     G4double defaultinnerRadiusFinalCollimator = 7.5 *
mm;
   561     G4Box* treatmentRoom = 
new G4Box(
"TreatmentRoom",worldX,worldY,worldZ);
   564                                                               "logicTreatmentRoom",
   568                                               "physicalTreatmentRoom",
   599     const G4double beamLineSupportXSize = 1.5*
m;
   601     const G4double beamLineSupportZSize = 600.*
mm;
   603     const G4double beamLineSupportXPosition = -1745.09 *
mm;
   604     const G4double beamLineSupportYPosition = -230. *
mm;
   605     const G4double beamLineSupportZPosition = 0.*
mm;
   607     G4Box* beamLineSupport = 
new G4Box(
"BeamLineSupport",
   608                                        beamLineSupportXSize,
   609                                        beamLineSupportYSize,
   610                                        beamLineSupportZSize);
   616                                                               beamLineSupportYPosition,
   617                                                               beamLineSupportZPosition),
   619                                              logicBeamLineSupport,
   624     logicBeamLineSupport -> SetVisAttributes(
gray);
   629     const G4double beamLineCoverXSize = 1.5*
m;
   633     const G4double beamLineCoverXPosition = -1745.09 *
mm;
   634     const G4double beamLineCoverYPosition = -1000.*
mm;
   635     const G4double beamLineCoverZPosition = 600.*
mm;
   637     G4Box* beamLineCover = 
new G4Box(
"BeamLineCover",
   647                                                             beamLineCoverYPosition,
   648                                                             beamLineCoverZPosition),
   660                                                              beamLineCoverYPosition,
   661                                                              - beamLineCoverZPosition),
   668     logicBeamLineCover -> SetVisAttributes(
blue);
   696                                                                     "FirstScatteringFoil");
   699                                                  "FirstScatteringFoil", logicFirstScatteringFoil, physiVacuumZone,
   702     logicFirstScatteringFoil -> SetVisAttributes(
skyBlue);
   707     G4Box* solidKaptonWindow = 
new G4Box(
"KaptonWindow",
   717                                           "KaptonWindow", logicKaptonWindow,
   718                                           physiVacuumZone, 
false,   0);
   720     logicKaptonWindow -> SetVisAttributes(
darkOrange3);
   770                                                                      "SecondScatteringFoil");
   775                                                   "SeconScatteringFoil",
   776                                                   logicSecondScatteringFoil,
   781     logicSecondScatteringFoil -> SetVisAttributes(
skyBlue);
   818     const G4double firstCollimatorYSize = 100.*
mm;
   819     const G4double firstCollimatorZSize = 100.*
mm;
   821     const G4double firstCollimatorXPosition = -2673.00*
mm;
   822     const G4double firstCollimatorYPosition = 0.*
mm;
   823     const G4double firstCollimatorZPosition = 0.*
mm;
   825     G4Box* solidFirstCollimator = 
new G4Box(
"FirstCollimator",
   826                                             firstCollimatorXSize,
   827                                             firstCollimatorYSize,
   828                                             firstCollimatorZSize);
   835                                                               firstCollimatorYPosition,
   836                                                               firstCollimatorZPosition),
   838                                              logicFirstCollimator,
   845     G4double innerRadiusHoleFirstCollimator   = 0.*
mm;
   846     G4double outerRadiusHoleFirstCollimator   = 15.*
mm;
   849     G4double spanningAngleHoleFirstCollimator = 360.*
deg;
   851     G4Tubs* solidHoleFirstCollimator = 
new G4Tubs(
"HoleFirstCollimator",
   852                                                   innerRadiusHoleFirstCollimator,
   853                                                   outerRadiusHoleFirstCollimator,
   854                                                   hightHoleFirstCollimator,
   855                                                   startAngleHoleFirstCollimator,
   856                                                   spanningAngleHoleFirstCollimator);
   860                                                                     "HoleFirstCollimator",
   868                                                  "HoleFirstCollimator",
   869                                                  logicHoleFirstCollimator,
   877     const G4double secondCollimatorXPosition = -1900.00*
mm;
   878     const G4double secondCollimatorYPosition =  0*
mm;
   879     const G4double secondCollimatorZPosition =  0*
mm;
   882                                                                secondCollimatorYPosition,
   883                                                                secondCollimatorZPosition),
   885                                               logicFirstCollimator,
   894                                                   "HoleSecondCollimator",
   895                                                   logicHoleFirstCollimator,
   909     const G4double firstCollimatorModulatorXSize = 10.*
mm;
   910     const G4double firstCollimatorModulatorYSize = 200.*
mm;
   911     const G4double firstCollimatorModulatorZSize = 200.*
mm;
   913     const G4double firstCollimatorModulatorXPosition = -2523.00*
mm;
   914     const G4double firstCollimatorModulatorYPosition = 0.*
mm;
   915     const G4double firstCollimatorModulatorZPosition = 0.*
mm;
   917     G4Box* solidFirstCollimatorModulatorBox = 
new G4Box(
"FirstCollimatorModulatorBox",
   918                                                         firstCollimatorModulatorXSize,
   919                                                         firstCollimatorModulatorYSize,
   920                                                         firstCollimatorModulatorZSize);
   924                                                                             "FirstCollimatorModulatorBox");
   927                                                                           firstCollimatorModulatorYPosition,
   928                                                                           firstCollimatorModulatorZPosition),
   929                                                          "FirstCollimatorModulatorBox",
   930                                                          logicFirstCollimatorModulatorBox,
   936     const G4double innerRadiusHoleFirstCollimatorModulatorBox = 0.*
mm;
   937     const G4double outerRadiusHoleFirstCollimatorModulatorBox = 31.*
mm;
   938     const G4double hightHoleFirstCollimatorModulatorBox = 10.*
mm;
   939     const G4double startAngleHoleFirstCollimatorModulatorBox = 0.*
deg;
   940     const G4double spanningAngleHoleFirstCollimatorModulatorBox = 360.*
deg;
   942     G4Tubs* solidHoleFirstCollimatorModulatorBox  = 
new G4Tubs(
"HoleFirstCollimatorModulatorBox",
   943                                                                innerRadiusHoleFirstCollimatorModulatorBox,
   944                                                                outerRadiusHoleFirstCollimatorModulatorBox,
   945                                                                hightHoleFirstCollimatorModulatorBox ,
   946                                                                startAngleHoleFirstCollimatorModulatorBox,
   947                                                                spanningAngleHoleFirstCollimatorModulatorBox);
   951                                                                                 "HoleFirstCollimatorModulatorBox",
   955                                                              "HoleFirstCollimatorModulatorBox",
   956                                                              logicHoleFirstCollimatorModulatorBox,
   962     const G4double secondCollimatorModulatorXSize = 10.*
mm;
   963     const G4double secondCollimatorModulatorYSize = 200.*
mm;
   964     const G4double secondCollimatorModulatorZSize = 200.*
mm;
   966     const G4double secondCollimatorModulatorXPosition = -1953.00 *
mm;
   968     const G4double secondCollimatorModulatorYPosition = 0.*
mm;
   969     const G4double secondCollimatorModulatorZPosition = 0.*
mm;
   971     G4Box* solidSecondCollimatorModulatorBox = 
new G4Box(
"SecondCollimatorModulatorBox",
   972                                                          secondCollimatorModulatorXSize,
   973                                                          secondCollimatorModulatorYSize,
   974                                                          secondCollimatorModulatorZSize);
   978                                                                              "SecondCollimatorModulatorBox");
   981                                                                            secondCollimatorModulatorYPosition,
   982                                                                            secondCollimatorModulatorZPosition),
   983                                                           "SecondCollimatorModulatorBox",
   984                                                           logicSecondCollimatorModulatorBox,
   990     const G4double innerRadiusHoleSecondCollimatorModulatorBox = 0.*
mm;
   991     const G4double outerRadiusHoleSecondCollimatorModulatorBox = 31.*
mm;
   992     const G4double hightHoleSecondCollimatorModulatorBox = 10.*
mm;
   993     const G4double startAngleHoleSecondCollimatorModulatorBox = 0.*
deg;
   994     const G4double spanningAngleHoleSecondCollimatorModulatorBox = 360.*
deg;
   996     G4Tubs* solidHoleSecondCollimatorModulatorBox  = 
new G4Tubs(
"HoleSecondCollimatorModulatorBox",
   997                                                                 innerRadiusHoleSecondCollimatorModulatorBox,
   998                                                                 outerRadiusHoleSecondCollimatorModulatorBox,
   999                                                                 hightHoleSecondCollimatorModulatorBox ,
  1000                                                                 startAngleHoleSecondCollimatorModulatorBox,
  1001                                                                 spanningAngleHoleSecondCollimatorModulatorBox);
  1005                                                                                  "HoleSecondCollimatorModulatorBox",
  1009                                                               "HoleSecondCollimatorModulatorBox",
  1010                                                               logicHoleSecondCollimatorModulatorBox,
  1013     logicFirstCollimator -> SetVisAttributes(
yellow);
  1014     logicFirstCollimatorModulatorBox -> SetVisAttributes(
blue);
  1015     logicSecondCollimatorModulatorBox -> SetVisAttributes(
blue);
  1036     const G4double monitor1XPosition = -1262.47498 *
mm;
  1037     const G4double monitor2XPosition = -4.500011*
mm;
  1038     const G4double monitor4XPosition = 4.500011*
mm;
  1040     G4Box* solidFirstMonitorLayer1 = 
new G4Box(
"FirstMonitorLayer1",
  1047                                                                    "FirstMonitorLayer1");
  1051                                                 "FirstMonitorLayer1",
  1052                                                 logicFirstMonitorLayer1,
  1057     G4Box* solidFirstMonitorLayer2 = 
new G4Box(
"FirstMonitorLayer2",
  1064                                                                    "FirstMonitorLayer2");
  1067                                                 "FirstMonitorLayer2",
  1068                                                 logicFirstMonitorLayer2,
  1073     G4Box* solidFirstMonitorLayer3 = 
new G4Box(
"FirstMonitorLayer3",
  1080                                                                    "FirstMonitorLayer3");
  1085                                                 logicFirstMonitorLayer3,
  1090     G4Box* solidFirstMonitorLayer4 = 
new G4Box(
"FirstMonitorLayer4",
  1097                                                                    "FirstMonitorLayer4");
  1100                                                 "FirstMonitorLayer4",
  1101                                                 logicFirstMonitorLayer4,
  1118     logicFirstMonitorLayer3 -> SetVisAttributes(
white);
  1151                                                 "MOPIMotherVolume");
  1170                                                     "MOPIFirstKaptonLayer");
  1176                                                   "MOPIFirstKaptonLayer",
  1190                                                       "MOPIFirstAluminumLayer");
  1196                                                     "MOPIFirstAluminumLayer",
  1243                                                 "MOPISecondAirgap");
  1260                                                        "MOPISecondAluminumLayer");
  1266                                                      "MOPISecondAluminumLayer",
  1280                                                      "MOPISecondKaptonLayer");
  1286                                                    "MOPISecondKaptonLayer",
  1310     const G4double nozzleSupportXSize = 29.5 *
mm;
  1311     const G4double nozzleSupportYSize = 180. *
mm;
  1312     const G4double nozzleSupportZSize = 180. *
mm;
  1314     const G4double nozzleSupportXPosition = -397.50 *
mm;
  1321     G4Box* solidNozzleSupport = 
new G4Box(
"NozzleSupport",
  1324                                           nozzleSupportZSize);
  1337     logicNozzleSupport -> SetVisAttributes(
yellow);
  1344     const G4double innerRadiusHoleNozzleSupport = 0.*
mm;
  1345     const G4double outerRadiusHoleNozzleSupport = 21.5*
mm;
  1346     const G4double hightHoleNozzleSupport = 29.5 *
mm;
  1347     const G4double startAngleHoleNozzleSupport = 0.*
deg;
  1348     const G4double spanningAngleHoleNozzleSupport = 360.*
deg;
  1350     G4Tubs* solidHoleNozzleSupport = 
new G4Tubs(
"HoleNozzleSupport",
  1351                                                 innerRadiusHoleNozzleSupport,
  1352                                                 outerRadiusHoleNozzleSupport,
  1353                                                 hightHoleNozzleSupport,
  1354                                                 startAngleHoleNozzleSupport,
  1355                                                 spanningAngleHoleNozzleSupport);
  1359                                                                   "HoleNozzleSupport",
  1366                                                "HoleNozzleSupport",
  1367                                                logicHoleNozzleSupport,
  1371     logicHoleNozzleSupport -> SetVisAttributes(
darkOrange3);
  1377     const G4double outerRadiusBrassTube = 21.5 *
mm;
  1382     const G4double brassTubeXPosition = -227.5 *
mm;
  1385                                         innerRadiusBrassTube,
  1386                                         outerRadiusBrassTube,
  1388                                         startAngleBrassTube,
  1389                                         spanningAngleBrassTube);
  1411     const G4double innerRadiusBrassTube2= 18.*
mm;
  1412     const G4double outerRadiusBrassTube2 = 21.5 *
mm;
  1415     const G4double spanningAngleBrassTube2 = 360.*
deg;
  1420                                          innerRadiusBrassTube2,
  1421                                          outerRadiusBrassTube2,
  1423                                          startAngleBrassTube2,
  1424                                          spanningAngleBrassTube2);
  1447     const G4double innerRadiusBrassTube3= 18.*
mm;
  1448     const G4double outerRadiusBrassTube3 = 21.5 *
mm;
  1451     const G4double spanningAngleBrassTube3 = 360.*
deg;
  1453     const G4double brassTube3XPosition = -437 *
mm;
  1456                                          innerRadiusBrassTube3,
  1457                                          outerRadiusBrassTube3,
  1459                                          startAngleBrassTube3,
  1460                                          spanningAngleBrassTube3);
  1486     const G4double outerRadiusFinalCollimator = 21.5*
mm;
  1487     const G4double hightFinalCollimator = 3.5*
mm;
  1488     const G4double startAngleFinalCollimator = 0.*
deg;
  1489     const G4double spanningAngleFinalCollimator = 360.*
deg;
  1490     const G4double finalCollimatorXPosition = -83.5 *
mm;
  1500                                       outerRadiusFinalCollimator,
  1501                                       hightFinalCollimator,
  1502                                       startAngleFinalCollimator,
  1503                                       spanningAngleFinalCollimator);
  1515     logicFinalCollimator -> SetVisAttributes(
yellow);
  1523     G4cout << 
"The Range Shifter is translated to"<< value/
mm <<
"mm along the X axis" <<
G4endl;
  1540     G4cout <<
"The X size of the first scattering foil is (mm):"<<
  1550     G4cout <<
"The X size of the second scattering foil is (mm):"<<
  1560     G4cout << 
"OuterRadius od the Stopper is (mm):"  1570     G4cout<<
"Inner Radius of the final collimator is (mm):"  1584             G4cout << 
"The material of the Range Shifter has been changed to " << materialChoice << 
G4endl;
  1589         G4cout << 
"WARNING: material \"" << materialChoice << 
"\" doesn't exist in NIST elements/materials"  1590         " table [located in $G4INSTALL/source/materials/src/G4NistMaterialBuilder.cc]" << 
G4endl;
  1591         G4cout << 
"Use command \"/parameter/nist\" to see full materials list!" << 
G4endl;
 G4VPhysicalVolume * physiKaptonWindow
 
G4Box * solidMOPIFirstKaptonLayer
 
G4Material * holeModulatorBoxMaterial
 
G4Material * brassTube2Material
 
G4double rangeShifterZPosition
 
void SetDefaultDimensions()
 
G4Material * MOPIFirstKaptonLayerMaterial
 
G4double MOPISecondKaptonLayerYSize
 
G4double MOPISecondAirGapYSize
 
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
 
G4Tubs * solidFinalCollimator
 
G4Box * solidMOPISecondKaptonLayer
 
G4double MOPIFirstAirGapYPosition
 
G4VPhysicalVolume * physiFirstMonitorLayer2
 
G4double MOPISecondAirGapZPosition
 
G4Material * nozzleSupportMaterial
 
G4VisAttributes * darkOrange3
 
G4double MOPISecondKaptonLayerXPosition
 
G4double rangeShifterYPosition
 
G4double MOPIFirstAluminumLayerXSize
 
G4Material * holeNozzleSupportMaterial
 
G4double secondScatteringFoilZSize
 
G4double stopperYPosition
 
G4double MOPIMotherVolumeYPosition
 
G4VPhysicalVolume * physiHoleFirstCollimator
 
CLHEP::Hep3Vector G4ThreeVector
 
G4double MOPISecondAluminumLayerXSize
 
G4Material * MOPICathodeMaterial
 
G4VPhysicalVolume * physicalTreatmentRoom
 
G4Material * beamLineSupportMaterial
 
G4double MOPIFirstAirGapZPosition
 
G4VPhysicalVolume * physiFinalCollimator
 
G4double MOPIFirstKaptonLayerZSize
 
PassiveProtonBeamLineMessenger * passiveMessenger
 
G4double MOPIMotherVolumeYSize
 
G4double MOPIMotherVolumeXPosition
 
G4LogicalVolume * logicMOPICathode
 
void SetModulatorAngle(G4double angle)
 
G4VPhysicalVolume * physiFirstMonitorLayer1
 
HadrontherapyDetectorROGeometry * RO
 
G4double outerRadiusStopper
 
G4double MOPIFirstKaptonLayerYPosition
 
G4double MOPISecondAirGapXSize
 
void HadrontherapyBeamScatteringFoils()
 
void HadrontherapyBeamMonitoring()
 
G4double MOPIMotherVolumeZSize
 
void HadrontherapyBeamCollimators()
 
G4Material * rangeShifterMaterial
 
G4double MOPIFirstAluminumLayerZPosition
 
G4double MOPISecondAirGapXPosition
 
G4VPhysicalVolume * physiHoleSecondCollimator
 
G4double rangeShifterYSize
 
HepRotation & rotateY(double delta)
 
G4double MOPIFirstKaptonLayerXPosition
 
void SetSecondScatteringFoilXSize(G4double)
 
G4double MOPIFirstAirGapXSize
 
G4VPhysicalVolume * physiFirstScatteringFoil
 
G4VPhysicalVolume * physiFirstCollimator
 
G4double secondScatteringFoilZPosition
 
G4Material * MOPISecondKaptonLayerMaterial
 
HadrontherapyDetectorConstruction * hadrontherapyDetectorConstruction
 
G4VPhysicalVolume * physiBeamLineCover2
 
G4double rangeShifterXSize
 
static G4NistManager * Instance()
 
G4VPhysicalVolume * physiSecondCollimator
 
G4Material * holeFirstCollimatorMaterial
 
G4Box * solidMOPIMotherVolume
 
void RegisterParallelWorld(G4VUserParallelWorld *)
 
G4Material * layer1MonitorChamberMaterial
 
G4VPhysicalVolume * physiSecondMonitorLayer2
 
G4double innerRadiusStopper
 
G4Box * solidMOPIFirstAluminumLayer
 
G4double kaptonWindowXSize
 
G4double firstScatteringFoilXPosition
 
G4double MOPICathodeXPosition
 
G4VPhysicalVolume * physiSecondMonitorLayer4
 
G4VPhysicalVolume * physiFirstCollimatorModulatorBox
 
G4Material * MOPIFirstAluminumLayerMaterial
 
G4VPhysicalVolume * physiFirstMonitorLayer3
 
G4Material * layer4MonitorChamberMaterial
 
G4double MOPIFirstAirGapZSize
 
G4double MOPISecondKaptonLayerXSize
 
G4double MOPISecondAluminumLayerYPosition
 
G4Box * solidMOPIFirstAirGap
 
void SetRangeShifterXPosition(G4double value)
 
G4double MOPIFirstAluminumLayerYPosition
 
void HadrontherapyBeamFinalCollimator()
 
G4GLOB_DLL std::ostream G4cout
 
G4double kaptonWindowYSize
 
void HadrontherapyBeamLineSupport()
 
G4LogicalVolume * logicMOPIFirstAirGap
 
G4VPhysicalVolume * physiMOPIMotherVolume
 
G4Material * MOPIMotherVolumeMaterial
 
G4Box * secondScatteringFoil
 
void SetInnerRadiusFinalCollimator(G4double)
 
G4double secondScatteringFoilXSize
 
G4double MOPISecondKaptonLayerZSize
 
G4Material * brassTubeMaterial
 
G4LogicalVolume * logicMOPIFirstKaptonLayer
 
void SetOuterRadiusStopper(G4double)
 
G4double firstScatteringFoilYSize
 
G4Material * modulatorBoxMaterial
 
void HadrontherapyBeamNozzle()
 
G4VPhysicalVolume * physiHoleFirstCollimatorModulatorBox
 
G4VPhysicalVolume * physiBrassTube2
 
void SetFirstScatteringFoilXSize(G4double)
 
static const double perCent
 
G4VPhysicalVolume * physiFirstMonitorLayer4
 
G4Material * brassTube3Material
 
G4double secondScatteringFoilXPosition
 
G4LogicalVolume * logicMOPISecondAluminumLayer
 
G4VPhysicalVolume * physiMOPISecondAirGap
 
void SetRangeShifterXSize(G4double halfSize)
 
G4double MOPISecondAluminumLayerZPosition
 
G4double MOPISecondAluminumLayerXPosition
 
void HadrontherapyRangeShifter()
 
G4double MOPISecondKaptonLayerZPosition
 
G4VPhysicalVolume * physiNozzleSupport
 
G4VPhysicalVolume * physiBrassTube3
 
G4double MOPICathodeZPosition
 
G4VPhysicalVolume * physiSecondMonitorLayer1
 
G4double startAngleStopper
 
void SetRSMaterial(G4String)
 
G4Material * kaptonWindowMaterial
 
G4LogicalVolume * logicMOPISecondAirGap
 
G4double MOPIFirstAluminumLayerYSize
 
G4VPhysicalVolume * physiSecondCollimatorModulatorBox
 
static G4RunManager * GetRunManager()
 
G4double MOPISecondKaptonLayerYPosition
 
G4double firstScatteringFoilZSize
 
G4VPhysicalVolume * physiHoleNozzleSupport
 
G4double MOPIFirstKaptonLayerZPosition
 
G4double secondScatteringFoilYPosition
 
G4double rangeShifterXPosition
 
G4Material * secondScatteringFoilMaterial
 
G4LogicalVolume * logicMOPISecondKaptonLayer
 
G4LogicalVolume * logicMOPIMotherVolume
 
G4double MOPICathodeXSize
 
G4LogicalVolume * logicMOPIFirstAluminumLayer
 
G4double spanningAngleStopper
 
G4VPhysicalVolume * physiMOPISecondKaptonLayer
 
G4VPhysicalVolume * physiMOPIFirstAluminumLayer
 
G4VPhysicalVolume * physiSecondScatteringFoil
 
G4double MOPIFirstKaptonLayerYSize
 
G4VPhysicalVolume * physiMOPICathode
 
static const G4VisAttributes Invisible
 
G4Material * layer2MonitorChamberMaterial
 
G4LogicalVolume * logicStopper
 
G4double MOPICathodeYSize
 
G4VPhysicalVolume * physiHoleSecondCollimatorModulatorBox
 
G4double MOPISecondAluminumLayerYSize
 
G4LogicalVolume * logicRangeShifterBox
 
G4VPhysicalVolume * physiStopper
 
void ConstructPassiveProtonBeamLine()
 
G4double kaptonWindowXPosition
 
G4VPhysicalVolume * physiMOPIFirstAirGap
 
void HadrontherapyMOPIDetector()
 
G4VisAttributes * darkGreen
 
G4Box * solidRangeShifterBox
 
G4double MOPIMotherVolumeXSize
 
G4double MOPIFirstAirGapXPosition
 
def SetMaterial(material_name)
 
HadrontherapyModulator * modulator
 
G4VPhysicalVolume * physiBeamLineSupport
 
G4double MOPICathodeYPosition
 
G4double rangeShifterZSize
 
G4double MOPIFirstAirGapYSize
 
G4VPhysicalVolume * Construct()
 
G4double MOPICathodeZSize
 
G4Material * stopperMaterial
 
G4double MOPISecondAluminumLayerZSize
 
void InitializeDetectorROGeometry(HadrontherapyDetectorROGeometry *, G4ThreeVector detectorToWorldPosition)
 
G4VPhysicalVolume * physiMOPIFirstKaptonLayer
 
G4double vacuumZoneXPosition
 
G4double MOPISecondAirGapZSize
 
G4VPhysicalVolume * physiSecondMonitorLayer3
 
G4Material * MOPISecondAirGapMaterial
 
G4double MOPIFirstKaptonLayerXSize
 
G4VPhysicalVolume * physiBrassTube
 
G4Material * firstScatteringFoilMaterial
 
G4Element * FindOrBuildElement(G4int Z, G4bool isotopes=true)
 
G4double stopperXPosition
 
G4double firstScatteringFoilXSize
 
G4ThreeVector GetDetectorToWorldPosition()
 
G4VPhysicalVolume * physiRangeShifterBox
 
G4double innerRadiusFinalCollimator
 
G4Material * vacuumZoneMaterial
 
G4Material * MOPISecondAluminumLayerMaterial
 
G4double MOPIFirstAluminumLayerXPosition
 
G4double stopperZPosition
 
G4double kaptonWindowZSize
 
G4double secondScatteringFoilYSize
 
G4Material * layer3MonitorChamberMaterial
 
G4double MOPISecondAirGapYPosition
 
G4VPhysicalVolume * physiMOPISecondAluminumLayer
 
G4Box * solidMOPISecondAirGap
 
G4Box * firstScatteringFoil
 
G4double MOPIFirstAluminumLayerZSize
 
G4Material * firstCollimatorMaterial
 
G4Box * solidMOPISecondAluminumLayer
 
G4VisAttributes * skyBlue
 
G4double MOPIMotherVolumeZPosition
 
G4VPhysicalVolume * physiBeamLineCover
 
G4Material * finalCollimatorMaterial
 
G4Material * MOPIFirstAirGapMaterial