Dose from gamma only transport

We have a simple gamma monoenergetic source incident on a multi-slab geometry. Our transport domain is from 1keV to 10MeV.

Our goal is to make a photon transport only, i.e. to order a local deposition of both electron and positron energies when these charged particles are produced. The dose is calculated by a meshscoring. All charged particles must deposit their energies locally and disappear.

StackingAction is not the solution because the energy deposit is not recovered.

We tried then

 G4double defaultCutValue_g = 1.0  * keV;
 G4double defaultCutValue_e = 2.0  * m;
 G4double defaultCutValue_p = 2.0  * m;

 SetCutValue(defaultCutValue_g, "gamma");
 SetCutValue(defaultCutValue_e, "e-");
 SetCutValue(defaultCutValue_p, "e+");

G4double lowLimit = 1.0 * keV;
G4double highLimit = 100.0 * MeV;

G4ProductionCutsTable::GetProductionCutsTable()->SetEnergyRange(lowLimit,
highLimit);

with

G4EmParameters::Instance()-> SetApplyCuts(true);

It works. It orders a local energy deposition to all electrons, no electron was transported except that the positrons resulting from pair production is unfortunately transported, undergo multiple scattering, bremsstrahlung and then end in annihilation. So we deduce that SetApplyCut is not applicable to positrons. We don’t want this to happen, so we set the ProductionCut above 511keV.

G4double lowLimit = 520.0 * keV;
G4double highLimit = 100.0 * MeV;

G4ProductionCutsTable::GetProductionCutsTable()->SetEnergyRange(lowLimit,
highLimit);

And it works very well, the positron is no longer transported, the positron seems depositing its energy locally and it disappears as desired.

The problem with this last addition is that the fluoresence is also lost.

I wonder how can we kill the positron in a way other than the solution presented here, i.e. without losing fluoresence.

Thank you for your time and help.