[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