[Gate-users] Using IAEA phase spaces

David Sarrut David.Sarrut at creatis.insa-lyon.fr
Thu Jun 4 07:14:28 CEST 2015


Hello Germano,

thank you very much for those inputs. There have been some considerations
about IAEA in Gate in the mailing list recently, you may want to have a
look.

Regarding your suggestions, could you please propose a pull-request via the
Gate repository : https://github.com/OpenGATE/Gate so that we include the
corrections in the next release ?

Basically :
- create a github account
- clone from the Gate develop branch
- commit your code modification in your branch
- submit pull-request

thanks a lot !
David


On Wed, Jun 3, 2015 at 6:04 PM, <germano.russo at i-seecomputing.com> wrote:

> Dear all,
>
> I recently tried to use as source an IAEA phase space, specifically the
> one named "VarianClinaciX_6MV_20x20_aboveMLC_w1.IAEAphsp" (downloadable
> from https://www-nds.iaea.org/phsp/photon1/), via the
> "/gate/source/[Source
> name]/addPhaseSpaceFile" macro command.
>
> The simulation (Gate 7.0) run smoothly, however I got meaningless results.
> Digging into the related Gate source code, I believe I found a few bugs
> which I report to you asking for confirmation.
>
>    1) In the function 'GateSourcePhaseSpace::OpenIAEAFile()' the call
> 'pIAEARecordType->initialize()' is placed after
> 'pIAEAReader->getRecordContents(pIAEARecordType)'. These two lines shall be
> swapped, otherwise the record contents information extracted form the IAEA
> header and stored in the the object pointed by pIAEARecordType is cleared
> by the initialisation operation.
>
>    2) The "GateIAEA*" source files appear to be based on an old C++
> implementation for handling phase spaces distributed by the IAEA. Some
> things seem to be outdated, for instance in the "GateIAEAConfig.h" the
> definition 'typedef long IAEA_I32' must be replaced with 'typedef int
> IAEA_I32' in order to conform to the current "*.IAEAphsp" file format.
>
>    3) In the function 'GateSourcePhaseSpace::GenerateIAEAVertex()' the
> 'pIAEARecordType->w' variable seems to be misused in the expression 'dz *=
> pIAEARecordType->w'. The 'pIAEARecordType->w' variable contains the Z
> direction cosine of the particle, not just its sign. So it should rather be
> 'dz = pIAEARecordType->w'. Since the 'pIAEARecordType->w' variable is
> slightly smaller than 1, this mistake causes small errors in the
> normalisation of the momentum (and hence of the kinetic energy).
>
> After having applied these correction, I was able to obtain a reasonable
> output dose distribution.
> Could you please check the above and give me a feedback? Thanks!
>
> Kind regards,
>
> Germano Russo
> R&D I-See (Internet - Simulation Evaluation Envision) company
> _______________________________________________
> 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/20150604/2af55d13/attachment.html>


More information about the Gate-users mailing list