Positron annihilation w/o two gammas and even annihilating?

Well, then, what shall we do?

By the way,

You mean step 7 starting from line 4191 of your attached file, right?

Kazuyoshi

Oops. I missed that. I should have looked closer at the awk script. Thanks.

I modified Furutaka’s awk script to handle the different output from the multithreaded Geant4 build and re-ran exampleB1 in single thread mode. I got 164 “non-annihilating” e+ events compared to Furutaka’s 193 for a single threaded Geant4 build. The difference in numbers is likely just statistics and differing intial seeds.

It would be great if you filed a bug report. I think we need input from the tracking people to proceed.

Lines 3735-4191, which I believe is step 6.

Just filled a report

Thanks for your help and interest, @John_McFee and @dsawkey !

Yours,
Kazuyoshi

Hello,

thank you for this post. This is a copy of the comment to the bug-report. In fact, it is correct to make a bug report even if you are not 100% sure that it is the bug.

In Geant4 it is allowed to define a track step by some process but before sampling of final state PostStep some conditions are checked and a decision to continue tracking may be made. One of the reasons for that - so called “integral approach for tracking”, which allows to take into account dependence of a cross section on energy due to energy loss of a particle at the step.

So, likely what you observe is normal, with low probability this may happens.

Let us think how to double check this assumption before closing this bug report.
For example, you may use UI command: “/process/em/integral false”. If in such run this type of events does not happens anymore, then my explanation is correct.

VI

Dear @civanch,

Thanks… Indeed, by adding /process/em/integral false before /run/initialize, such strange events dispappeared (no such events in 108 primaries).

Where can I find the description in the G4 documentation on this command and the “integral approach for tracking”?

Kazuyoshi

I could only find two references to the “integral approach for tracking” in the Physics Reference manual, here and here (and not in other manuals).

And before the release of Geant4 version 11, the setting seemed to be noted in the output of a simulation:

$ for dir in geant4{.,-}*[0-9]; do echo -n ${dir};grep "integral approach" ${dir}/source/processes/electromagnetic/utils/src/G4EmParameters.cc;done
geant4.10.06.p03  os << "Use integral approach for tracking                 " <<integral << "\n";
  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4.10.07  os << "Use integral approach for tracking                 " <<integral << "\n";
  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4.10.07.p01  os << "Use integral approach for tracking                 " <<integral << "\n";
  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4.10.07.p02  os << "Use integral approach for tracking                 " <<integral << "\n";
  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4.10.07.p03  os << "Use integral approach for tracking                 " <<integral << "\n";
  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.0.0  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.0.1  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.0.2  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.0.3  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.0.4  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.1.0  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";
geant4-v11.1.1  os << "X-section factor for integral approach             " <<lambdaFactor << "\n";

I also added the /process/em/integral false before /run/initialize and got no strange events in 10^8 primaries with my multithreaded Geant4 11.1.1 build (but running B1example in single threaded mode).

Thanks Vladimir for the explanation!