Message: Geant4 error propagation package in MT Frameworks Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Geant4 error propagation package in MT Frameworks 

Forum: Multithreading
Date: 06 Apr, 2014
From: Thomas Hauth <Thomas Hauth>

Dear Geant4 experts,

I am looking into possible ways to use the Geant4 error propagation package ( Geant4e ) in a multi-threaded reconstruction framework.

As of now, a lot of the state of the track propagation is held in global objects:

G4ErrorPropagatorData::GetErrorPropagatorData() provides access to a static variable, which holds various configuration options of the track propagation, for example the desired target surface.

Furthermore, G4ErrorPropagatorManager::GetErrorPropagatorManager() is used to access the static object which performs the actual propagation via multiple method calls. Please see the example code in [1] for a typical list of calls.

Usage of the G4 error propagation is made during the track reconstruction from within the experiment's framework. In a multi-threaded framework, multiple tracks are reconstrcted concurrenly which implies the G4 error propogation is also used in this manner. As far as I can tell, this seems not to be possible at the moment, due to the static variables involved.

What is the recommended recipe to use G4 error propogation in such an environment ?

Thanks, Thomas Hauth

[1] geant4.10.00.p01/examples/extended/errorpropagation/errprop.cc

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Idea: Re: Geant4 error propagation package in MT Frameworks   (Andrea Dotti - 18 Apr, 2014)
(_ None: Re: Geant4 error propagation package in MT Frameworks   (Thomas Hauth - 24 Apr, 2014)
(_ Idea: Re: Geant4 error propagation package in MT Frameworks   (Andrea Dotti - 29 Apr, 2014)
 Add Message Add Message
to: "Geant4 error propagation package in MT Frameworks"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews