The FLUKA package for LINUX and UNIX platforms is distributed as a tar file
which can be downloaded from the FLUKA Website www.fluka.org.
The release of the FLUKA source code will be available under the licence
reported at the beginning of this volume. For most applications we distribute a
package containing a compiled library, user routines in source form, INCLUDE
files, various unformatted and formatted data files and a number of scripts for
compiling, linking and running the program on a given platform.
A list of the contents is provided in a README file, and information on the
current version, possibly overriding parts of the present manual, may be
contained in a file RELEASE-NOTES.
No external library routines are required. The timing and other necessary
service routines are already included.
In principle, FLUKA can be installed on any computer platform where a Fortran
compiler is available. However, at present only the following are supported
(see the FLUKA website http://www.fluka.org for more information).
- Hewlett-Packard 9000 Series 700/800 running HP-UX
- Sun running SunOS
- DEC computers running Digital UNIX > 4.0
- Intel PCs running LINUX:
RedHat 7.3 (compiler gcc-2.96)
RedHat 9.0 (compiler gcc-3.2.2)
Fedora
It is suggested that the user define an environmental variable FLUPRO pointing
to the directory where the distribution tar file has been opened. The FLUKA
libraries and most data files will be located in $FLUPRO, the INCLUDE files in
$FLUPRO/flukapro/, the default user routines in $FLUPRO/usermvax/, compilation
and linking scripts (as well as several postprocessing programs to analyse user
scores) in $FLUPRO/flutil/.
If the source code is included in the distribution, it will be contained in
$FLUPRO files with names of the form ...mvax.for.
The basic FLUKA program on UNIX machines consists of 29 files (*):
bamjmvax.for blockmvax.for comlatmvax.for decaymvax.for dedxmvax.for
dumvax.for elsmvax.for emfmvax.for eventqmvax.for eventvmvax.for
evffrmvax.for fluoxmvax.for geolatmvax.for kaskadmvax.for lowneumvax.for
mainmvax.for mathmvax.for neutrimvax.for noptmvax.for opphmvax.for
outputmvax.for pemfmvax.for pgmvax.for preclmvax.for preeqmvax.for
pripromvax.for rndmvax.for usermvax.for XXXmvax.for (**)
Two more files contain source code related to the DPMJET and RQMD packages,
which can be linked with FLUKA to run problems involving heavy ion nuclear
interactions:
dpmmvax rqmdmvax
(*) The form ...vax.for has historical reasons. Actually, as seen later, the
files are automatically split by a Makefile into single routines (with
extension .f) before compilation.
(**) XXX stands for hp, ibm, linux, osf etc. depending on the platform.
Most UNIX Fortran compilers require that the extension .for be replaced by
.f (but the Makefile provided with FLUKA takes care of this, see below).
See 4} for a short description of the content of these files.
If the source code is present, the INCLUDE files needed to compile the program
may be grouped into three files emfadd.add, flukaadd.add and lowneuadd.add.
A Makefile and a number of auxiliary programs split these files into individual
routines and INCLUDE files, which are placed in 29+1 separate directories and
compiled. The object files are inserted in a FLUKA library libflukahp.a.
A shell script lfluka links all routines into an executable flukahp (the name
is the same for all UNIX platforms, the "hp" being due to historical reasons).
The DPMJET and RQMD object files are collected in two separate libraries.
The FLUKA distribution tar file normally does not contain an executable file.
To create the default FLUKA executable, type:
$FLUPRO/flutil/lfluka -m fluka
(the name of the resulting executable will be flukahp)
or, if heavy ion nuclear interactions are needed:
$FLUPRO/flutil/ldpmqmd
(the name of the resulting executable will be flukadpm)
User-written routines (in particular a SOURCE subroutine, see list of user
interface routines in 13}) can be compiled separately and linked overriding
the default routines of the library. The $FLUPRO/flutil/lfluka script can
take care of them in three different ways:
a) appending the Fortran files (xxx.f) as last arguments to the
lfluka procedure (Linux only);
b) appending the object files (precompiled using the $FLUPRO/flutil/fff
procedure supplied with the code) as last arguments to the lfluka
procedure;
c) inserting the object files into a library and giving the library
name to the script with the -O or -l options.
An on-line help is available issuing lfluka -h .
The program may need up to 12 auxiliary data files, containing cross-sections,
nuclear and atomic data and so on. Nine of these files are unformatted
and have an extension .bin (or .dat).
The nine unformatted files and three of the remaining auxiliary files require
no modification by the user.
They are generally kept in the main FLUKA directory.
Here is the list:
cohff.bin
Coherent atomic form factors
fluodt.dat
Fluorescence emission data, needed for problems involving
low-energy electron-photon transport
gxsect.bin
Photon cross-sections
neuxsc_72.bin
Low-energy neutron cross-sections: needed for all problems with
neutron transport below 20 MeV.
nuclear.bin
Nuclide masses, abundances and other data: needed for all
hadronic problems
elasct.bin
Elastic cross sections for hadronic problems
sigmapi.bin
Pion cross sections
brems_fin.bin
Bremsstrahlung cross sections
e6r1nds3.fyi, jef2.fyi, jendl3.fyi, xnloan.dat
Fission nuclide yields and neutron multiplicities