<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Dear David,
<div class=""><br class="">
</div>
<div class="">thanks a lot for your answer!</div>
<div class=""><br class="">
</div>
<div class="">Indeed, I was referring to “production cuts”, sorry for the wrong terminology.</div>
<div class=""><br class="">
</div>
<div class="">Thanks a lot for your suggestions, I will apply them and let you know about the results. </div>
<div class=""><br class="">
</div>
<div class="">Kind regards,</div>
<div class="">David<br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">On 18 May2022, at 13:28, David Sarrut <<a href="mailto:david.sarrut@creatis.insa-lyon.fr" class="">david.sarrut@creatis.insa-lyon.fr</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">Hi David, 
<div class=""><br class="">
</div>
<div class="">interesting indeed ... I would suggest, maybe, to use a second phase-space actor attached to the crystal and see if you can observe similar behavior. </div>
<div class=""><br class="">
</div>
<div class="">You mentioned "range cut", but did you really used "ranged cut" (<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__opengate.readthedocs.io_en_latest_cut-5Fand-5Fvariance-5Freduction-5Ftechnics.html-23special-2Dcuts&d=DwMFaQ&c=XYzUhXBD2cD-CornpT4QE19xOJBbRy-TBPLK0X9U2o8&r=lfXR69GFfS7NT-Wp5HZqbtBDrbYoilDdmNEG7fKW7aM&m=msOSt_Cuqems-MdSlI7cb4iBwEjcICzcr6zqGiZQABx3xcgK95id4rGs_Lw6U5S8&s=uI_BMLv0lolDo9Z4d_F-Mye06FQyaBWVEAfv-yR4n6Q&e=" class="">https://opengate.readthedocs.io/en/latest/cut_and_variance_reduction_technics.html#special-cuts</a>)
 or the default "production cut" (<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__opengate.readthedocs.io_en_latest_cut-5Fand-5Fvariance-5Freduction-5Ftechnics.html-23id2&d=DwMFaQ&c=XYzUhXBD2cD-CornpT4QE19xOJBbRy-TBPLK0X9U2o8&r=lfXR69GFfS7NT-Wp5HZqbtBDrbYoilDdmNEG7fKW7aM&m=msOSt_Cuqems-MdSlI7cb4iBwEjcICzcr6zqGiZQABx3xcgK95id4rGs_Lw6U5S8&s=EEzETSAa8hoGEyDVMmi0GQFd4XsLCF9wA7f0NgtvjaU&e=" class="">https://opengate.readthedocs.io/en/latest/cut_and_variance_reduction_technics.html#id2</a>)
 ? <br class="">
</div>
<div class=""><br class="">
</div>
<div class="">I don't really get why the # of incident gammas is lower with lower cut ; maybe try to look at the energy spectra ? Also, there are differences between crystalHits and phase-space. For example: crystalHits do not store hits when edep=0 while phasespace
 does. Phase space actor has many options (storeAllStep for example, see <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_OpenGATE_Gate_blob_develop_source_digits-5Fhits_src_GatePhaseSpaceActorMessenger.cc&d=DwMFaQ&c=XYzUhXBD2cD-CornpT4QE19xOJBbRy-TBPLK0X9U2o8&r=lfXR69GFfS7NT-Wp5HZqbtBDrbYoilDdmNEG7fKW7aM&m=msOSt_Cuqems-MdSlI7cb4iBwEjcICzcr6zqGiZQABx3xcgK95id4rGs_Lw6U5S8&s=a8Jxr4qTjZv3ZQujRwpgNz-Fo5Pb-ZCnpz3u0ZG5hO8&e=" class="">
https://github.com/OpenGATE/Gate/blob/develop/source/digits_hits/src/GatePhaseSpaceActorMessenger.cc</a>) you can play with to try understand what happens. Be sure to define (in particular): storeSecondaries (should be false), storeOutgoingParticles (should
 be false) and storeAllStep (should be false). </div>
<div class=""><br class="">
</div>
<div class="">Sincerely, </div>
<div class="">David</div>
</div>
<br class="">
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, May 17, 2022 at 11:34 PM David Leibold <<a href="mailto:D.Leibold@tudelft.nl" class="">D.Leibold@tudelft.nl</a>> wrote:<br class="">
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div class="">
<div style="overflow-wrap: break-word;" class="">Dear Gaters,
<div class=""><br class="">
</div>
<div class="">I am simulating a cone beam CT setup where I output the Hits / Singles registered in the detector, which I then split into primary and scatter contribution based on the
<font face="Consolas" class=""><span style="font-style:normal" class="">nPhantomCompton</span></font>,
<font face="Consolas" class=""><span style="font-style:normal" class="">nPhantomRayleigh</span></font> and
<font face="Consolas" class=""><span style="font-style:normal" class="">parentID</span></font> parameters. These indicate the number of Compton or Rayleigh scatter events in the phantom and whether a particle was created by the source or via creation of secondary
 particles.</div>
<div class="">We noticed that the scatter-to-primary ratio in our simulation was far below the values reported in literature (more than a factor 10). I was able to show that for certain range cuts not every scattered photon exhibited a <font face="Consolas" class="">nPhantomCompton </font>or <font face="Consolas" class="">nPhantomRayleigh</font> value
 that would have indicated that it was indeed scattered. In the following I will try to explain what I mean by that and which behaviour of the simulation I can’t explain. </div>
<div class=""><br class="">
</div>
<div class="">In the following figure you will see on the left the simulation setup:</div>
<div class="">
<ul class="">
<li class="">A monoenergetic source emitting a pencil beam of 120 keV photons,</li><li class="">A water cube serving as a phantom,</li><li class="">A phase space actor in front of a realistic (two-dimensional) detector,</li><li class="">And a CTdetector of a realistic material (CsI), to which a crystalSD detector is attached.</li></ul>
</div>
<div class=""><br class="">
</div>
<div class="">With the output of the crystalSD detector (Hits/Singles) and the phase space actor, one can simply plot the coordinates of the intersection point of the incident photons with the detector plane. Any photon that does not go through the centre axis
 must then either have been scattered in the water phantom or be a secondary. (*)</div>
<div class="">Additionally, the crystalSD detector outputs the <font face="Consolas" class="">nPhantomCompton</font>, <font face="Consolas" class="">nPhantomRayleigh</font> and <font face="Consolas" class="">parentID</font> parameters, which I used initially
 to separate primaries from scatter. </div>
<div class=""><br class="">
</div>
<div class=""></div>
</div>
<div class=""><span id="cid:180d6e0f1d95ccf4f381"><setup.png></span> </div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class="">(*) Note: In the Hits dataset, I only evaluate the first entry for a given eventID, so scatter inside the detector does not influence this evaluation (I guess?). In the data of the phase space actor, only photons flying in the direction of the
 detector are evaluated.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">In the following the range cut<b class=""> inside the detector</b> is now varied. I then evaluated:</div>
<div class="">
<ul class="">
<li class="">How many photons end up in the detector, which is evaluated by counting the number of unique eventIDs in the Hits dataset (label “incident photons”),</li><li class="">How many photons are flagged by Gate as scatter or as secondary particle, based on the <font face="Consolas" class="">nPhantomCompton</font>, <font face="Consolas" class="">nPhantomRayleigh</font> and <font face="Consolas" class="">parentID</font> parameters
 (label “Gate: scatter&secondaries”),</li><li class="">How many photons are outside the centre axis, based on the their intersection with the phase space actor (label “off-centre in phase-space”), </li><li class="">and how many photons are outside the centre axis, based on their intersection with the realistic detector (i.e., using their coordinates as registered in the Hits output, label “hits off-centre").</li></ul>
<div class="">The following plot shows the results:</div>
</div>
<div class=""></div>
</div>
<div class=""><span id="cid:180d6e0f1d979344b8f2"><stp_d.png></span> </div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class=""><br class="">
</div>
<div class="">As one can see, below a certain range cut the number of events flagged by Gate as scatter or secondaries (via the  <font face="Consolas" class="">nPhantomCompton</font>, <font face="Consolas" class="">nPhantomRayleigh</font> and <font face="Consolas" class="">parentID</font> parameters)
 drops considerably and deviates from the evaluation based on the number of photons that are off-centre. I have no explanation for this phenomenon.</div>
<div class=""><br class="">
</div>
<div class="">Now let’s zoom into the the number of incident photons: </div>
<div class=""><br class="">
</div>
<div class=""></div>
</div>
<div class=""><span id="cid:180d6e0f1d9c8edcfc13"><stp_d_ni.png></span> </div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class="">Interestingly, the number of photons incident on the detector varies with the range cut, which to me is unexpected. Sure, the number of interactions inside the detector increases with decreasing range cut, but this should have no effect on the
 number of incident photons.</div>
<div class=""><br class="">
</div>
<div class="">Here is a zoom into the number of off-axis photons:</div>
<div class=""></div>
</div>
<div class=""><span id="cid:180d6e0f1daca31ec584"><stp_d_oa.png></span> </div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class="">I don’t have an explanation why the phase space actor and the crystalSD have a slightly different number of off-axis photons, but this is at the moment not my main concern. Again, one can see that their number changes with decreasing range cut.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Last but not least, I kept the range cut in the detector at the default value and instead changed the range cut inside the phantom. Here is the result:</div>
<div class=""></div>
</div>
<div class=""><span id="cid:180d6e0f1da79dd659b5"><stp_p.png></span> </div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class="">In this case, the three different ways to extract the number of scatter and primaries agree more or less. Again, one can clearly see a change in the number of total incident photons with smaller range cuts.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">So far, I am unable to explain the behaviour shown above, and I am not sure whether I did something wrong in my Gate simulation or whether this is a bug. Please find attached the Gate macros that I used to create this minimum example, and also
 the Python script I used to evaluate the resulting data. FYI, I use Gate version 9.1, and I also observe this behaviour with Gate version 9.0.</div>
<div class="">Any help or suggestions would be greatly appreciated. If you think that this is a bug, then I am happy to submit a bug report on GitHub.</div>
<div class=""><br class="">
</div>
<div class="">Thanks a lot for your time in advance!</div>
<div class=""><br class="">
</div>
<div class="">Kind regards,</div>
<div class="">David Leibold</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class=""></div>
</div>
<div style="overflow-wrap: break-word;" class="">
<div class=""></div>
<div class=""><br class="">
</div>
</div>
</div>
_______________________________________________<br class="">
Gate-users mailing list<br class="">
<a href="mailto:Gate-users@lists.opengatecollaboration.org" target="_blank" class="">Gate-users@lists.opengatecollaboration.org</a><br class="">
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.opengatecollaboration.org_mailman_listinfo_gate-2Dusers&d=DwMFaQ&c=XYzUhXBD2cD-CornpT4QE19xOJBbRy-TBPLK0X9U2o8&r=lfXR69GFfS7NT-Wp5HZqbtBDrbYoilDdmNEG7fKW7aM&m=msOSt_Cuqems-MdSlI7cb4iBwEjcICzcr6zqGiZQABx3xcgK95id4rGs_Lw6U5S8&s=24G5ksXo-j0j8MyPkQpQR7sKfzueEkD2M30FW-qL8Ew&e=" rel="noreferrer" target="_blank" class="">http://lists.opengatecollaboration.org/mailman/listinfo/gate-users</a></blockquote>
</div>
<br clear="all" class="">
<div class=""><br class="">
</div>
-- <br class="">
<div dir="ltr" class="gmail_signature">
<div dir="ltr" class="">
<div class=""><span style="" class="">David Sarrut, Phd</span><br class="">
</div>
<div class=""><font class="">Directeur de recherche CNRS</font></div>
<div class=""><font class="">CREATIS, UMR CNRS 5220, Inserm U1294</font></div>
<div class=""><font class="">Centre de lutte contre le cancer Léon Bérard</font></div>
<div class=""><font class="">28 rue Laënnec, 69373 Lyon cedex 08</font></div>
<div class=""><font class="">Tel : 04 78 78 51 51 / 06 74 72 05 42</font></div>
<div class=""><font class=""><a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__dsarrut.github.io&d=DwMFaQ&c=XYzUhXBD2cD-CornpT4QE19xOJBbRy-TBPLK0X9U2o8&r=lfXR69GFfS7NT-Wp5HZqbtBDrbYoilDdmNEG7fKW7aM&m=msOSt_Cuqems-MdSlI7cb4iBwEjcICzcr6zqGiZQABx3xcgK95id4rGs_Lw6U5S8&s=toXdBHQvMOzlbOarpsrIqssE0tMO8HZUltPxasIqnwk&e=" target="_blank" class="">http://dsarrut.github.io</a></font></div>
<div class=""><font class="">_________________________________</font></div>
<div class=""><font class=""> "2 + 2 = 5,  for extremely large values of 2"</font></div>
<div class=""><font class="">_________________________________</font></div>
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</body>
</html>