Geant4 state machine - return to pre-init from idle?

I’d like to return to pre-init from idle, in order to change some parameters between runs using the same macro file. Is that possible?

Which parameter do you want to change? Most parameters including production cuts are changeable at Idle state.


I want to register and unregister physics processes and change step limits. So that means changing physics lists and detector constructions, which I think I can’t do in idle. I can do what I need using separate macros and separate runs, but it would be nice if I could do it from a single macro in the same run.

I’m afraid physics list cannot be altered, but you definitely need to start a new program. Some physics models employed within registered physics processes (i.e. in EM physics) may be altered, and also, registered physics processes may be activated/inactivated.

Concerning about step limitation, as far as G4StepLimitter process is registered, you may change (or even set a new) G4UserLimit object to a logical volume at the Idle state.

Thank you. That’s excellent. I think it will suit my needs. I’ll give it a try.