[Gate-users] Gate dose/edep in cylindrical coordinates?
David Sarrut
David.Sarrut at creatis.insa-lyon.fr
Tue Oct 4 08:33:49 CEST 2016
Hi Andreas,
seems nice ! As I understand, you keep store image with a 3D matrix, but
change the meaning : instead of (cartesian) x,y,z axis, you consider theta,
phi, r is it right ? As you said, it could be included in the DoseActor
itself with a flag enabling cylindrical (or polar) instead of cartesian
coordinates.
I think it could be a nice additional feature to the dose actor. If you are
happy with your solution, could you please provide code modification and a
simple test example (ideally as a pull request) so that it can be included
in the next Gate release ? I am pretty sure that other users will be
interested by this feature !
thanks,
David
On Fri, Sep 30, 2016 at 12:10 PM, Andreas Resch <
andreas.resch at meduniwien.ac.at> wrote:
> 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
> _______________________________________________
> 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 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"
_________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20161004/07b13614/attachment.html>
More information about the Gate-users
mailing list