Last version:
FLUKA 2024.1.0, April 30th 2024
(last respin 2024.1.0)
flair-2.3-0e 06-May-2024


-- New Fluka Major Release
( 06.05.2024 )

FLUKA 2024.1.0 is available.
Flair-2.3-0epy3 adapted

font_small font_med font_big print_ascii

[ <--- prev -- ]  [ HOME ]  [ -- next ---> ]

[ full index ]

1 A quick look at FLUKA's physics, structure and capabilities

Only a very short summary will be given here of the capabilities and the limitations of FLUKA, since this is meant to be mainly a practical guide. More detailed descriptions of the physical models, algorithms and techniques will be found in cited references and hopefully in a future more comprehensive Reference Manual.

1.1 Physics

1.1.1 Hadron inelastic nuclear interactions

The FLUKA hadron-nucleon interaction models are based on resonance production and decay below a few GeV, and on the Dual Parton model above. Two models are used also in hadron-nucleus interactions. At momenta below 3--5 GeV/c the PEANUT package includes a very detailed Generalised Intra-Nuclear Cascade (GINC) and a preequilibrium stage, while at high energies the Gribov-Glauber multiple collision mechanism is included in a less refined GINC. Both modules are followed by equilibrium processes: evaporation, fission, Fermi break-up, gamma deexcitation. FLUKA can also simulate photonuclear interactions (described by Vector Meson Dominance, Delta Resonance, Quasi-Deuteron and Giant Dipole Resonance). A schematic outline is presented below:

  • Inelastic cross sections for hadron-hadron interactions are represented by parameterised fits based on available experimental data [PDG].
  • For hadron-nucleus interactions, a mixture of tabulated data and parameterised fits is used [Bar72,Moh83,She91,Pra98,Pra98a].
  • Elastic and charge exchange reactions are described by phase-shift analyses and eikonal approximation.
  • Inelastic hadron-hadron interactions are simulated by different event generators, depending on energy:
  • Momentum < 20 TeV and > 5 GeV/c:
    Dual Parton Model (DPM) [Cap94]. The version used in FLUKA has been derived by A. Ferrari and P.R. Sala [Fer94,Fas95,Fer95,Fer96b] from the original version by J. Ranft and collaborators [Ran83,Ran83a]. A description of modifications and improvements can be found in [Fer96b,Col00]
  • Momentum from threshold to 5 GeV/c:
    Resonance production and decay model [Fer96b] (Improved version of the Hänssgen et al. model [Han79,Han80,Han84,Han84a,Han84b,Han86,Han86a])
  • Inelastic hadron-nucleus interactions are simulated by different event generators depending on energy and projectile:
  • Momentum < 20 TeV and > 5 GeV/c: Glauber-Gribov multiple scattering followed by Generalized Intranuclear Cascade (GINC)
  • Below 5 GeV/c for nucleons, anti-nucleons and pions; below 1.5 GeV kinetic for kaons:
    Preequilibrium-cascade model PEANUT (Ferrari-Sala) [Fer94,Fas95]
  • In between PEANUT and DPM for kaons: K. Hänssgen et al. GINC modified to take into account correlations among cascade particles and more refined nuclear effects (Ferrari-Sala).

  • All three models include evaporation and gamma deexcitation of the residual nucleus [Fer96,Fer96a]. Light residual nuclei are not evaporated but fragmented into a maximum of 6 bodies, according to a Fermi break-up model.
  • Treatment of antiparticle capture: antinucleons according to resonance model,
    pi-minus, K-minus and mu-minus by the preequilibrium-cascade model.

1.1.2 Elastic Scattering

  • Parameterised nucleon-nucleon cross sections.
  • Tabulated nucleon-nucleus cross sections [Pra98,Pra98a].
  • Tabulated phase shift data for pion-proton and phase-shift analysis for kaon-proton scattering.
  • Detailed kinematics of elastic scattering on hydrogen nuclei and transport of proton recoils (Ferrari-Sala)

1.1.3 Nucleus-Nucleus interactions

Nuclear interactions generated by ions are treated through interfaces to external event generators.

  • Above 5 GeV per nucleon: DPMJET-II or DPMJET-III [Roe01], with special initialisation procedure.
  • Between 0.1 and 5 GeV per nucleon: modified RQMD (Relativistic Quantum Molecular Dynamics) [Sor89,Sor89a,Sor95]
  • Below 0.1 GeV per nucleon: BME (Boltzmann Master Equation) [Cav96,Cav01, Cer06]

1.1.4 Transport of charged hadrons and muons

An original treatment of multiple Coulomb scattering and of ionisation fluctuations allows the code to handle accurately some challenging problems such as electron backscattering and energy deposition in thin layers even in the few keV energy range.

1.1.5 Energy loss

  • Bethe-Bloch theory [Bet30,Bet32,Bet34,Blo33,Blo33a]. Barkas Z^3 effect [Bar56,Bar63] and Bloch Z^4 effect [Blo33]. Mott correction to the Rutherford scattering cross section [Mot29,Ins09]. Improved ionisation potential, handling of porous substances, ranging out particles below energy cutoff [Fas97].
  • Optional delta-ray production and transport with account for spin effects and ionisation fluctuations.
    The present version includes a special treatment [Fas97a] which combines delta-ray production with properly restricted ionisation fluctuations and includes corrections for particle spin and electrons/positrons and "distant collision" straggling corrections (similar to Blunck-Leisegang ones).
    Original approach making use of very general statistical properties of the problem. Within this framework "practical" solutions have been implemented into the code with very satisfactory results. This approach exploits the properties of the cumulants of distributions, and in particular of the cumulants of the distribution of Poisson distributed variables.
  • Shell and other low-energy corrections derived from Ziegler [Zie77]
  • Ionisation potentials and density effect parameters according to Sternheimer, Berger and Seltzer [Ste84].
  • Non-ionising energy losses (NIEL) [Sum95,Ins09]
  • Displacements Per Atom (DPAs) [Fas10]
  • Special transport algorithm, based on Molière's theory of multiple Coulomb scattering improved by Bethe [Mol48,Mol55,Bet53], with account of several correlations:
  • between lateral and longitudinal displacement and the deflection angle
  • between projected angles
  • between projected step length and total deflection
  • Accurate treatment of boundaries and curved trajectories in magnetic and electric fields
  • Automatic control of the step
  • Path length correction
  • Spin-relativistic effects at the level of the second Born approximation [Fer91a]
  • Nuclear size effects (scattering suppression) on option (simple nuclear charge form factors are implemented, more sophisticated ones can be supplied by the user)
  • Fano correction for heavy charged particle multiple scattering.
  • Single scattering: algorithm based on the Rutherford formula with a screening factor in the form used by Molière (for consistency with the multiple scattering model used by FLUKA), integrated analytically without any approximation. Nuclear form factors and spin-relativistic corrections at the first or second Born approximation level accounted for by a rejection technique.
  • Correction for cross section variation with energy over the step.
  • Bremsstrahlung and electron pair production at high energy by heavy charged particles, treated as a continuous energy loss and deposition or as discrete processes depending on user choice
  • Muon photonuclear interactions, with or without transport of the produced secondaries.

1.1.6 Low-energy neutrons

For neutrons with energy lower than 20 MeV, FLUKA uses its own neutron cross section library (P5 Legendre angular expansion, 260 neutron energy groups), containing more than 250 different materials, selected for their interest in physics, dosimetry and accelerator engineering and derived from the most recently evaluated data.

  • multigroup P5 cross sections with 260 groups [Cuc91]
  • Gamma-ray generation and different temperatures available.
  • Doppler broadening for temperatures above 0 K.
  • Standard multigroup transport with photon and fission neutron generation.
  • Detailed kinematics of elastic scattering on hydrogen nuclei.
  • Transport of proton recoils and protons from 14-N(n,p)14-C reaction.
  • Capture photons are generated according to the multigroup treatment,
    but transported with the more accurate EMF package which performs continuous transport in energy and allows for secondary electron generation.

For nuclei other than hydrogen, kerma factors are used to calculate energy deposition (including from low-energy fission). For details about the available materials, group structure etc., see (10)

1.1.7 Electrons

  • FLUKA uses an original transport algorithm for charged particles [Fer91a], including complete multiple Coulomb scattering treatment giving the correct lateral displacement even near a boundary (see hadron and muon transport above).
  • The variations with energy of the discrete event cross sections and of the continuous energy loss in each transport step are taken into account exactly.
  • Differences between positrons and electrons are taken into account concerning both stopping power and bremsstrahlung [Kim86].
  • The bremsstrahlung differential cross sections of Seltzer and Berger [Sel85,Sel86] have been extended to include the finite value at "tip" energy, and the angular distribution of bremsstrahlung photons is sampled accurately.
  • The Landau-Pomeranchuk-Migdal suppression effect [Lan53,Lan53a,Mig56,Mig57] and the Ter-Mikaelyan polarisation effect in the soft part of the bremsstrahlung spectrum [Ter54] are also implemented.
  • Electrohadron production (only above rho mass energy 770 MeV)
    via virtual photon spectrum and Vector Meson Dominance Model [Moh89]. (The treatment of the latter effect has not been checked with the latest versions, however).
  • Positron annihilation in flight and at rest
  • Delta-ray production via Bhabha and M\oller scattering.

  Note: the present lowest transport limit for electrons is
  1 keV. Although in high-Z materials the Molière multiple scattering
  model becomes unreliable below 20-30 keV, a single-scattering option
  is available which allows to obtain satisfactory results in any
  material also in this low energy range.

The minimum recommended energy for PRIMARY electrons is about 50 to 100 keV for low-Z materials and 100-200 keV for heavy materials, unless the single scattering algorithm is used. Single scattering transport allows to overcome most of the limitations at low energy for the heaviest materials at the price of some increase in CPU time.

1.1.8 Photons

  • Pair production with actual angular distribution of electrons and positrons.
  • Landau-Pomeranchuk-Migdal pair production suppression effect [Lan53,Lan53a,Mig56,Mig57]
  • Compton effect with Doppler broadening using a fit of the Compton profiles [Rib75,Big75], and account for atomic bonds through use of inelastic Hartree-Fock form factors.
  • Photoelectric effect with actual photoelectron angular distribution according to the fully relativistic theory of Sauter [Sau31].
    Interactions sampled separately for each component element and for each edge. The edge fine structure is taken into account.
    Parameterisations/tabulations for photoelectric cross sections including all known edges up to Z=100 and down to a few eV.
    Optional emission of fluorescence photons and approximate treatment of Auger electrons for all K and most L lines.
  • Rayleigh effect.
  • Photon polarisation taken into account for Compton, Rayleigh and Photoelectric effects.
  • Photohadron production:
  • Vector Meson Dominance Model (Ranft [Ran87b]), modified and improved (Ferrari-Sala) using PEANUT below 770 MeV [Fas95].
  • Quasideuteron interactions
  • Giant Dipole Resonance

  Note: the present lowest transport limit for photons is 1 keV.
  However, fluorescence emission may be underestimated at
  energies lower than the K-edge in high-Z materials, because of
  lack of Coster-Kronig effect.
  The mimimum recommended energy for PRIMARY photons is about
  5 to 10 keV.

1.1.9 Optical photons

  • Generation and transport (on user's request) of Cherenkov,
    Scintillation and Transition Radiation.
  • Transport of light of given wavelength in materials with user-defined optical properties.

1.1.10 Neutrinos

  • Electron and muon (anti)neutrinos are produced and tracked on option, without interactions
  • Neutrino interactions however are implemented, but independently from tracking.

1.2 Geometry

A part of the code where efficiency, accuracy, consistency and flexibility have combined giving very effective results is the FLUKA geometry. Derived from the Combinatorial Geometry package, it has been entirely rewritten. A completely new, fast tracking strategy has been developed, with special attention to charged particle transport, especially in magnetic fields. New bodies have been introduced, resulting in increased rounding accuracy, speed and even easier input preparation.

  • Combinatorial Geometry (CG) from MORSE [Emm75], with additional bodies (infinite circular and elliptical cylinder parallel to X,Y,Z axis, generic plane, planes perpendicular to the axes, generic quadrics).
  • Possibility to use body and region names instead of numbers.
  • Possibility of using body combinations inside nested parentheses.
  • Geometry directives for body expansions and roto-translation transformations.
  • Distance to nearest boundary taken into account for improved performance.
  • Accurate treatment of boundary crossing with multiple scattering and magnetic or electric fields.
  • The maximum number of regions (without recompiling the code) is 10000.
  • The tracking strategy has been substantially changed with respect to the original CG package. Speed has been improved and interplay with charged particle transport (multiple scattering, magnetic and electric field transport) has been properly set.
  • A limited repetition capability (lattice capability) is available. This allows to avoid describing repetitive structures in all details.
    Only one single module has to be described and then can be repeated as many times as needed. This repetition does not occur at input stage but is hard-wired into the geometry package, namely repeated regions are not set up in memory, but the given symmetry is exploited at tracking time using the minimum amount of bodies/regions required. This allows in principle to describe geometries with even tens of thousands regions (e.g.
    spaghetti calorimeters) with a reasonable number of region and body definitions.
  • Voxel geometry is available on option, completely integrated into CG.

Special options:

  • Geometry debugger
  • Plotting of selected sections of the geometry, based on the Ispra PLOTGEOM program
  • Pseudoparticle RAY to scan the geometry in a given direction.

1.3 Transport

  • Condensed history tracking for charged particles, with single scattering option.
  • Time cutoff.
  • Legendre angular expansion for low-energy neutron scattering.
  • Transport of charged particles in magnetic and electric fields.

Transport limits:

                   Secondary particles      Primary particles
   charged hadrons    1 keV-20 TeV (*)       100 keV-20 TeV (*) (**)
   neutrons         thermal-20 TeV (*)       thermal-20 TeV (*)
   antineutrons       1 keV-20 TeV (*)        10 MeV-20 TeV (*)
   muons              1 keV-1000 TeV         100 keV-1000 TeV (**)
   electrons          1 keV-1000 TeV          70 keV-1000 TeV (low-Z materials) (**)
                                             150 keV-1000 TeV (high-Z materials) (**)
   photons            100 eV-1000 TeV           1 keV-10000 TeV
   heavy ions              <10000 TeV/n             <10000 TeV/n
   (*) upper limit 10 PeV with the DPMJET interface
   (**) lower limit 10 keV in single scattering mode

1.4 Biasing

  • Leading particle biasing for electrons and photons: region dependent,
    below user-defined energy threshold and for selected physical effects.
  • Russian Roulette and splitting at boundary crossing based on region relative importance.
  • Region-dependent multiplicity tuning in high energy nuclear interactions.
  • Region-dependent biased downscattering and non-analogue absorption of low-energy neutrons.
  • Biased decay length for increased daughter production.
  • Biased inelastic nuclear int\index{importance!biasing!user defined}eraction length.
  • Biased interaction lengths for electron and photon electromagnetic interactions.
  • Biased angular distribution of decay secondary particles.
  • Region-dependent weight window in three energy ranges (and energy group dependent for low energy neutrons).
  • Bias setting according to a user-defined logics
  • User-defined neutrino direction biasing
  • User-defined step by step importance biasing

1.5 Optimisation

  • Optimisation of the step length, user-defined or automatic, by material and/or by region.

1.6 Scoring

  • Star density by producing particle and region.
  • Energy density by region, total or from electrons/photons only.
  • Star, energy and momentum transfer density and specific activity in a geometry-independent binning structure (Cartesian or cylindrical),
    averaged over the run or event by event.
  • Energy deposition weighted by a quenching factor (Birks law).
  • Step size independent of bin size.
  • Time window.
  • Coincidences and anti-coincidences.
  • Fluence and current scoring as a function of energy and angle, via boundary-crossing, collision and track-length estimators coincident with regions or region boundaries.
  • Dose Equivalent via boundary-crossing, collision and track-length estimators coincident with regions or region boundaries, convoluted with conversion coefficients or obtained multiplying doses by a LET-dependent quality factor
  • Track-length fluence or Dose Equivalent in a binning structure (Cartesian or cylindrical) independent of geometry.
  • Particle yield from a target or differential cross section with respect to several different kinematic variables.
  • Residual nuclei.
  • Fission density.
  • Momentum transfer density.
  • Neutron balance.
  • No limit to the number of detectors and binnings within the total memory available (but a maximum number must be fixed at compilation time).
  • Energy deposition can be scored on option disregarding the particle weights (useful for studying computer performance, etc.)
  • All quantities from radioactive decay of residual nuclei can be scored according to user-defined irradiation and cooling time profiles.

1.7 Code structure, technical aspects

  • The whole program, including the numerical constants, is coded in double precision (at least the versions for 32-bit word machines). The only exceptions are the low-energy neutron cross sections, which are stored in single precision to save space.
  • Consistent use of the latest recommended set of the physical constant values [PDG].
  • Dynamic memory allocation is implemented as far as possible.
  • Extensive use of INCLUDE statements and of constant parameterisation
  • 64-bit random number generator [Mar04]


The history of FLUKA, spanning more than 40 years, is narrated in detail in (17). It is possible to distinguish three different generation of "FLUKA" codes along the years, which can be roughly identified as the FLUKA of the '70s (main authors J. Ranft and J. Routti), the FLUKA of the '80s (P. Aarnio, A. Fassò, H.-J. Möhring, J. Ranft, G.R. Stevenson), and the FLUKA of today (A. Fassò, A. Ferrari, J. Ranft and P.R. Sala).

These codes stem from the same root and of course every new "generation" originated from the previous one. However, each new "generation" represented not only an improvement of the existing program, but rather a quantum jump in the code physics, design and goals. The same name "FLUKA" has been preserved as a reminder of this historical development - mainly as a homage to J. Ranft who has been involved in it as an author and mentor from the beginning until the present days - but the present code is completely different from the versions which were released before 1990, and in particular from the last one of the second generation, FLUKA87 [Aar86,Aar87].

Major changes and additions have affected the physical models used, the code structure, the tracking strategy and scoring. Important additions, such as a wider range of biasing possibilities and some specialised tools for calorimeter simulation, have extended the field of its possible applications.

An exhaustive description of all these changes and new features along the years is reported in Chap. (17). However, the best gauge of the program evolution is probably the widening of the application fields, and the boost of its recognition and diffusion all over the world.

1.9 Applications

While FLUKA86-87 was essentially a specialised program to calculate shielding of high energy proton accelerators, the present version can be regarded as a general purpose tool for an extended range of applications. In addition to traditional target design and shielding, applications are now spanning from calorimetry to prediction of activation, radiation damage, isotope transmutation, dosimetry and detector studies.

Prediction of radiation damage has always been a traditional field of application of FLUKA, restricted however in earlier versions to hadron damage to accelerator components. The new capability to deal with the low-energy neutron component of the cascade has extended the field of interest to include electronics and other sensitive detector parts. In addition, radiation damage calculations and shielding design are not limited to proton accelerators any longer, but include electron accelerators of any energy, photon factories, and any kind of radiation source, be it artificial or natural.

The present version of FLUKA has been used successfully in such diverse domains as background studies for underground detectors, cosmic ray physics, shielding of synchrotron radiation hutches, calculation of dose received by aircraft crews, evaluation of organ dose in a phantom due to external radiation, detector design for radiation protection as well as for high energy physics, electron, proton and heavy ion radiotherapy, nuclear transmutation, neutrino physics, shielding of free-electron lasers, calculation of tritium production at electron accelerators, energy amplifiers, maze design for medical accelerators, etc.

© FLUKA Team 2000–2024

Informativa cookies