Skip to content

Correction of the acollinearity sampling following Toussaint et al.#762

Open
mraedler wants to merge 1 commit intoOpenGATE:developfrom
mraedler:acollinearity_effect_correction
Open

Correction of the acollinearity sampling following Toussaint et al.#762
mraedler wants to merge 1 commit intoOpenGATE:developfrom
mraedler:acollinearity_effect_correction

Conversation

@mraedler
Copy link
Copy Markdown
Contributor

Adapt the correction suggested by Toussaint et al. (https://doi.org/10.1088/1361-6560/ad70f1).

@MaxTousss
Copy link
Copy Markdown
Contributor

Greetings!

The current PR implements APA, as suggested in the paper, for BackToBack source.

However, it will not change anything for positron sources. If this is the intent of the PR than the PR should be good! If not, a decision need to be made about accepting, or not, the "risk" of changing the value of "MeanEnergyPerIonPair" for all materials.

Whichever is chosen, I suggest that a PR to modify the GateBenchmark be made to show that it works and that it would be linked here, with an image of the results, to show that it does indeed work.

Bests,
Maxime

@mraedler
Copy link
Copy Markdown
Contributor Author

Regarding the benchmark I have a commit to fix it here
mraedler/GateBenchmarks@85d191b

I could open a PR on
https://github.com/OpenGATE/GateBenchmarks

@mraedler
Copy link
Copy Markdown
Contributor Author

And here are the plots
The original benchmark fits a Gaussian
acoDistComparison_gauss_fit

The fixed version fits a Rayleigh distribution
acoDistComparison_rayleigh_fit

@mraedler
Copy link
Copy Markdown
Contributor Author

Regarding the positron sources:
I suppose (correct me if i'm wrong) we would need to insert

material->GetIonisation()->SetMeanEnergyPerIonPair(5. * eV);

in /source/geometry/src/GateMaterialDatabase.cc below line 94

That would probably activate it in all cases. One could think of adding an option to turn it off.

@MaxTousss let me know what you think and btw thank you for commenting!

@MaxTousss
Copy link
Copy Markdown
Contributor

That is indeed the command suggested by Geant4 to activate APA as seen in PET. However, to be truthful, I am not sure where it should be defined. For the simulations made for the article, I placed it in
source/geometry/src/GateDetectorConstruction.cc and it worked. I guess that the materials that can be used in GateDetector are also those used everywhere else...

In particular, this is where I put it:

const G4MaterialTable * theTable = G4Material::GetMaterialTable();
  for(unsigned int i =0;i<(*theTable).size();i++){
    (*theTable)[i]->GetIonisation()->SetMeanEnergyPerIonPair(5.0*eV);     <---- The command
    if(theListOfIonisationPotential[(*theTable)[i]->GetName()]){`
(...)

Your suggestion of placement seems more general but I can't say if it is better, worst or incorrect. Sorry!

As for an option to deactivate it, I do not have a strong opinion on that. Note that you could also give an option to change the value. The shape and width of APA change with temperature, so, maybe someone somewhere would like to play with that value with compiling each time.

Again, I repeat that my knowledge of GATE is too limited to know if this command change anything else than APA. Thus, I leave GATE dev to decide on that.

Finally, it is a pleasure to be able to help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants