Import Geant4 9.3.0 source tree
This commit is contained in:
@@ -24,23 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: HadrontherapyDetectorROGeometry.cc;
|
||||
// Last modified: G.A.P.Cirrone April 2008;
|
||||
//
|
||||
// See more at: http://geant4infn.wikispaces.com/HadrontherapyExample
|
||||
//
|
||||
// ----------------------------------------------------------------------------
|
||||
// GEANT 4 - Hadrontherapy example
|
||||
// ----------------------------------------------------------------------------
|
||||
// Code developed by:
|
||||
//
|
||||
// G.A.P. Cirrone(a)*, F. Di Rosa(a), S. Guatelli(b), G. Russo(a)
|
||||
//
|
||||
// (a) Laboratori Nazionali del Sud
|
||||
// of the National Institute for Nuclear Physics, Catania, Italy
|
||||
// (b) National Institute for Nuclear Physics Section of Genova, genova, Italy
|
||||
//
|
||||
// * cirrone@lns.infn.it
|
||||
// ----------------------------------------------------------------------------
|
||||
// See more at: http://g4advancedexamples.lngs.infn.it/Examples/hadrontherapy
|
||||
|
||||
#include "HadrontherapyDetectorROGeometry.hh"
|
||||
#include "HadrontherapyDummySD.hh"
|
||||
@@ -54,19 +38,22 @@
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
HadrontherapyDetectorROGeometry::HadrontherapyDetectorROGeometry(G4String aString,
|
||||
G4double detectorDimX,
|
||||
G4double detectorDimY,
|
||||
G4double detectorDimZ,
|
||||
G4int numberOfVoxelsX,
|
||||
G4int numberOfVoxelsY,
|
||||
G4int numberOfVoxelsZ):
|
||||
G4VReadOutGeometry(aString),
|
||||
detectorSizeX(detectorDimX),
|
||||
detectorSizeY(detectorDimY),
|
||||
detectorSizeZ(detectorDimZ),
|
||||
numberOfVoxelsAlongX(numberOfVoxelsX),
|
||||
numberOfVoxelsAlongY(numberOfVoxelsY),
|
||||
numberOfVoxelsAlongZ(numberOfVoxelsZ)
|
||||
G4ThreeVector detectorToWorldPosition,
|
||||
G4double detectorDimX,
|
||||
G4double detectorDimY,
|
||||
G4double detectorDimZ,
|
||||
G4int numberOfVoxelsX,
|
||||
G4int numberOfVoxelsY,
|
||||
G4int numberOfVoxelsZ):
|
||||
|
||||
G4VReadOutGeometry(aString),
|
||||
detectorToWorldPosition(detectorToWorldPosition),
|
||||
detectorSizeX(detectorDimX),
|
||||
detectorSizeY(detectorDimY),
|
||||
detectorSizeZ(detectorDimZ),
|
||||
numberOfVoxelsAlongX(numberOfVoxelsX),
|
||||
numberOfVoxelsAlongY(numberOfVoxelsY),
|
||||
numberOfVoxelsAlongZ(numberOfVoxelsZ)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -118,16 +105,14 @@ G4VPhysicalVolume* HadrontherapyDetectorROGeometry::Build()
|
||||
0,0,0);
|
||||
|
||||
G4VPhysicalVolume *RODetectorPhys = new G4PVPlacement(0,
|
||||
G4ThreeVector(20.0 *mm,
|
||||
0.0 *mm,
|
||||
0.0 *mm),
|
||||
detectorToWorldPosition,
|
||||
"DetectorPhys",
|
||||
RODetectorLog,
|
||||
ROWorldPhys,
|
||||
false,0);
|
||||
|
||||
|
||||
// Division along X axis: the detector is devided in slices along the X axis
|
||||
// Division along X axis: the detector is divided in slices along the X axis
|
||||
|
||||
G4double halfXVoxelSizeX = halfDetectorSizeX/numberOfVoxelsAlongX;
|
||||
G4double halfXVoxelSizeY = halfDetectorSizeY;
|
||||
@@ -151,9 +136,9 @@ G4VPhysicalVolume* HadrontherapyDetectorROGeometry::Build()
|
||||
numberOfVoxelsAlongX,
|
||||
voxelXThickness);
|
||||
|
||||
// Division along Y axis: the slices along the X axis are devided along the Y axis
|
||||
// Division along Y axis: the slices along the X axis are divided along the Y axis
|
||||
|
||||
G4double halfYVoxelSizeX = halfXVoxelSizeX;
|
||||
G4double halfYVoxelSizeX = halfXVoxelSizeX;
|
||||
G4double halfYVoxelSizeY = halfDetectorSizeY/numberOfVoxelsAlongY;
|
||||
G4double halfYVoxelSizeZ = halfDetectorSizeZ;
|
||||
G4double voxelYThickness = 2*halfYVoxelSizeY;
|
||||
@@ -175,7 +160,7 @@ G4VPhysicalVolume* HadrontherapyDetectorROGeometry::Build()
|
||||
numberOfVoxelsAlongY,
|
||||
voxelYThickness);
|
||||
|
||||
// Division along Z axis: the slices along the Y axis are devided along the Z axis
|
||||
// Division along Z axis: the slices along the Y axis are divided along the Z axis
|
||||
|
||||
G4double halfZVoxelSizeX = halfXVoxelSizeX;
|
||||
G4double halfZVoxelSizeY = halfYVoxelSizeY;
|
||||
|
||||
Reference in New Issue
Block a user