In the EM-LowE Twiki (https://twiki.cern.ch/twiki/bin/view/Geant4/LoweAtomicDeexcitation), the command to set atomic de-excitation processes by region is reported to be available before /run/initialize (i.e., after the EMPhysics constructor has been instantiated). In the App Guide, this command is only available _after_ /run/initialize. The latter turns out to be true, but only because G4LossTableManager::Instance() doesn't get called until the end of EMPhysics(whatever)::ConstructProcess(). This makes it awkward to encapsulate the full configuration of a G4Region at the point where it gets created (such as in the geometry builder). Would it be possible to move that instantiation up to the EMPhysics ctor? Or does G4LossTableManager require other things to exist before it is created?
Hi Mike, before 10.2 it was a strong requirement to apply any de-excitation UI command after "/run/initilize". If in some manual for 10.1 and early releases there is sometning opposite - it is a bug. For 10.2 this is not anymore a requirement. The only constrain: EM physics constructor should be instantiated before any EM UI command. It is the case for all reference PhysList and all PhysLists of EM examples. In 10.2 we recommend to define EM options before "/run/initialize", simply because by that we avoid double initialisation: in many cases a change of a EM parameters (not necessary de-excitation command) require re-initiliasation. So, for 10.2 this bug report means that ADM should be checked. Is it correct? I do not see any further need improving EM initialisation logic in general. If concerns to details we , of course, can do. Vladimir
For 10.3 this question is not any more actual. Documentation also is updated.