Skip to content

MT consistency fix for PassbackG4

PassbackG4 was not returning MT results consistent with those in single-threaded mode.

The problem seems to have come from the returning of secondary particles from the passback user action. Each (athenaMT slot-associated) TransportTool was caching a pointer to a (G4 thread-associated) user action. In some cases the TransportTool was then used in a different thread, and so the wrong user action was retrieved from the cache.

Fixed by caching each user action mapped to the index of the corresponding thread.

tagging @jchapman

Merge request reports