If a low energy limit is applied to the PAI model in G4EmModelActivator::ActivatePAI() using: SetLowEnergyLimit(70*eV) the limit is applied to the World. However, if a region is set then this low energy limit is ignored and the PAI model is applied down to 0 (the model limit). In addition it is not clear that the PAI model should be applied to zero!
The following code works if added to G4EmModelActivator::ActivatePAI() at the end of the "for(itr = v.begin(); itr != v.end(); ++itr) {" loop: if(namep == "eIoni") { G4MollerBhabhaModel * mod = new G4MollerBhabhaModel(); G4UniversalFluctuation* uf = new G4UniversalFluctuation(); mod->SetLowEnergyLimit(0*eV); mod->SetHighEnergyLimit(70*eV); proc->AddEmModel(0, mod, uf, r); } else if(namep == "hIoni" || namep != "muIoni") { G4BraggModel * mod = new G4BraggModel(); G4UniversalFluctuation* uf = new G4UniversalFluctuation(); mod->SetLowEnergyLimit(0*eV); mod->SetHighEnergyLimit(70*eV); proc->AddEmModel(0, mod, uf, r); }
Hi Alex, the issue is fixed and the fix will be in the next reference tag. Vladimir