[Gate-users] Gate dose/edep in cylindrical coordinates?

Andreas Resch andreas.resch at meduniwien.ac.at
Fri Sep 30 12:10:58 CEST 2016


Am 2016-09-27 07:58, schrieb David Sarrut:
> Hello Andreas,
> 
> (I forward to gate mailing list as it can be useful to other users).
> 
> To date, no tool is provided to score edep with cylindrical
> coordinates. It can be done from phase space, but it is tedious (and,
> as you say, the file start to be big quickly).
> 
> The best approach should be to start writing a new dedicated Actor,
> inspired from GateDoseActor. For that, you need first to define a file
> format to store result in cylindrical coordinates, and allow the user
> to define the coordinate systems. Then, the main goal os to convert
> step position into that coord system. With the (cartesian) DoseActor,
> this is performed in the this function [1]  that compute the index of
> the pixel according to the step coordinates position. This function is
> call in GateVImageActor::UserSteppingAction, and GateDoseActor inherit
> from this class.
> 
> David
> 
> On Mon, Sep 26, 2016 at 6:22 PM, Andreas Resch <resch.andi at gmail.com>
> wrote:
> 
>> Hi David,
>> 
>> I was wondering if I can score the energy deposition in cylindrical
>> coordinates without angular information Edep(depth, radius).
>> 
>> Aparently it looks like not. The GateVImageActor uses x,y,z.
>> 
>> Do you know any workaround apart from the phaseSpace actor (it seems
>> that the files become large when enabling all steps..)
>> 
>> Maybe sth. like the energySpectrum actor?
>> 
>> Cheers,
>> 
>> Andreas
> 
> --
> 
> David Sarrut, Phd
> Directeur de recherche CNRS
> CREATIS, UMR CNRS 5220, Inserm U1206
> 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"
> _________________________________
> 
> Links:
> ------
> [1]
> https://github.com/OpenGATE/Gate/blob/develop/source/digits_hits/src/GateVImageActor.cc#L353
> _______________________________________________
> Gate-users mailing list
> Gate-users at lists.opengatecollaboration.org
> http://lists.opengatecollaboration.org/mailman/listinfo/gate-users


Hi David,

thanks for your advice. It works exactly as you described.
I have written a new edep actor (basically a copy from dose actor, 
removed 90% of the code). I did not define a new file format, but used 
the cartesian one and just wrote a new
int GateVImage::GetIndexFromPosition CylindricalCS where the x is 
replaced by the radius r= sqrt(x*x + y*y) (the std::sqrt function is 
noticeably slow, so I implemented the babylonian method with few 
iterations only). The new GetIndexFromPositionCylindricalCS is accessed 
by an additional stepHitType. So in principal I could have also used the 
GateDoseActor.

This is the quickest solution I found, not the best, but it does the job 
for me. If there is some time, I'll define an r,z image.


Thanks again,
Andreas
-- 
-------------------------

ANDREAS RESCH, M.SC.
PhD student, Medical Physics

MEDICAL UNIVERSITY OF VIENNA
Department of Radiotherapy
Christian Doppler Laboratory for Medical Radiation Physics for Radiation
Oncology

Waehringer Guertel 18-20, 1090 Wien
Ph: +43 (0)1 40400-72710
Ph: +43 (0)2622 26100-931
andreas.resch at meduniwien.ac.at
www.meduniwien.ac.at/radonc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: edep_over_xAndr_plateauexpt.png
Type: image/png
Size: 39435 bytes
Desc: not available
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20160930/13507c9c/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: edep_over_r_plateauexpt.png
Type: image/png
Size: 34330 bytes
Desc: not available
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20160930/13507c9c/attachment-0003.png>


More information about the Gate-users mailing list