[Gate-users] Simulation of CATANA facility
David Sarrut
David.Sarrut at creatis.insa-lyon.fr
Fri Jan 9 07:42:00 CET 2015
Hello,
we cannot debug a complete simulation for you, it is part of the game ;)
Please try step by step to check all your components. For example, did the
source shoot the particle in the right direction ? Start with a very simple
simulation (simple beam in water box), then progressively change the
simples components with the ones you want and check the results at each
step.
good luck,
David
On Tue, Dec 23, 2014 at 9:56 AM, Leonid Ivanov <leonid78.lenya at mail.ru>
wrote:
> Hello! I want to simulate proton therapy. I found materials about CATANA
> facility. I think that I wrote all the necessary blocks in macros. One from
> my aims is to determine dose distribution in water phantom with box form. I
> use Dose Actor. Visualisation is not bad but there is no dose in phantom. I
> don't understand why it doesn't work. Please give me an advice how to solve
> this problem. There is a text of macro file below. Thanks in advance!
>
> It is a main macros.
>
> # Proton therapy, Italian facility CATANA (beginning of work 2002) for
> treating of ocular tumours, pencil beam geometry
>
> #=====================================================
> # VISUALISATION
> #=====================================================
>
> /vis/open OGLSX
> /vis/viewer/zoom 2
> /vis/viewer/set/viewpointThetaPhi 40 70
> /vis/viewer/set/style volume
> /vis/drawVolume
> /vis/ogl/set/displayListLimit 5000000
> /tracking/storeTrajectory 1
> /vis/scene/add/trajectories
> /vis/scene/endOfEventAction accumulate
> /vis/viewer/update
>
> #=====================================================
> # GEOMETRY
> #=====================================================
>
> /gate/geometry/setMaterialDatabase GateMaterials.db
>
> # World
>
> /gate/world/geometry/setXLength 7 m
> /gate/world/geometry/setYLength 7 m
> /gate/world/geometry/setZLength 7 m
> /gate/world/setMaterial Air
>
> # First box
>
> /gate/world/daughters/name First_box
> /gate/world/daughters/insert box
> /gate/First_box/geometry/setXLength 6 cm
> /gate/First_box/geometry/setYLength 6 cm
> /gate/First_box/geometry/setZLength 10 cm
> /gate/First_box/placement/setTranslation 0.0 0.0 -3.0 m
> /gate/First_box/setMaterial Vacuum
> /gate/First_box/vis/setVisible 1
> /gate/First_box/vis/setColor white
> /gate/First_box/vis/forceWireframe
>
> # Foil1
>
> #/gate/First_box/daughters/name Foil1
> #/gate/First_box/daughters/insert box
> #/gate/Foil1/geometry/setXLength 5 cm
> #/gate/Foil1/geometry/setYLength 5 cm
> #/gate/Foil1/geometry/setZLength 15 um
> #/gate/Foil1/placement/setTranslation 0.0 0.0 -3.04 m
> #/gate/Foil1/setMaterial Tantalum
> #/gate/Foil1/vis/setVisible 1
> #/gate/Foil1/vis/setColor cyan
> #/gate/Foil1/vis/forceWireframe
>
> # Kapton window
>
> /gate/First_box/daughters/name Kapton_window
> /gate/First_box/daughters/insert box
> /gate/Kapton_window/geometry/setXLength 5 cm
> /gate/Kapton_window/geometry/setYLength 5 cm
> /gate/Kapton_window/geometry/setZLength 50 um
> /gate/Kapton_window/placement/setTranslation 0.0 0.0 -2.96 m
> /gate/Kapton_window/setMaterial Plexiglass
> /gate/Kapton_window/vis/setVisible 1
> /gate/Kapton_window/vis/setColor magenta
> /gate/Kapton_window/vis/forceWireframe
>
> # Foil2
>
> /gate/world/daughters/name Foil2
> /gate/world/daughters/insert box
> /gate/Foil2/geometry/setXLength 8 cm
> /gate/Foil2/geometry/setYLength 8 cm
> /gate/Foil2/geometry/setZLength 25 um
> /gate/Foil2/placement/setTranslation 0.0 0.0 -2.5 m
> /gate/Foil2/setMaterial Tantalum
> /gate/Foil2/vis/setVisible 1
> /gate/Foil2/vis/setColor cyan
> /gate/Foil2/vis/forceWireframe
>
> # Brass stopper
>
> /gate/Foil2/daughters/name Brass_stopper
> /gate/Foil2/daughters/insert cylinder
> /gate/Brass_stopper/geometry/setRmin 0 mm
> /gate/Brass_stopper/geometry/setRmax 4 mm
> /gate/Brass_stopper/geometry/setHeight 25 um
> /gate/Brass_stopper/geometry/setPhiStart 0 deg
> /gate/Brass_stopper/geometry/setDeltaPhi 360 deg
> /gate/Brass_stopper/setMaterial Copper
> /gate/Brass_stopper/vis/setVisible 1
> /gate/Brass_stopper/vis/setColor gray
> /gate/Brass_stopper/vis/forceWireframe
>
> # Range shifter 1
>
> /gate/world/daughters/name Range_shifter_1
> /gate/world/daughters/insert box
> /gate/Range_shifter_1/geometry/setXLength 17 cm
> /gate/Range_shifter_1/geometry/setYLength 17 cm
> /gate/Range_shifter_1/geometry/setZLength 0.5 cm
> /gate/Range_shifter_1/placement/setTranslation 0 0 -2.3 m
> /gate/Range_shifter_1/setMaterial PMMA
> /gate/Range_shifter_1/vis/setVisible 1
> /gate/Range_shifter_1/vis/setColor blue
> /gate/Range_shifter_1/vis/forceWireframe
>
> # Range modulator
>
> /gate/world/daughters/name Range_modulator
> /gate/world/daughters/insert box # it has to be a circle!
> /gate/Range_modulator/geometry/setXLength 7 cm
> /gate/Range_modulator/geometry/setYLength 7 cm
> /gate/Range_modulator/geometry/setZLength 1 mm
> /gate/Range_modulator/placement/setTranslation 0 0 -1.4 m
> /gate/Range_modulator/setMaterial PMMA
> /gate/Range_modulator/vis/setVisible 1
> /gate/Range_modulator/vis/setColor red
> /gate/Range_modulator/vis/forceWireframe
>
> # Range shifter 2
>
> /gate/world/daughters/name Range_shifter_2
> /gate/world/daughters/insert box
> /gate/Range_shifter_2/geometry/setXLength 17 cm
> /gate/Range_shifter_2/geometry/setYLength 17 cm
> /gate/Range_shifter_2/geometry/setZLength 0.5 cm
> /gate/Range_shifter_2/placement/setTranslation 0 0 -1 m
> /gate/Range_shifter_2/setMaterial PMMA
> /gate/Range_shifter_2/vis/setVisible 1
> /gate/Range_shifter_2/vis/setColor blue
> /gate/Range_shifter_2/vis/forceWireframe
>
> # Monitor ionisation chamber 1
>
> /gate/world/daughters/name Chamber_1
> /gate/world/daughters/insert box
> /gate/Chamber_1/geometry/setXLength 8 cm
> /gate/Chamber_1/geometry/setYLength 8 cm
> /gate/Chamber_1/geometry/setZLength 1 cm
> /gate/Chamber_1/placement/setTranslation 0 0 +0.2 m
> /gate/Chamber_1/setMaterial Air
> /gate/Chamber_1/vis/setVisible 1
> /gate/Chamber_1/vis/setColor magenta
> /gate/Chamber_1/vis/forceWireframe
>
> # Monitor ionisation chamber 2
>
> /gate/world/daughters/name Chamber_2
> /gate/world/daughters/insert box
> /gate/Chamber_2/geometry/setXLength 8 cm
> /gate/Chamber_2/geometry/setYLength 8 cm
> /gate/Chamber_2/geometry/setZLength 1 cm
> /gate/Chamber_2/placement/setTranslation 0 0 +0.5 m
> /gate/Chamber_2/setMaterial Air
> /gate/Chamber_2/vis/setVisible 1
> /gate/Chamber_2/vis/setColor magenta
> /gate/Chamber_2/vis/forceWireframe
>
> # Monitor ionisation chamber 3
>
> /gate/world/daughters/name Chamber_3
> /gate/world/daughters/insert box
> /gate/Chamber_3/geometry/setXLength 8 cm
> /gate/Chamber_3/geometry/setYLength 8 cm
> /gate/Chamber_3/geometry/setZLength 1 cm
> /gate/Chamber_3/placement/setTranslation 0 0 +0.8 m
> /gate/Chamber_3/setMaterial Air
> /gate/Chamber_3/vis/setVisible 1
> /gate/Chamber_3/vis/setColor magenta
> /gate/Chamber_3/vis/forceWireframe
>
> # Glass
>
> /gate/world/daughters/name Glass_slab
> /gate/world/daughters/insert box
> /gate/Glass_slab/geometry/setXLength 17 cm
> /gate/Glass_slab/geometry/setYLength 17 cm
> /gate/Glass_slab/geometry/setZLength 5 cm
> /gate/Glass_slab/placement/setTranslation 0 0 +2 m
> /gate/Glass_slab/setMaterial Glass
> /gate/Glass_slab/vis/setVisible 1
> /gate/Glass_slab/vis/setColor gray
> /gate/Glass_slab/vis/forceWireframe
>
> # The beginning of final collimator
>
> /gate/world/daughters/name Begin_final_collim
> /gate/world/daughters/insert cylinder
> /gate/Begin_final_collim/geometry/setRmin 60 mm #25
> /gate/Begin_final_collim/geometry/setRmax 65 mm #30
> /gate/Begin_final_collim/geometry/setHeight 5 cm
> /gate/Begin_final_collim/geometry/setPhiStart 0 deg
> /gate/Begin_final_collim/geometry/setDeltaPhi 360 deg
> /gate/Begin_final_collim/placement/setTranslation 0 0 +1.925 m
> /gate/Begin_final_collim/setMaterial Copper
> /gate/Begin_final_collim/vis/setVisible 1
> /gate/Begin_final_collim/vis/setColor yellow
> /gate/Begin_final_collim/vis/forceWireframe
>
> # The part of final collimator in glass_slab
>
> /gate/Glass_slab/daughters/name Collim_in_glass
> /gate/Glass_slab/daughters/insert cylinder
> /gate/Collim_in_glass/geometry/setRmin 60 mm
> /gate/Collim_in_glass/geometry/setRmax 65 mm
> /gate/Collim_in_glass/geometry/setHeight 5 cm
> /gate/Collim_in_glass/geometry/setPhiStart 0 deg
> /gate/Collim_in_glass/geometry/setDeltaPhi 360 deg
> /gate/Collim_in_glass/setMaterial Copper
> /gate/Collim_in_glass/vis/setVisible 1
> /gate/Collim_in_glass/vis/setColor yellow
> /gate/Collim_in_glass/vis/forceWireframe
>
> # The end of final collimator
>
> /gate/world/daughters/name End_final_collim
> /gate/world/daughters/insert cylinder
> /gate/End_final_collim/geometry/setRmin 60 mm
> /gate/End_final_collim/geometry/setRmax 65 mm
> /gate/End_final_collim/geometry/setHeight 27 cm
> /gate/End_final_collim/geometry/setPhiStart 0 deg
> /gate/End_final_collim/geometry/setDeltaPhi 360 deg
> /gate/End_final_collim/placement/setTranslation 0 0 +2.185 m
> /gate/End_final_collim/setMaterial Copper
> /gate/End_final_collim/vis/setVisible 1
> /gate/End_final_collim/vis/setColor yellow
> /gate/End_final_collim/vis/forceWireframe
>
> # Phantom
>
> /gate/world/daughters/name Phantom
> /gate/world/daughters/insert box
> /gate/Phantom/geometry/setXLength 60 cm
> /gate/Phantom/geometry/setYLength 60 cm
> /gate/Phantom/geometry/setZLength 50 cm
> /gate/Phantom/placement/setTranslation 0 0 +2.5 m
> /gate/Phantom/setMaterial Water
> /gate/Phantom/vis/setVisible 1
> /gate/Phantom/vis/setColor green
> /gate/Phantom/vis/forceWireframe
>
> #=====================================================
> # PHYSICS
> #=====================================================
>
> /gate/geometry/setIonisationPotential Water 75 eV
> /gate/geometry/setIonisationPotential Air 85.7 eV
> /gate/geometry/setIonisationPotential PMMA 74 eV
>
> /control/execute physicslist_EM_std.mac
> /control/execute physicslist_HAD_std.mac
>
> /gate/physics/Gamma/SetCutInRegion world 1 mm
> /gate/physics/Electron/SetCutInRegion world 1 mm
> /gate/physics/Positron/SetCutInRegion world 1 mm
>
> /gate/physics/Gamma/SetCutInRegion Phantom 0.1 mm
> /gate/physics/Electron/SetCutInRegion Phantom 0.1 mm
> /gate/physics/Positron/SetCutInRegion Phantom 0.1 mm
>
> /gate/physics/SetMaxStepSizeInRegion world 1 mm
> /gate/physics/SetMaxStepSizeInRegion Phantom 0.1 mm
> /gate/physics/ActivateStepLimiter proton
>
> /gate/physics/displayCuts
> /gate/physics/print physics.txt
>
> #=====================================================
> # DETECTORS
> #=====================================================
>
> /gate/actor/addActor DoseActor doseDistribution
> /gate/actor/doseDistribution/save IDD-proton.txt
> /gate/actor/doseDistribution/attachTo Phantom
> /gate/actor/doseDistribution/stepHitType random
> /gate/actor/doseDistribution/setPosition 0 0 +2.262 m
> #/gate/actor/doseDistribution/setResolution 1 1 400
> #/gate/actor/doseDistribution/setSize 10 10 10 cm
> /gate/actor/doseDistribution/setVoxelSize 2 2 2 mm
> /gate/actor/doseDistribution/saveEveryNSeconds 60
> /gate/actor/doseDistribution/enableEdep false
> /gate/actor/doseDistribution/enableUncertaintyEdep false
> /gate/actor/doseDistribution/enableDose true
> /gate/actor/doseDistribution/enableUncertaintyDose false
> /gate/actor/doseDistribution/enableNumberOfHits false
>
> /gate/actor/addActor SimulationStatisticActor stat
> /gate/actor/stat/save stat-proton.txt
> /gate/actor/stat/saveEveryNSeconds 60
>
> #=====================================================
> # INITIALISATION
> #=====================================================
>
> /gate/run/initialize
>
> #=====================================================
> # BEAMS
> #=====================================================
>
> /control/execute sourcePBS.mac
>
> #=====================================================
> # START BEAMS
> #=====================================================
>
> /gate/random/setEngineName MersenneTwister
> /gate/random/setEngineSeed auto
> /gate/application/setTotalNumberOfPrimaries 50
> /gate/application/start
> It is a macros with description of source.
>
> # SOURCE PBS
> /gate/source/addSource PBS PencilBeam
>
> #activity
> /gate/source/PBS/setActivity 1000000. becquerel
>
> #particle type
> /gate/source/PBS/setParticleType proton
>
> #energy spectrum
> /gate/source/PBS/setEnergy 62 MeV
> /gate/source/PBS/setSigmaEnergy 0.4 MeV
>
> #position
> /gate/source/PBS/setPosition 0 0 -3.2 m
>
> # spot size
> /gate/source/PBS/setSigmaX 4 mm
> /gate/source/PBS/setSigmaY 4 mm
>
> #divergence
> /gate/source/PBS/setSigmaTheta 3 mrad
> /gate/source/PBS/setSigmaPhi 3 mrad
>
> #emittance
> /gate/source/PBS/setEllipseXThetaEmittance 30 mm*mrad
> /gate/source/PBS/setEllipseYPhiEmittance 30 mm*mrad
>
> #positive-> converging beam; negative diverging beam
> /gate/source/PBS/setEllipseXThetaRotationNorm negative
> /gate/source/PBS/setEllipseYPhiRotationNorm negative
>
> #beam direction rotation
> #/gate/source/PBS/setRotationAxis 0 0 1
> #/gate/source/PBS/setRotationAngle 180 deg
>
>
>
> --
> Best regards, Leonid
>
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org
> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users
>
--
David Sarrut, Phd
Directeur de recherche CNRS
CREATIS, UMR CNRS 5220, Inserm U 1044
Centre de lutte contre le cancer Léon Bérard
28 rue Laënnec, 69373 Lyon cedex 08
Tel : 04 78 78 51 51 / 06 74 72 05 42
http://www.creatis.insa-lyon.fr/~dsarrut
_________________________________
"2 + 2 = 5, for extremely large values of 2"
_________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20150109/3f782d8b/attachment-0001.html>
More information about the Gate-users
mailing list