[Gate-users] Back to Back source

Seb sebastien.jan at cea.fr
Tue Feb 22 15:41:00 CET 2011

> I wrote all interaction points of the gammas (PDGEncoding == 22 and photonID == 1 || 2 )  to a file and then I use a CERN Root script I wrote for reverse ray tracing according to eventID. I simply see the emission point  (from the singles file) and the interaction points within my detector. Considering that I use no phantom and I am running in vaccum (with a value of 0 declared in the file which is then set to 1e -25 g/cm3 by Geant), the two points (source - first in det) should be a straight line. Well I also have a program which tells me when (eventID) the LOR would be too much outside the image I am imaging. 
> This is pretty (when the stats. Is high enough) reliable even if the best way would be to write both the momentum projections of the gamma to the Geant4 terminal. Yet again I cannot do it here at the lab because of compilation issues, I could do it this week at home though.  Can you think of a faster way to do it ? (My tracking script was already working this is why I used it even if this is not its purpose). 
Ok, to validate the method regarding the gamma colinearity  production, 
you need to compare the gamma momentum and anything else.
A quick and dirty method to do that without any dedicated output :
In the method  void GateBackToBack::GenerateVertex
if( accolinearityFlag == true )

      G4ThreeVector gammaMom = particle->GetMomentum();
      particle1->SetMomentum( -gammaMom.x(),-gammaMom.y(),-gammaMom.z() );

      G4ThreeVector gammaMom1 = particle1->GetMomentum();
      if(gammaMom1.x()/gammaMom.x() != -1 ||gammaMom1.y()/gammaMom.y() 
!= -1 || gammaMom1.z()/gammaMom.z() != -1){
      G4cout<<"gammaMom1.x() / gammaMom.x() = 
"<<gammaMom1.x()/gammaMom.x() <<G4endl;
      G4cout<<"gammaMom1.y() / gammaMom.y() = 
"<<gammaMom1.y()/gammaMom.y() <<G4endl;
      G4cout<<"gammaMom1.z() / gammaMom.z() = 
"<<gammaMom1.z()/gammaMom.z() <<G4endl;


More information about the Gate-users mailing list