Calculation of absorbed dose for gamma rays and fast neutrons in a fixed energy range

Dear teachers, I have some questions about calculating the absorbed dose of fast neutrons and gamma rays.

  1. Using USRBIN and AUXSCORE cards to associate the absorbed dose of gamma rays, it is strange that when I use the AUXSCORE card to specify PHOTON(as shown in the figure), I cannot draw a graph.

  2. I need to obtain the absorbed dose of fast neutrons within a certain range, and an error occurred when associating USRTRACK with the AUXSCORE card. May I ask the teachers, what other methods can I use to measure the absorbed dose of fast neutrons within a certain range?

Attach my documents.
d13.flair (2.6 KB)
cd-1_14.inp (8.2 KB)
jj1_source.txt (250.6 KB)
wj_source_ng1.f (18.9 KB)

Dear David,

thanks a lot for your question, we are looking into it as quickly as possible.


Dear David,

To give you a satisfying answer to your question we would like to point out a preliminary consideration: in reality, all energy deposition is performed by electrons. It is always important to keep this in mind, when working with artificial filtering methods like the AUXSCORE card. In fact, with the latter, the energy deposition is attributed to the particle undergoing an interaction (e.g., a neutron or a photon) if the products of the latter - which are the ones actually responsible for the energy deposition, through the generation of secondary electrons by ionization - fall below the simulation thresholds and are not explicitly tracked. Therefore, as stated in the following slides, the amount of energy distribution that is attributed to the selected particle type depends on the simulation thresholds (EMFCUT for example). If you do not set them explicitly, the code takes the default transport values (have a look under PRECISIon) into account. So depending on the chosen thresholds, you will obtain more or less energy deposition by your selected particle type. This is really well explained in the slides of the Advanced FLUKA Course.

Then, technically speaking, if you want to filter the (absorbed) dose for photons, the Set field is irrelevant, as this is only required for dose equivalent scoring. So in your case, you can ignore this entry. In this regard, I don’t manage to reproduce your error. Even with a low number of primaries I achieve enough data to produce a plot. If your problem persists, please let us know, what error message you get.

Regarding your second question: 1) For obtaining dose values, using the USRTRACK does not work as it only provides you with a transported particle spectrum but not with the energy deposition. 2) A possible solution to achieve what you want, is to work with the user routine comscw.f, which is activated by the USERWEIGht card and allows you to implement a logic that excludes energy deposition outside your neutron energy range (but again: if the neutron reaction products are explicitly tracked, being above their transport threshold, the resulting energy deposition is attributed to them and not to the original neutron).

Kind regards,

1 Like

Dear @David !

  1. If you mean absorbed dose and not the ambient dose equivalent (as it is set in your AMB74 card), then in case of photons it is better to use Kerma, which is under charge particle equilibrium and neglect g radiative factor (so Kerma is a collision part only) is equal to absorbed dose:
D = \{\text{under CPE and}\ g \approx 0\} = K_\text{col}=\displaystyle\int_0^{E_\text{max}}[\Phi_E]_\text{med}\left[\frac{\mu_\text{en}(E)}{\rho}\right]_\text{med} E dE

g factor is almost 0 for photon energies \leq 300 keV photons. [\Phi_E]_\text{med} is the fluence spectrum in some medium and \left[\frac{\mu_\text{en}(E)}{\rho}\right]_\text{med} is the mass energy-absorption coefficient for medium, which depends on energy.
So, that means that you can score Kerma (which is absorbed dose if above conditions are met) using any track-length based fluence estimator. You only need to apply weighting factor f=\left[\frac{\mu_\text{en}(E)}{\rho}\right]_\text{med} E using function FLUSCW via user routine fluscw.f. The energy absorption coefficients available here, for example and the energy is accessible via routine.

  1. The almost similar procedure may be implied to neutrons, but in this case we need corresponding cross sections. But the thing is that neutrons are also ionizing matter not directly, but via secondary particles with charge, as @bhumann already pointed out. So, in both cases, whether photons or neutrons, it is pointless to operate with the absorbed dose.

Hope this helps!

Best wishes,


Dear @Ivan @bhumann
Thank you very much for your reply. I will carefully review and make improvements. Please let me explain my progress and related issues first.

  1. Using PRECISIO is the most accurate model. In this model, the particle transfer threshold is set to 100 keV, except for neutrons (1E-5 eV). The absorbed dose of photons can be calculated using USRBIN, but the absorbed dose of fast neutrons cannot be obtained. Is it due to the transmission threshold? If I want to count fast neutrons between 10keV-2MeV, do I need to modify the model in the DEFAULTS card.

  2. The absorbed dose of photons obtained through USRBIN is multiplied by 1.60217E-7 to convert into Gy, and then multiplied by the beam intensity to obtain the absorbed dose rate. Is the data obtained at the edge 61.4cm correct after transformation?

3.Under the condition of charged particle equilibrium, D=K. For fast neutrons, use the flux from USRTRACK for calculation, K=ΦE(μen/ρ) , Is this method feasible?

  1. If I use the comscw.f file, can I obtain the absorbed dose of neutrons in the energy range (10keV-2MeV)? Is the data obtained from primary neutrons or secondary products?

Neutron energy can be obtained in fluscw through the following code:


     IF (PLA. GT. 0) THE

         ENEPAR=SQRT (PLA * * 2+AM (IJ) * * 2) - AM (IJ)


     IF (IJ. EQ.8) THEN

         WRITE (*, '(A, I12F12.6)') "IJ1:", IJ, ENEPAR


But it seems that the above methods cannot calculate particle energy in comscw, IJ cannot obtain neutrons, Ntrack can. How to calculate particle energy in comscw.

Attached is my input file:
cd-1.flair (10.8 KB)
jj1_source.txt (250.6 KB)
wj_source_ng1.f (18.9 KB)

Hello David,

as we have explained beforehand, the main issue you face is that neutrons do not deposit any energy but it is the reaction products that depose the energy.

You can continue working with the DEFAULTS card set to PRECISIO due to how the underlying code is written. If you want to filter for the dose deposited by the neutrons, you should select HEAVYION in the AUXSCORE card. In this way you will score the dose originating from the heavy fragments of the nuclear reaction of the neutrons, which is what you are looking for. (N.B.: If you have a mixed environment, where you have several types of hadrons, for example also protons, this method does not work anymore, as you cannot be sure about the origin of the fragments. Then you would need to implement a routine again.)

If you approach your simulation in the way just mentioned, you will not need any additional routine.

Last but not least, it seems like your normalisation factor should be correct.