Interaction of proton beam with thin boron targets - which IONTRANS should I use?

Dear FLUKA experts,

I’m a FLUKA beginner and after I performed few preliminary simulations of proton beam (maximum energy 5MeV, minimum single keVs with custom, imported proton energy spectrum) a few questions arose:

  1. Assuming targets with thickness of tens of micrometers, is it reasonable to activate LAM-BIAS card? If so, should I aim to decrease inelastic scattering length to the level of the target itself? I’d be glad for some guidance with this one.
  2. If I’m interested in measuring number of alphas produced during interaction, is 4-Helium IONTRANS card just fine, or using full transport is required to obtain accurate results?
  3. Are any other Physics or Transport cards required to perform a meaningful, actually physical simulation?
  4. I am using USRTRCK to count number of alphas exiting the boron target to void sphere with Type: I1,LinE,LinΩ. To convert it to number of alpha particles, I am graphing with DX*Y plot for Y values and then multiply it with the number of primaries used. Is it correct calculation of total number of alphas from differential alpha particle flux which USRTRCK provides?
  5. I’m worried about cross-sections of p+B reaction. According to one of the topics I found on forum (from 2020) it seems like the 675keV protons won’t undergo any nuclear reactions with boron target. Did anything change in this matter and is there any way to include such reactions in my simulation?

Below you can find a *.inp file for simulations I performed.
preliminary.inp (2.0 KB)

Thanks in advance,

Best regards,

Hello @przemyslaw.tch,

Welcome to the FLUKA forum!
Let’s try to tackle your questions:

  1. This looks reasonable to me as a starting point. Then it will depend on whether or not this is enough to provide you with the statistics you need in the results.

  2. That would be enough, although in your case there is no real harm in activation full transport for all ions since most probably the simulation time spent in other ions is not significant. Nonetheless, it is up to you to try and judge.

  3. Please mind the transport thresholds for the different particle types. Note that the PRECISIOn defaults set it at 100 keV for most particles. Reduce it in case you are interested in lower energies. See PART-THR in particular, and this lecture for a deeper insight.

  4. You are mixing things up here. You cannot select I1, LinE, LinΩ for USRTRACK, you can do so only for USRBDX. The later can provide flux (fluence in fact) or current. You are asking for one-way current since you chose I1.
    Details on the units are provided in the USRBDX entry of the manual.
    In particular, the results you obtained (current!) can be multiplied by the energy bin width (DE) and the total number of primaries (Npr) to get number of alphas per energy bin and per cm2, since you provided an Area (A) in the scoring card. If you want the total number of alphas (Na) then you also need to multiply your results by the area of your scoring (A) and add up the results for all energy bins. Na=A.Npr.Sum(DE.Ii)
    Note that in the upper part of the *_sum.lis file of results you have the total response per primary particle and per cm2, which is Sum(DE.Ii).

  5. It is my understanding that nothing has changed in this regard.
    An improvement of the situation is under consideration for future releases but the time scale is so far unknown.

Many thanks to @cesc for the offline discussion.

Hope this helps.

Kind regards,

1 Like

Dear Francisco,

Thanks for your comments!

According to section 4. of my question:

You are totally right, I mixed up USRTRCK with USRBDX. I am also using USRBDX card to score alphas from detectors placed in front and behind the boron target. The difference is, in addition to procedure you mentioned I was also multiplying the results by 2pi (to get value for full sollid angle, since in my input I used one angular bin). Is this correct approach or should I remove the 2pi factor?
Here’s my USRBDX card:

Also, just to make sure - my USRTRCK results are just multiplied by number of primaries used - is it correct approach to calculate the total alpha particles in VOID region around the target? This is my USRTRCK card:

Thanks in advance for your answers!

Best regards,

Hello @przemyslaw.tch,

Assuming you processed your results using Flair (which uses the utility program USXSUW), then remove the 2pi. As mentioned in Note 2 of the USRBDX entry of the manual, it has already been taken into account.

Regarding USRTRACK, note that it returns fluence! Calculated by means of the tracklength of alphas inside your region of interest. This is not equal to current. If you multiply its results by the total number of primaries you will simply obtain the differential fluence of alphas in your region for a given number of protons (your number of primary particles). Please take a look to this lecture on scoring, I think it will help.

Kind regards,

I’d like to stress @fogallar 's point about fluence, which as he pointed out is not current, i.e. number of particles. The latter may be meaningfully scored on a surface, but not in a region. The concept of number of particles inside a volume is ill, since a particle traversing the volume cannot be counted as a particle produced in the middle of the volume and immediately absorbed. That’s why USRTRACK provides only fluence, weighing particles by their tracklength.

Ok, I was following the logic from the post I found under this link

So If I want to score the number of alpha particles it would be better to score USRBDX from the void region around the target instead of USRTRCK? Like this, but setting right area of void sphere?

thanks in advance!

Hi @przemyslaw.tch,

First you need to think carefully whether you really are interested in number of alphas (current) or fluence (note that usually is the latter).
Let’s assume you really are interested in number of alphas. Then, as highlighted by @ceruttif, this quantity only make sense to be scored at boundaries. Are you interested in the current at the boundary between reg TARGET and reg VOID? If so your card is correct, otherwise it is not.
Regarding the area, note that it should be the one of the boundary! Why would you specify the area of the void sphere? Also, think whether you really want to provide an area at all. If you don’t, you will simply get the total current (part) and, if you want, you can later normalize using the area to get part/cm2.

Kind regards,

Dear Francisco,

I tried to follow your and @ceruttif instructions and run a simulation again.

Zrzut ekranu z 2023-02-14 14-18-45

Using these cards, I hoped to obtain total number of alpha particles exiting the boron target (so entering the void around the target).
I did not specify area in case of USRBDX and I left Volume as Default in USRTRCK card.


The shape I obtained in both cases - USRTRCK and USRBDX - is exactly the same, however I have troubles understanding the values of Y axis.

In both cases I’ve used DX*Y type of plot and multiplied the Y value by number of primaries. It looks like the only difference is the order of magnitude, seemingly x10^4. I guess I finally figured out the difference between current and fluence as it is understood in FLUKA community, so now I hope to reproduce the USRTRCK results with USRBDX with Φ1,LinE,LinΩ type. Just to make sure I understand it just right - judging from plots I obtained, there are roughly 5x10^6 alpha particles with energy of ~4 MeV produced during p+B interaction - is that the correct statement?

Thank both of you for invaluable help,


Hi @przemyslaw.tch,

Few things:

  • You selected a I1 USRBDX, hence you obtain current [#part]. At the same time, USRTRACK gives tracklength [cm]. Therefore you are trying to compare two different quantities → no match to be expected.

  • If you want to obtain the number of alphas, stick to current (I1 USRBDX). As it is defined in your card, it will give you the number of alphas crossing the boundary from the TARGET region to the VOID region.

  • You mention Φ1,LinE,LinΩ, but your card USRBDX card is I1,LinE,LinΩ. I guess it was a typo, but they are not the same thing.

there are roughly 5x10^6 alpha particles with energy of ~4 MeV produced during p+B interaction - is that the correct statement?

No. Let us forget about the USRTRACK results, that gives your tracklength, that can be used to estimate fluence, but not number of particles.
Focusing then on the results of USRBDX, assuming it was I1 and that you multiplied the FLUKA result by a number of primaries Np (and DX). Your statement should read “there are roughly 500 alpha particles with energy ~4 MeV produced leaving my target during p+B interaction for Np primary particles

  • The number of alphas will clearly depend on the number of primaries you consider, if you double the primaries, you will double the alphas. That’s why FLUKA gives results per primary particle.

  • You did not score the number of alphas produced during p+B interaction. You scored the number of alphas leaving your target per primary particle. Both things are not the same. One of the differences is that, some of your protons did not interact, therefore not producing any alphas but yet being taking into account to produce the #alphas/primary result.

At best, if you can rule out alphas from other interactions and you can rule out alphas being absorbed in your target, you could say that “There are roughly 500 alpha particles with energy of ~4 MeV produced in p+B interactionS for Np primary particles

The lectures of the last beginners course can be found here in case you want to take a look: 2022 FLUKA.CERN course - Brussels (16-20 May 2022): Timetable · Indico

Kind regards,

Hey @fogallar!

Thank you for this elaboration, it helped alot!

Best regards,

1 Like

Hello Przemysław,

As @fogallar implicitly anticipated, the freshly released FLUKA v4-3.2 now performs nuclear reactions for p on B at the energies you mentioned.

With kind regards,


1 Like