Dear Dennis, all, there is a pretty severe bug in https://geant4.kek.jp/lxr/source/processes/hadronic/models/cascade/cascade/src/G4TwoBodyAngularDist.cc#L166 where for the charge exchange reaction of pi+ neutron to pi0 proton the final state is wrongly checked to be pi0 pi+. The L166 in G4TwoBodyAngularDist.cc currently reads: if ((is == pim*pro && fs == pi0*neu) || (is == pip*neu && fs == pi0*pip) || but should instead read: if ((is == pim*pro && fs == pi0*neu) || (is == pip*neu && fs == pi0*pro) || note the last 2 characters before the final closing bracket. I don't know how severe this actually is - but most likely all pi+ neutron charge exchange reactions are simply ignored currently ... Cheers, --Sven
Dear Sven, thank you very much also for this: it has been already integrated in the Geant4 repository! Cheers, Alberto