[gate-users] Re: gate-users Digest, Vol 16, Issue 26
Christian Wietholt
cwietholt at nhri.org.tw
Wed Aug 3 05:20:37 CEST 2005
Dear Sebastien,
I must correct myself. In my last email, I mentioned that there is no difference in the distributions of global(XYZ) in the gateSingles.dat file. Unfortunately, I was mistaken. According to the Users Guide, the XYZ positions should be in column 15, 16, 17, but they actually are in columns 12, 13, 14. Something must have gotten shifted around.
Afterall, the distributions differ:
avgX stdevX varX avgY stdevY varY avgZ stdevZ varZ
0mm : 242.435 1.795 3.223 0.919 9.09 82.659 -0.685 8.305 68.967
10mm: 241.85 4.9 24.015 0.955 10.222 104.49 -0.685 68.967 8.304
I guess these values do make sense, but that does not explain why the projections from the interfile output look identical. Is there a bug in the interfile output?
I am looking forward to hearing from you soon.
Best Regards,
Christian
gate-users at lphe1pet1.epfl.ch schrieb am 25.07.05 14:22:03:
>
>
> Send gate-users mailing list submissions to
> gate-users at lphe1pet1.epfl.ch
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
>
> Please use the GATE's site webmaster e-mail to reach the person
> managing the list.
>
>
> Today's Topics:
>
> 1. Re: gate-users Digest, Vol 16, Issue 25 (Christian Wietholt)
> 2. Re: Re: gate-users Digest, Vol 16, Issue 25 (Sebastien JAN)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 25 Jul 2005 19:01:34 +0800
> From: Christian Wietholt <cwietholt at nhri.org.tw>
> Subject: [gate-users] Re: gate-users Digest, Vol 16, Issue 25
> To: gate-users at lphe1pet1.epfl.ch
> Message-ID: <200507251901.34310.cwietholt at nhri.org.tw>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hi Sebastien,
>
> Thank you so much for your reply and offering your help. I still could not
> figure out how to get the digitizer blurring to work. I am already wondering
> if the digitizer blurring is enabled in the interfile output function, or
> wether I will have to use the singles.dat file and the supplied C programs to
> generate the correct projection images.
>
> Please find attached to this email my most current version of the macro file.
>
> Thanks again,
>
> Christian
>
>
>
> On Monday 25 July 2005 18:02, gate-users-request at lphe1pet1.epfl.ch wrote:
> > Send gate-users mailing list submissions to
> > gate-users at lphe1pet1.epfl.ch
> >
> > To subscribe or unsubscribe via the World Wide Web, visit
> > http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >
> > Please use the GATE's site webmaster e-mail to reach the person
> > managing the list.
> >
> >
> > Today's Topics:
> >
> > 1. Re: SPblurring (Sebastien JAN)
> >
> >
> > ----------------------------------------------------------------------
> >
> > Message: 1
> > Date: Mon, 25 Jul 2005 11:39:55 +0200
> > From: Sebastien JAN <jan at shfj.cea.fr>
> > Subject: Re: [gate-users] SPblurring
> > To: GATE feedback and helpline for Users
> > <gate-users at lphe1pet1.epfl.ch>
> > Message-ID: <42E4B36B.3080306 at shfj.cea.fr>
> > Content-Type: text/plain; charset=iso-8859-1; format=flowed
> >
> > Hi ,
> >
> > Can you send me your macro please ?
> >
> > seb
> >
> > Christian Wietholt a écrit:
> > > Dear Gate Users,
> > >
> > > After I submitted my question about SPblurring, I realized that
> > > I should first initialize and then set up the detector. I did so, and
> > > the Gate ouput on the command shell was completely different,
> > > but still no detector spatial blurr in the projection images. What
> > > am I doing wrong? Anybody has a suggestion what I could try
> > > next?
> > >
> > > Christian
> > > _______________________________________________
> > > gate-users mailing list
> > > gate-users at lphe1pet1.epfl.ch
> > > http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >
> > ------------------------------
> >
> > _______________________________________________
> > gate-users mailing list
> > gate-users at lphe1pet1.epfl.ch
> > http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >
> > End of gate-users Digest, Vol 16, Issue 25
> > ******************************************
> -------------- next part --------------
> #############################################
> # V I S U A L I S A T I O N
> /control/execute visu.mac
>
> /tracking/storeTrajectory 1
> /gate/geometry/enableAutoUpdate
>
> #############################################
> # V E R B O S I T Y
> /gate/output/verbose 2
>
> #############################################
> # W O R L D
> # Define the world dimensions
> /gate/world/geometry/setXLength 1000 mm
> /gate/world/geometry/setYLength 1000 mm
> /gate/world/geometry/setZLength 1000 mm
>
> #############################################
> # S C A N N E R H E A D
> # Create a new box representing the main
> # head-volume SPECThead is the name of the
> # predefined SPECT system Create the SPECT
> # system, which will yield an Interfile output
> # of projection data
> /gate/world/daughters/name SPECThead
> /gate/world/daughters/insert box
>
> # Define the dimensions of the main volume
> /gate/SPECThead/geometry/setXLength 300. mm
> /gate/SPECThead/geometry/setYLength 300. mm
> /gate/SPECThead/geometry/setZLength 300. mm
>
> # Define the position of the main volume
> # Move the head 9 cm away from the Z axis,
> # which is the rotation axis and the
> # replication axis
> /gate/SPECThead/placement/setTranslation 200. 0. 0. mm
>
> # Set the material associated with the main volume
> /gate/SPECThead/setMaterial Air
> /gate/SPECThead/attachPhantomSD
>
> # Define the rotation speed of the head
> # Define the orbiting around the Z axis
> /gate/SPECThead/moves/insert orbiting
> /gate/SPECThead/orbiting/setSpeed 0.5625 deg/s
> /gate/SPECThead/orbiting/setPoint1 0. 0. 0. mm
> /gate/SPECThead/orbiting/setPoint2 0. 0. 1. mm
>
> # Define some visualisation options
> /gate/SPECThead/vis/forceWireframe
>
> # Shielding
> # Create the shielding volume
> /gate/SPECThead/daughters/name shielding
> /gate/SPECThead/daughters/insert box
>
> # Define the dimensions of the shielding volume
> /gate/shielding/geometry/setXLength 300. mm
> /gate/shielding/geometry/setYLength 300. mm
> /gate/shielding/geometry/setZLength 300. mm
>
> # Define the position of the shielding volume
> /gate/shielding/placement/setTranslation 0. 0. 0. mm
>
> # Set the material corresponding to the
> # shielding volume
> /gate/shielding/setMaterial Lead
>
> # Define some visualisation options
> /gate/shielding/vis/setColor red
> /gate/shielding/vis/forceWireframe
>
> # Attach phantom SD to record Compton
> # interactions in the shielding volume
> # Needed to discriminate between scattered
> # and unscattered photons
> /gate/shielding/attachPhantomSD
>
>
> #############################################
> # C O L L I M A T O R
> # Create a full volume defining the shape
> # of the collimator
> /gate/SPECThead/daughters/name collimator
> /gate/SPECThead/daughters/insert box
>
> /gate/collimator/geometry/setXLength 20. mm
> /gate/collimator/geometry/setYLength 300. mm
> /gate/collimator/geometry/setZLength 300. mm
>
> /gate/collimator/setMaterial Lead
> /gate/collimator/placement/setTranslation -140. 0. 0. mm
>
> /gate/collimator/vis/forceWireframe
> /gate/collimator/vis/setColor red
>
> # Attach PhantomSD to record Compton
> # interactions in the collimator volume
> /gate/collimator/attachPhantomSD
>
> #############################################
> # P I N H O L E
> # Insert the pinhole in the collimator
> /gate/collimator/daughters/name hole
> /gate/collimator/daughters/insert cylinder
> /gate/hole/geometry/setHeight 20. mm
> /gate/hole/geometry/setRmax 2.5 mm
> /gate/hole/placement/alignToX
> /gate/hole/setMaterial Air
> /gate/hole/vis/forceSolid
>
> /gate/collimator/daughters/name cone1
> /gate/collimator/daughters/insert cone
> #/gate/cone1/geometry/setHeight 7.5 mm
> /gate/cone1/geometry/setHeight 9 mm
> /gate/cone1/geometry/setRmax1 10. mm
> /gate/cone1/geometry/setRmax2 2.5 mm
> #/gate/cone1/placement/setTranslation -6.25 0 0 mm
> /gate/cone1/placement/setTranslation -5.5 0 0 mm
> /gate/cone1/placement/alignToX
> /gate/cone1/setMaterial Air
> /gate/cone1/vis/forceSolid
>
> /gate/collimator/daughters/name cone2
> /gate/collimator/daughters/insert cone
> #/gate/cone2/geometry/setHeight 7.5 mm
> /gate/cone2/geometry/setHeight 9 mm
> /gate/cone2/geometry/setRmax1 2.5 mm
> /gate/cone2/geometry/setRmax2 10. mm
> #/gate/cone2/placement/setTranslation 6.25 0 0 mm
> /gate/cone2/placement/setTranslation 5.5 0 0 mm
> /gate/cone2/placement/alignToX
> /gate/cone2/setMaterial Air
> /gate/cone2/vis/forceSolid
>
> ############################################
> # C A M H E A D A I R
> # insert air behind the collimator
> /gate/SPECThead/daughters/name aircomp
> /gate/SPECThead/daughters/insert box
> /gate/aircomp/geometry/setXLength 170 mm
> /gate/aircomp/geometry/setYLength 260 mm
> /gate/aircomp/geometry/setZLength 260 mm
> /gate/aircomp/placement/setTranslation -45 0 0 mm
> /gate/aircomp/vis/forceWireframe
>
> ############################################
> # C R Y S T A L
> # Create the crystal volume
> /gate/SPECThead/daughters/name crystal
> /gate/SPECThead/daughters/insert box
>
> # Define the dimensions of the crystal volume
> /gate/crystal/geometry/setXLength 6. mm
> /gate/crystal/geometry/setYLength 260. mm
> /gate/crystal/geometry/setZLength 260. mm
>
> # Define the position of the crystal volume
> /gate/crystal/placement/setTranslation 43. 0. 0. mm
>
> # Set the material associated with the crystal
> # volume
> /gate/crystal/setMaterial NaI
>
> # Define some visualisation options
> /gate/crystal/vis/setColor yellow
>
> ###########################################
> # B A C K - C O M P A R T M E N T
> # Create the back-compartment volume
> /gate/SPECThead/daughters/name compartment
> /gate/SPECThead/daughters/insert box
>
> # Define the dimensions of the back-compartment volume
> /gate/compartment/geometry/setXLength 30. mm
> /gate/compartment/geometry/setYLength 260. mm
> /gate/compartment/geometry/setZLength 260. mm
>
> # Define the position of the back-compartment volume
> /gate/compartment/placement/setTranslation 61. 0. 0. mm
>
> # Set the material of the back-compartment volume
> /gate/compartment/setMaterial Glass
>
> # Define some visualisation options
> /gate/compartment/vis/setColor grey
>
> # Attach PhantomSD to record Compton
> # interactions in the back-compartment volume
> /gate/compartment/attachPhantomSD
>
>
> #############################################
> # P H A N T O M
> # Create the phantom volume
> /gate/world/daughters/name Phantom
> /gate/world/daughters/insert cylinder
>
> # Define the dimensions of the phantom
> # volume
> /gate/Phantom/geometry/setRmax 0.5 mm
> /gate/Phantom/geometry/setRmin 0. mm
> /gate/Phantom/geometry/setHeight 0.5 mm
> /gate/Phantom/placement/setTranslation 0 0 0 mm
>
> # Set the material corresponding to the
> # phantom volume
> /gate/Phantom/setMaterial Water
>
> # Define some visualisation options
> /gate/Phantom/vis/setColor blue
> /gate/Phantom/vis/forceWireframe
>
> # Attach PhantomSD to record Compton
> # interactions in the phantom volume
> /gate/Phantom/attachPhantomSD
>
>
> #############################################
> # M O V I N G S O U R C E
> # Add an extra object for source confinement
> /gate/Phantom/daughters/name movsource
> /gate/Phantom/daughters/insert cylinder
>
> # Define the dimensions of the source volume
> /gate/movsource/geometry/setRmax 0.5 mm
> /gate/movsource/geometry/setRmin 0. mm
> /gate/movsource/geometry/setHeight 0.5 mm
>
> # Set the material corresponding to the
> # phantom volume
> /gate/movsource/setMaterial Water
>
> # Define some visualisation options
> /gate/movsource/vis/setColor magenta
> /gate/movsource/attachPhantomSD
>
> /control/execute timing.mac
>
> #################################
> # SENSITIVE DETECTORS
> # GATE provides two sensitive detectors,
> # which have two different functions
> # Using them properly is very important
> # for getting accurate results
>
> ###########################################
> # Crystal SD
> # The crystal SD makes it possible to
> # record hits in a sensitive volume
> # (e.g.,. in a scintillation crystal)
> # It must be attached to any volume for
> # which hit-data must be obtained
> # For recording hits in the NaI volume
> # only, the name of which is crystal,
> # this volume is attached to the crystal SD
> /gate/crystal/attachCrystalSD
>
> #############################################
> # Phantom SD
> # The phantom SD makes it possible to record
> # Compton events in the volumes within the
> # field of view. This can provide information
> # for result analysis to discriminate between
> # scattered and unscattered photons. It must
> # be attached to each and every volume for
> # whom Compton interactions have to be recorded
> /gate/Phantom/attachPhantomSD
>
> #############################################
> # S Y S T E M
> # The system acts as an interpretor between
> # the GATE geometry and data outputs for
> # reconstruction in our case, the Interfile
> # writer. A system must know which components
> # of the geometry are parts of the scanner,
> # and what their role are. For the moment,
> # there is only a system SPECThead, which
> # was built when the SPECThead volume was
> # inserted.
>
> # The SPECThead system is made of three
> # levels: base (for the head), crystal (for
> # the crystal and crystal matrix) and pixel
> # (for individual crystals for pixellated
> # gamma camera) For now, only the base of
> # the system is attached to a volume: the
> # volume SPECThead. For the system to get
> # information about your crystal, the level
> # crystal must be attached to the volume that
> # has been defined for the scintillating
> # crystal (crystal)
> /gate/systems/SPECThead/crystal/attach crystal
> # Look at the system
> /gate/systems/SPECThead/describe
>
> #############################################
> # P H Y S I C S
> # Select the processes to consider
> /gate/physics/gamma/selectRayleigh lowenergy
> /gate/physics/gamma/selectPhotoelectric lowenergy
> /gate/physics/gamma/selectCompton lowenergy
> /gate/physics/gamma/selectGammaConversion inactive
> /gate/physics/gamma/listProcesses
>
> # Set some cuts to speed up the simulation
> # X-rays are tracked until their energy fell
> # under 20 keV
> /gate/physics/setXRayCut 20. keV
> # Cut in order not to follow the secondary
> # electrons
> /gate/physics/setElectronCut 1. km
> /gate/physics/setDeltaRayCut 1. GeV
>
>
> # Physics initialization
> /run/initialize
>
> #############################################
> # D I G I T I Z E R
> # The digitizer tracks what happens in the
> # detection system and in the electronics
> # Build a digitizer that first computes the
> # centroid of interactions
>
> /gate/digitizer/Singles/insert adder
>
> /gate/digitizer/Singles/insert blurring
> /gate/digitizer/Singles/blurring/setResolution 0.15
> /gate/digitizer/Singles/blurring/setEnergyOfReference 140. keV
>
> /gate/digitizer/Singles/insert spblurring
> /gate/digitizer/Singles/spblurring/setSpresolution 0.0 mm
> /gate/digitizer/Singles/spblurring/verbose 1
>
> /gate/digitizer/Singles/insert thresholder
> /gate/digitizer/Singles/thresholder/setThreshold 20. keV
>
> /gate/digitizer/Singles/insert upholder
> /gate/digitizer/Singles/upholder/setUphold 190. keV
>
> #############################################
> # S O U R C E
> # Setting up the source
> /gate/source/addSource SourceConfinement
>
> # Define the shape of the source
> /gate/source/SourceConfinement/gps/type Volume
> /gate/source/SourceConfinement/gps/shape Cylinder
>
> # Define the dimensions of the source
> /gate/source/SourceConfinement/gps/radius 0.5 mm
> /gate/source/SourceConfinement/gps/halfz 0.25 mm
>
> # Define the placement of the source
> /gate/source/SourceConfinement/gps/centre 0. 0. 0. mm
>
> # Define the source as a gamma source
> /gate/source/SourceConfinement/gps/particle gamma
>
> # Define the gamma energy
> #/gate/source/SourceConfinement/gps/energytype Mono
> /gate/source/SourceConfinement/gps/energy 140. keV
>
> # Set the activity of the source
> /gate/source/SourceConfinement/setActivity 500000. Bq
>
> # Define a confinement
> # the activity cannot move with time so the attenuating
> # medium is moved and the activity is forced to be in the
> # attenuating medium
> /gate/source/SourceConfinement/gps/confine movsource_P
>
> # Define the emission direction (4 str)
> /gate/source/SourceConfinement/gps/angtype iso
> /gate/source/SourceConfinement/gps/mintheta 0. deg
> /gate/source/SourceConfinement/gps/maxtheta 180. deg
> /gate/source/SourceConfinement/gps/minphi 0. deg
> /gate/source/SourceConfinement/gps/maxphi 360. deg
>
> #############################################
> # R A N D O M
> # Change the root of the random module to run different simulations
> /gate/output/root/setSaveRndmFlag 1
>
> #############################################
> # O U T P U T
> # Select the options of the data output
> # As there are several modules, settings have
> # to be defined for each module, especially in
> # SPECT, where there are a lots of hits for
> # only a few counts, so it's better to limit
> # the amount of data produced Here the
> # SingleDigi output can be used if you have
> # your own program to process the data
>
> /gate/output/root/setFileName pinholeSPECT
> /gate/output/root/setRootSinglesAdderFlag 1
> /gate/output/root/setRootSinglesBlurringFlag 1
> /gate/output/root/setRootSinglesSpblurringFlag 1
> /gate/output/root/setRootSinglesThresholderFlag 1
> /gate/output/root/setRootSinglesUpholderFlag 1
>
> #/gate/output/root/setRootHitFlag 0
> #/gate/output/root/setRootSinglesFlag 0
> #/gate/output/root/setRootCoincidencesFlag 0
> #/gate/output/root/setRootNtupleFlag 0
>
> #/gate/output/ascii/disable
> /gate/output/ascii/setOutFileSinglesAdderFlag 0
> /gate/output/ascii/setOutFileSinglesSpblurringFlag 0
> /gate/output/ascii/setOutFileSinglesBlurringFlag 0
> /gate/output/ascii/setOutFileSinglesThresholderFlag 0
> /gate/output/ascii/setOutFileSinglesUpholderFlag 0
>
> #############################################
> # P R O J E C T I O N
> # Makes a set of projections from the crystal
> # hits Define the binning the projection module
> # to be used
> /gate/output/projection/pixelSizeX 2.03125 mm
> /gate/output/projection/pixelSizeY 2.03125 mm
> /gate/output/projection/pixelNumberX 128
> /gate/output/projection/pixelNumberY 128
>
> # Specify the projection plane (XY, YZ or ZX)
> /gate/output/projection/projectionPlane YZ
>
> #############################################
> # E X P E R I M E N T
> # Define the parameters of the experiment
> # (start time, stop time and time slice)
> # The number of projections depends on the
> # number of time slice, the rotation speed of
> # the system and the number of heads
> /gate/application/setTimeSlice 10. s
> /gate/application/setTimeStart 0. s
> /gate/application/setTimeStop 10. s
>
> #############################################
> # V E R B O S I T Y
> /control/verbose 0
> /grdm/verbose 0
> /run/verbose 0
> /event/verbose 0
> /tracking/verbose 0
> /gate/application/verbose 0
> /gate/generator/verbose 0
> /gate/stacking/verbose 0
> /gate/event/verbose 0
> /gate/source/verbose 0
> /gate/output/projection/verbose 0
> /gate/output/verbose 0
>
> # LET'S RUN THE SIMULATION!
> /gate/application/startDAQ
> -------------- next part --------------
> /control/verbose 1
> /control/saveHistory
> /run/verbose 2
> /event/verbose 1
> /tracking/verbose 1
>
> /gate/timing/setTime 0. s
> /gate/application/setTimeSlice 1. s
>
> #/control/execute mucam.mac
> #/control/execute startGammas.mac
> #/control/execute startTwoSources.mac
>
>
> -------------- next part --------------
> # Show how the geometry moves with time
> /gate/timing/setTime 0. s
> /gate/timing/setTime 20. s
> /gate/timing/setTime 40. s
> /gate/timing/setTime 60. s
> /gate/timing/setTime 80. s
> /gate/timing/setTime 100. s
> /gate/timing/setTime 120. s
> /gate/timing/setTime 140. s
> /gate/timing/setTime 160. s
> /gate/timing/setTime 180. s
> /gate/timing/setTime 200. s
> /gate/timing/setTime 220. s
> /gate/timing/setTime 240. s
> /gate/timing/setTime 260. s
> /gate/timing/setTime 270. s
> /gate/timing/setTime 280. s
> /gate/timing/setTime 300. s
> /gate/timing/setTime 320. s
> /gate/timing/setTime 340. s
> /gate/timing/setTime 360. s
> /gate/timing/setTime 380. s
> /gate/timing/setTime 400. s
> /gate/timing/setTime 420. s
> /gate/timing/setTime 440. s
> /gate/timing/setTime 460. s
> /gate/timing/setTime 480. s
> /gate/timing/setTime 500. s
> /gate/timing/setTime 520. s
> /gate/timing/setTime 540. s
> /gate/timing/setTime 560. s
> /gate/timing/setTime 580. s
> /gate/timing/setTime 600. s
> /gate/timing/setTime 620. s
> /gate/timing/setTime 640. s
> -------------- next part --------------
> # V I S U A L I S A T I O N
> /vis/open OGLSX
> /vis/viewer/reset
> /vis/drawView 60 60
> /vis/viewer/zoom 2
> /vis/viewer/set/style surface
> /vis/drawVolume
> /vis/scene/endOfEventAction accumulate
> /vis/viewer/update
> /vis/verbose 2
>
> ------------------------------
>
> Message: 2
> Date: Mon, 25 Jul 2005 13:56:50 +0200
> From: Sebastien JAN <jan at shfj.cea.fr>
> Subject: Re: [gate-users] Re: gate-users Digest, Vol 16, Issue 25
> To: GATE feedback and helpline for Users
> <gate-users at lphe1pet1.epfl.ch>
> Message-ID: <42E4D382.8050105 at shfj.cea.fr>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
>
> Hi Christian,
>
> Could you check the distributions (with root or ASCII output) of
> globalPosX ; globalPosY ; globalPosZ for the 2 following configurations:
>
> 1/ /gate/digitizer/Singles/spblurring/setSpresolution 0.0
> 2/ /gate/digitizer/Singles/spblurring/setSpresolution 10.0
>
> let me know if you find some differences in your output according to the
> spatial blurring
>
> seb
>
>
>
> Christian Wietholt a écrit:
> > Hi Sebastien,
> >
> > Thank you so much for your reply and offering your help. I still could not
> > figure out how to get the digitizer blurring to work. I am already wondering
> > if the digitizer blurring is enabled in the interfile output function, or
> > wether I will have to use the singles.dat file and the supplied C programs to
> > generate the correct projection images.
> >
> > Please find attached to this email my most current version of the macro file.
> >
> > Thanks again,
> >
> > Christian
> >
> >
> >
> > On Monday 25 July 2005 18:02, gate-users-request at lphe1pet1.epfl.ch wrote:
> >
> >>Send gate-users mailing list submissions to
> >> gate-users at lphe1pet1.epfl.ch
> >>
> >>To subscribe or unsubscribe via the World Wide Web, visit
> >> http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >>
> >>Please use the GATE's site webmaster e-mail to reach the person
> >>managing the list.
> >>
> >>
> >>Today's Topics:
> >>
> >> 1. Re: SPblurring (Sebastien JAN)
> >>
> >>
> >>----------------------------------------------------------------------
> >>
> >>Message: 1
> >>Date: Mon, 25 Jul 2005 11:39:55 +0200
> >>From: Sebastien JAN <jan at shfj.cea.fr>
> >>Subject: Re: [gate-users] SPblurring
> >>To: GATE feedback and helpline for Users
> >> <gate-users at lphe1pet1.epfl.ch>
> >>Message-ID: <42E4B36B.3080306 at shfj.cea.fr>
> >>Content-Type: text/plain; charset=iso-8859-1; format=flowed
> >>
> >>Hi ,
> >>
> >>Can you send me your macro please ?
> >>
> >>seb
> >>
> >>Christian Wietholt a écrit:
> >>
> >>>Dear Gate Users,
> >>>
> >>>After I submitted my question about SPblurring, I realized that
> >>>I should first initialize and then set up the detector. I did so, and
> >>>the Gate ouput on the command shell was completely different,
> >>>but still no detector spatial blurr in the projection images. What
> >>>am I doing wrong? Anybody has a suggestion what I could try
> >>>next?
> >>>
> >>>Christian
> >>>_______________________________________________
> >>>gate-users mailing list
> >>>gate-users at lphe1pet1.epfl.ch
> >>>http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >>
> >>------------------------------
> >>
> >>_______________________________________________
> >>gate-users mailing list
> >>gate-users at lphe1pet1.epfl.ch
> >>http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
> >>
> >>End of gate-users Digest, Vol 16, Issue 25
> >>*****************************************
> >
> > *
> >
> >
> > ------------------------------------------------------------------------
> >
> > #############################################
> > # V I S U A L I S A T I O N
> > /control/execute visu.mac
> >
> > /tracking/storeTrajectory 1
> > /gate/geometry/enableAutoUpdate
> >
> > #############################################
> > # V E R B O S I T Y
> > /gate/output/verbose 2
> >
> > #############################################
> > # W O R L D
> > # Define the world dimensions
> > /gate/world/geometry/setXLength 1000 mm
> > /gate/world/geometry/setYLength 1000 mm
> > /gate/world/geometry/setZLength 1000 mm
> >
> > #############################################
> > # S C A N N E R H E A D
> > # Create a new box representing the main
> > # head-volume SPECThead is the name of the
> > # predefined SPECT system Create the SPECT
> > # system, which will yield an Interfile output
> > # of projection data
> > /gate/world/daughters/name SPECThead
> > /gate/world/daughters/insert box
> >
> > # Define the dimensions of the main volume
> > /gate/SPECThead/geometry/setXLength 300. mm
> > /gate/SPECThead/geometry/setYLength 300. mm
> > /gate/SPECThead/geometry/setZLength 300. mm
> >
> > # Define the position of the main volume
> > # Move the head 9 cm away from the Z axis,
> > # which is the rotation axis and the
> > # replication axis
> > /gate/SPECThead/placement/setTranslation 200. 0. 0. mm
> >
> > # Set the material associated with the main volume
> > /gate/SPECThead/setMaterial Air
> > /gate/SPECThead/attachPhantomSD
> >
> > # Define the rotation speed of the head
> > # Define the orbiting around the Z axis
> > /gate/SPECThead/moves/insert orbiting
> > /gate/SPECThead/orbiting/setSpeed 0.5625 deg/s
> > /gate/SPECThead/orbiting/setPoint1 0. 0. 0. mm
> > /gate/SPECThead/orbiting/setPoint2 0. 0. 1. mm
> >
> > # Define some visualisation options
> > /gate/SPECThead/vis/forceWireframe
> >
> > # Shielding
> > # Create the shielding volume
> > /gate/SPECThead/daughters/name shielding
> > /gate/SPECThead/daughters/insert box
> >
> > # Define the dimensions of the shielding volume
> > /gate/shielding/geometry/setXLength 300. mm
> > /gate/shielding/geometry/setYLength 300. mm
> > /gate/shielding/geometry/setZLength 300. mm
> >
> > # Define the position of the shielding volume
> > /gate/shielding/placement/setTranslation 0. 0. 0. mm
> >
> > # Set the material corresponding to the
> > # shielding volume
> > /gate/shielding/setMaterial Lead
> >
> > # Define some visualisation options
> > /gate/shielding/vis/setColor red
> > /gate/shielding/vis/forceWireframe
> >
> > # Attach phantom SD to record Compton
> > # interactions in the shielding volume
> > # Needed to discriminate between scattered
> > # and unscattered photons
> > /gate/shielding/attachPhantomSD
> >
> >
> > #############################################
> > # C O L L I M A T O R
> > # Create a full volume defining the shape
> > # of the collimator
> > /gate/SPECThead/daughters/name collimator
> > /gate/SPECThead/daughters/insert box
> >
> > /gate/collimator/geometry/setXLength 20. mm
> > /gate/collimator/geometry/setYLength 300. mm
> > /gate/collimator/geometry/setZLength 300. mm
> >
> > /gate/collimator/setMaterial Lead
> > /gate/collimator/placement/setTranslation -140. 0. 0. mm
> >
> > /gate/collimator/vis/forceWireframe
> > /gate/collimator/vis/setColor red
> >
> > # Attach PhantomSD to record Compton
> > # interactions in the collimator volume
> > /gate/collimator/attachPhantomSD
> >
> > #############################################
> > # P I N H O L E
> > # Insert the pinhole in the collimator
> > /gate/collimator/daughters/name hole
> > /gate/collimator/daughters/insert cylinder
> > /gate/hole/geometry/setHeight 20. mm
> > /gate/hole/geometry/setRmax 2.5 mm
> > /gate/hole/placement/alignToX
> > /gate/hole/setMaterial Air
> > /gate/hole/vis/forceSolid
> >
> > /gate/collimator/daughters/name cone1
> > /gate/collimator/daughters/insert cone
> > #/gate/cone1/geometry/setHeight 7.5 mm
> > /gate/cone1/geometry/setHeight 9 mm
> > /gate/cone1/geometry/setRmax1 10. mm
> > /gate/cone1/geometry/setRmax2 2.5 mm
> > #/gate/cone1/placement/setTranslation -6.25 0 0 mm
> > /gate/cone1/placement/setTranslation -5.5 0 0 mm
> > /gate/cone1/placement/alignToX
> > /gate/cone1/setMaterial Air
> > /gate/cone1/vis/forceSolid
> >
> > /gate/collimator/daughters/name cone2
> > /gate/collimator/daughters/insert cone
> > #/gate/cone2/geometry/setHeight 7.5 mm
> > /gate/cone2/geometry/setHeight 9 mm
> > /gate/cone2/geometry/setRmax1 2.5 mm
> > /gate/cone2/geometry/setRmax2 10. mm
> > #/gate/cone2/placement/setTranslation 6.25 0 0 mm
> > /gate/cone2/placement/setTranslation 5.5 0 0 mm
> > /gate/cone2/placement/alignToX
> > /gate/cone2/setMaterial Air
> > /gate/cone2/vis/forceSolid
> >
> > ############################################
> > # C A M H E A D A I R
> > # insert air behind the collimator
> > /gate/SPECThead/daughters/name aircomp
> > /gate/SPECThead/daughters/insert box
> > /gate/aircomp/geometry/setXLength 170 mm
> > /gate/aircomp/geometry/setYLength 260 mm
> > /gate/aircomp/geometry/setZLength 260 mm
> > /gate/aircomp/placement/setTranslation -45 0 0 mm
> > /gate/aircomp/vis/forceWireframe
> >
> > ############################################
> > # C R Y S T A L
> > # Create the crystal volume
> > /gate/SPECThead/daughters/name crystal
> > /gate/SPECThead/daughters/insert box
> >
> > # Define the dimensions of the crystal volume
> > /gate/crystal/geometry/setXLength 6. mm
> > /gate/crystal/geometry/setYLength 260. mm
> > /gate/crystal/geometry/setZLength 260. mm
> >
> > # Define the position of the crystal volume
> > /gate/crystal/placement/setTranslation 43. 0. 0. mm
> >
> > # Set the material associated with the crystal
> > # volume
> > /gate/crystal/setMaterial NaI
> >
> > # Define some visualisation options
> > /gate/crystal/vis/setColor yellow
> >
> > ###########################################
> > # B A C K - C O M P A R T M E N T
> > # Create the back-compartment volume
> > /gate/SPECThead/daughters/name compartment
> > /gate/SPECThead/daughters/insert box
> >
> > # Define the dimensions of the back-compartment volume
> > /gate/compartment/geometry/setXLength 30. mm
> > /gate/compartment/geometry/setYLength 260. mm
> > /gate/compartment/geometry/setZLength 260. mm
> >
> > # Define the position of the back-compartment volume
> > /gate/compartment/placement/setTranslation 61. 0. 0. mm
> >
> > # Set the material of the back-compartment volume
> > /gate/compartment/setMaterial Glass
> >
> > # Define some visualisation options
> > /gate/compartment/vis/setColor grey
> >
> > # Attach PhantomSD to record Compton
> > # interactions in the back-compartment volume
> > /gate/compartment/attachPhantomSD
> >
> >
> > #############################################
> > # P H A N T O M
> > # Create the phantom volume
> > /gate/world/daughters/name Phantom
> > /gate/world/daughters/insert cylinder
> >
> > # Define the dimensions of the phantom
> > # volume
> > /gate/Phantom/geometry/setRmax 0.5 mm
> > /gate/Phantom/geometry/setRmin 0. mm
> > /gate/Phantom/geometry/setHeight 0.5 mm
> > /gate/Phantom/placement/setTranslation 0 0 0 mm
> >
> > # Set the material corresponding to the
> > # phantom volume
> > /gate/Phantom/setMaterial Water
> >
> > # Define some visualisation options
> > /gate/Phantom/vis/setColor blue
> > /gate/Phantom/vis/forceWireframe
> >
> > # Attach PhantomSD to record Compton
> > # interactions in the phantom volume
> > /gate/Phantom/attachPhantomSD
> >
> >
> > #############################################
> > # M O V I N G S O U R C E
> > # Add an extra object for source confinement
> > /gate/Phantom/daughters/name movsource
> > /gate/Phantom/daughters/insert cylinder
> >
> > # Define the dimensions of the source volume
> > /gate/movsource/geometry/setRmax 0.5 mm
> > /gate/movsource/geometry/setRmin 0. mm
> > /gate/movsource/geometry/setHeight 0.5 mm
> >
> > # Set the material corresponding to the
> > # phantom volume
> > /gate/movsource/setMaterial Water
> >
> > # Define some visualisation options
> > /gate/movsource/vis/setColor magenta
> > /gate/movsource/attachPhantomSD
> >
> > /control/execute timing.mac
> >
> > #################################
> > # SENSITIVE DETECTORS
> > # GATE provides two sensitive detectors,
> > # which have two different functions
> > # Using them properly is very important
> > # for getting accurate results
> >
> > ###########################################
> > # Crystal SD
> > # The crystal SD makes it possible to
> > # record hits in a sensitive volume
> > # (e.g.,. in a scintillation crystal)
> > # It must be attached to any volume for
> > # which hit-data must be obtained
> > # For recording hits in the NaI volume
> > # only, the name of which is crystal,
> > # this volume is attached to the crystal SD
> > /gate/crystal/attachCrystalSD
> >
> > #############################################
> > # Phantom SD
> > # The phantom SD makes it possible to record
> > # Compton events in the volumes within the
> > # field of view. This can provide information
> > # for result analysis to discriminate between
> > # scattered and unscattered photons. It must
> > # be attached to each and every volume for
> > # whom Compton interactions have to be recorded
> > /gate/Phantom/attachPhantomSD
> >
> > #############################################
> > # S Y S T E M
> > # The system acts as an interpretor between
> > # the GATE geometry and data outputs for
> > # reconstruction in our case, the Interfile
> > # writer. A system must know which components
> > # of the geometry are parts of the scanner,
> > # and what their role are. For the moment,
> > # there is only a system SPECThead, which
> > # was built when the SPECThead volume was
> > # inserted.
> >
> > # The SPECThead system is made of three
> > # levels: base (for the head), crystal (for
> > # the crystal and crystal matrix) and pixel
> > # (for individual crystals for pixellated
> > # gamma camera) For now, only the base of
> > # the system is attached to a volume: the
> > # volume SPECThead. For the system to get
> > # information about your crystal, the level
> > # crystal must be attached to the volume that
> > # has been defined for the scintillating
> > # crystal (crystal)
> > /gate/systems/SPECThead/crystal/attach crystal
> > # Look at the system
> > /gate/systems/SPECThead/describe
> >
> > #############################################
> > # P H Y S I C S
> > # Select the processes to consider
> > /gate/physics/gamma/selectRayleigh lowenergy
> > /gate/physics/gamma/selectPhotoelectric lowenergy
> > /gate/physics/gamma/selectCompton lowenergy
> > /gate/physics/gamma/selectGammaConversion inactive
> > /gate/physics/gamma/listProcesses
> >
> > # Set some cuts to speed up the simulation
> > # X-rays are tracked until their energy fell
> > # under 20 keV
> > /gate/physics/setXRayCut 20. keV
> > # Cut in order not to follow the secondary
> > # electrons
> > /gate/physics/setElectronCut 1. km
> > /gate/physics/setDeltaRayCut 1. GeV
> >
> >
> > # Physics initialization
> > /run/initialize
> >
> > #############################################
> > # D I G I T I Z E R
> > # The digitizer tracks what happens in the
> > # detection system and in the electronics
> > # Build a digitizer that first computes the
> > # centroid of interactions
> >
> > /gate/digitizer/Singles/insert adder
> >
> > /gate/digitizer/Singles/insert blurring
> > /gate/digitizer/Singles/blurring/setResolution 0.15
> > /gate/digitizer/Singles/blurring/setEnergyOfReference 140. keV
> >
> > /gate/digitizer/Singles/insert spblurring
> > /gate/digitizer/Singles/spblurring/setSpresolution 0.0 mm
> > /gate/digitizer/Singles/spblurring/verbose 1
> >
> > /gate/digitizer/Singles/insert thresholder
> > /gate/digitizer/Singles/thresholder/setThreshold 20. keV
> >
> > /gate/digitizer/Singles/insert upholder
> > /gate/digitizer/Singles/upholder/setUphold 190. keV
> >
> > #############################################
> > # S O U R C E
> > # Setting up the source
> > /gate/source/addSource SourceConfinement
> >
> > # Define the shape of the source
> > /gate/source/SourceConfinement/gps/type Volume
> > /gate/source/SourceConfinement/gps/shape Cylinder
> >
> > # Define the dimensions of the source
> > /gate/source/SourceConfinement/gps/radius 0.5 mm
> > /gate/source/SourceConfinement/gps/halfz 0.25 mm
> >
> > # Define the placement of the source
> > /gate/source/SourceConfinement/gps/centre 0. 0. 0. mm
> >
> > # Define the source as a gamma source
> > /gate/source/SourceConfinement/gps/particle gamma
> >
> > # Define the gamma energy
> > #/gate/source/SourceConfinement/gps/energytype Mono
> > /gate/source/SourceConfinement/gps/energy 140. keV
> >
> > # Set the activity of the source
> > /gate/source/SourceConfinement/setActivity 500000. Bq
> >
> > # Define a confinement
> > # the activity cannot move with time so the attenuating
> > # medium is moved and the activity is forced to be in the
> > # attenuating medium
> > /gate/source/SourceConfinement/gps/confine movsource_P
> >
> > # Define the emission direction (4 str)
> > /gate/source/SourceConfinement/gps/angtype iso
> > /gate/source/SourceConfinement/gps/mintheta 0. deg
> > /gate/source/SourceConfinement/gps/maxtheta 180. deg
> > /gate/source/SourceConfinement/gps/minphi 0. deg
> > /gate/source/SourceConfinement/gps/maxphi 360. deg
> >
> > #############################################
> > # R A N D O M
> > # Change the root of the random module to run different simulations
> > /gate/output/root/setSaveRndmFlag 1
> >
> > #############################################
> > # O U T P U T
> > # Select the options of the data output
> > # As there are several modules, settings have
> > # to be defined for each module, especially in
> > # SPECT, where there are a lots of hits for
> > # only a few counts, so it's better to limit
> > # the amount of data produced Here the
> > # SingleDigi output can be used if you have
> > # your own program to process the data
> >
> > /gate/output/root/setFileName pinholeSPECT
> > /gate/output/root/setRootSinglesAdderFlag 1
> > /gate/output/root/setRootSinglesBlurringFlag 1
> > /gate/output/root/setRootSinglesSpblurringFlag 1
> > /gate/output/root/setRootSinglesThresholderFlag 1
> > /gate/output/root/setRootSinglesUpholderFlag 1
> >
> > #/gate/output/root/setRootHitFlag 0
> > #/gate/output/root/setRootSinglesFlag 0
> > #/gate/output/root/setRootCoincidencesFlag 0
> > #/gate/output/root/setRootNtupleFlag 0
> >
> > #/gate/output/ascii/disable
> > /gate/output/ascii/setOutFileSinglesAdderFlag 0
> > /gate/output/ascii/setOutFileSinglesSpblurringFlag 0
> > /gate/output/ascii/setOutFileSinglesBlurringFlag 0
> > /gate/output/ascii/setOutFileSinglesThresholderFlag 0
> > /gate/output/ascii/setOutFileSinglesUpholderFlag 0
> >
> > #############################################
> > # P R O J E C T I O N
> > # Makes a set of projections from the crystal
> > # hits Define the binning the projection module
> > # to be used
> > /gate/output/projection/pixelSizeX 2.03125 mm
> > /gate/output/projection/pixelSizeY 2.03125 mm
> > /gate/output/projection/pixelNumberX 128
> > /gate/output/projection/pixelNumberY 128
> >
> > # Specify the projection plane (XY, YZ or ZX)
> > /gate/output/projection/projectionPlane YZ
> >
> > #############################################
> > # E X P E R I M E N T
> > # Define the parameters of the experiment
> > # (start time, stop time and time slice)
> > # The number of projections depends on the
> > # number of time slice, the rotation speed of
> > # the system and the number of heads
> > /gate/application/setTimeSlice 10. s
> > /gate/application/setTimeStart 0. s
> > /gate/application/setTimeStop 10. s
> >
> > #############################################
> > # V E R B O S I T Y
> > /control/verbose 0
> > /grdm/verbose 0
> > /run/verbose 0
> > /event/verbose 0
> > /tracking/verbose 0
> > /gate/application/verbose 0
> > /gate/generator/verbose 0
> > /gate/stacking/verbose 0
> > /gate/event/verbose 0
> > /gate/source/verbose 0
> > /gate/output/projection/verbose 0
> > /gate/output/verbose 0
> >
> > # LET'S RUN THE SIMULATION!
> > /gate/application/startDAQ
> >
> >
> > ------------------------------------------------------------------------
> >
> > /control/verbose 1
> > /control/saveHistory
> > /run/verbose 2
> > /event/verbose 1
> > /tracking/verbose 1
> >
> > /gate/timing/setTime 0. s
> > /gate/application/setTimeSlice 1. s
> >
> > #/control/execute mucam.mac
> > #/control/execute startGammas.mac
> > #/control/execute startTwoSources.mac
> >
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > # Show how the geometry moves with time
> > /gate/timing/setTime 0. s
> > /gate/timing/setTime 20. s
> > /gate/timing/setTime 40. s
> > /gate/timing/setTime 60. s
> > /gate/timing/setTime 80. s
> > /gate/timing/setTime 100. s
> > /gate/timing/setTime 120. s
> > /gate/timing/setTime 140. s
> > /gate/timing/setTime 160. s
> > /gate/timing/setTime 180. s
> > /gate/timing/setTime 200. s
> > /gate/timing/setTime 220. s
> > /gate/timing/setTime 240. s
> > /gate/timing/setTime 260. s
> > /gate/timing/setTime 270. s
> > /gate/timing/setTime 280. s
> > /gate/timing/setTime 300. s
> > /gate/timing/setTime 320. s
> > /gate/timing/setTime 340. s
> > /gate/timing/setTime 360. s
> > /gate/timing/setTime 380. s
> > /gate/timing/setTime 400. s
> > /gate/timing/setTime 420. s
> > /gate/timing/setTime 440. s
> > /gate/timing/setTime 460. s
> > /gate/timing/setTime 480. s
> > /gate/timing/setTime 500. s
> > /gate/timing/setTime 520. s
> > /gate/timing/setTime 540. s
> > /gate/timing/setTime 560. s
> > /gate/timing/setTime 580. s
> > /gate/timing/setTime 600. s
> > /gate/timing/setTime 620. s
> > /gate/timing/setTime 640. s
> >
> >
> > ------------------------------------------------------------------------
> >
> > # V I S U A L I S A T I O N
> > /vis/open OGLSX
> > /vis/viewer/reset
> > /vis/drawView 60 60
> > /vis/viewer/zoom 2
> > /vis/viewer/set/style surface
> > /vis/drawVolume
> > /vis/scene/endOfEventAction accumulate
> > /vis/viewer/update
> > /vis/verbose 2
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > gate-users mailing list
> > gate-users at lphe1pet1.epfl.ch
> > http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
>
>
>
> ------------------------------
>
> _______________________________________________
> gate-users mailing list
> gate-users at lphe1pet1.epfl.ch
> http://lphe1pet1.epfl.ch/mailman/listinfo/gate-users
>
> End of gate-users Digest, Vol 16, Issue 26
> ******************************************
More information about the Gate-users
mailing list