3.2 Linux

Linux: The programs in the distribution have been compiled under Red Hat Enterprise Linux using the GNU compilers gcc and gfortran. It is recommended to recompile the programs, since otherwise the programs might not run on your Linux distribution. In the Redhat distribution of Linux the Fortran compiler is not part of the standard distribution, it has to be installed (see your Linux manual for instructions). THE USER ACCOUNT MUST BE SET UP TO USE csh, tcsh (use SEISAN.csh) or bash (use SEISAN.bash), in order for the SEISAN scripts to work. Note that in the following SEISAN.csh stands for both SEISAN.csh and SEISAN.bash. Otherwise the scripts need to be adopted to the shell used.


The first step is to install the distribution, the procedure is the same for all Unix platforms.

1. Get tar.gz file

Copy the distribution file for your platform through FTP or from the web site to the SEISAN top directory, this could be a directory seismo under the home directory.

2. Decompress

gunzip seisan_version_system.tar.gz

There should now be the uncompressed file in your directory (without .gz).

3. Install SEISAN

tar xvf seisan_version_system.tar

Check that the SEISAN directories have been created.

If SEISAN has been installed without executable files, they can all be generated with the command `make all' from the PRO directory. On Linux/MacOSX it requires the GNU Fortran compiler gfortran. See also section on compilation (3.11).

4. Regenreate the IASP travel time tables

On at 64 bit computer the IASP files in DAT must be regenerated if you have the files from a 32 bit computer, with the programs REMODL and SETBRN otherwise HYP will crash. First run REMODL, then SETBRN. The program do not require any input.

5. Set system parameters

If you are doing an update, some of the following settings can be skipped.

Activate SEISAN:
csh/tcsh shell :
In your .cshrc file, the aliases and paths used by SEISAN are defined by adding the line
source /home/seismo/COM/SEISAN.csh
where ../seismo is the directory below which SEISAN has been installed. The SEISAN.csh script file assumes that you are running either csh or tcsh as your shell.
bash shell :
If you are using the bash shell add this line to your .bashrc file :
. /home/seismo/COM/SEISAN.bash
bash might include a select system program, if that is the case on your pc you also need to add this line in your .bashrc file :
alias select="/home/seismo/PRO/select"
to use the SEISAN SELECT program.
If you are using another shell you need to modify the script accordingly or change the shell. It is assumed that X-windows is installed.

SEISAN path for programs:
In order for programs and subroutines to know the path to the SEISAN program directory, this must be defined in the file SEISA.csh or SEISAN.bash in COM. Edit that file and set the environmental variable SEISAN_TOP to the name of the top directory, meaning the directory structure below and including seismo e.g. /top/users/seismo. This variable is then used to set the path to SEISAN directories.

SEISAN path for databases, parameter files etc:
The SEISAN database can be under the same top directory as programs, however it can also be different. This is practical if several users have their own databases, but use the same software. Set environmental variable SEISAN_TOP to top directory e.g. /top/users/seismo.

SEISAN default database:
To locate the default database directory set environmental variable DEF_BASE in SEISAN.csh. If not set, the name TEST is used since the distribution comes with some test data alreaded installled in TEST. The data bases are found under SEISAN_TOP.

SEISAN editor used in EEV:
The default editor is vi, any other editor can be set with the environmental variable SEISAN_EDITOR.

SEISAN calibration file directory:
By default, calibration files are in CAL, but they can be in a directory set with variable LOCAL_CAL. The directory name must be complete like /home/users/calibration/

Gives the architecture, can be either linux32, linux64, macosx or windows. Used in Makefile when compiling.

Specify path and filename to SAC libraries, only needed when you compile programs (Unix) and you have the libraries installed on your system.

Printer for Postscript plots:
The hard copy files from programs are sent to the printer from within the programs using the standard lpr command. In the SEISAN.csh file, define lpr using the standard environmental variable PRINTER. Remember that the printer must accept Postscript. PostScript files can also be viewed and printed on most printers outside SEISAN using GhostView, however in that cases files cannot be printed from within a program.

Scaling for Postscript plots:
By default, plots will be in A4 size. This can be changed by setting the environmental variables
SEISAN_PSSCALE_X and SEISAN_PSSCALE_Y. The default for A4 size is 1.0 for both variables. For Letter size the Y-scaling can be set to 0.9.

Seisan Extension:
User specific code can be implemented by making use of the environmental variable SEISAN_EXTENSION. The idea is that programs read this variable, if set to the user specific string, the user's source code will be used instead of the default. An example could be the computation of error ellipses. Currently used codes are: BGS.

6. Testdata The testdata set can be extracted from the file testdata_X.Y.tar.Z. Use programs uncompress and tar to extract the data in the SEISAN top directory (keep subdirectory structure). SEISAN has 4 test events always installed with the software (from June 1996 and Febrary 2021) so it is always possible to test SEISAN without installing test data. See the SEISAN tutortial, which only uses the 2 test events.

NOTE: All test data except the 2 events from 2021, are in Nordic format.


Most dimensions are set in file seidim.inc in the INC directory. In order to change dimensions, first change in the include file and then recompile the whole SEISAN distribution. The most important dimensions are:

Number of points in one trace 2 400 000
Number of points in memory buffer 30 000 000
Number of lines in NORDIC format file 20 000
Maximum number of traces in one plot 1 800
Maximum number of events in one month 200 000
Maximum number of calibration files 4 000
Maximum number of epicenters in epimap 90 000
Maximum number of lines in index file made with dirf: 200000

SEISAN has been tested with much larger dimensions, like 10 000 000 for number of points in one trace, however large dimensions might slow down the speed due to swapping (particularly if memory is not large) so a smaller dimension has been chosen. For continuous data, SEISAN works with many files so smaller dimensions can be used. For the PC version, dimensions may be different from above, check seidim.inc.

Note: In case programs don't work, you might have to recompile, see section 3.11.

Ubuntu 16.04: you might need a extra library to run SEISAN, run: sudo apt-get install libgfortran3
Some Ubuntu users are missing the libg2c.so.0 library file, it can be installed with the command:
sudo apt-get install gcc
If this does not work, also try:
sudo apt-get install libg2c0

Ubuntu 22.04: You might need to installel this X11 lib to compile SEISAN, run: sudo apt-get install -y libx11-dev

On a 64 bit computer the IASP files in DAT must be regenerated if you have the files from a 32 bit computer, with the programs REMODL and SETBRN otherwise HYP will crash.

Multiple users on Linux/Unix

If two or more users are working with EEV at the same time with the same user, there is a risk that the S-file names are being mixed up so an event from one year suddenly gets the S-file name from another year. This is caused by both users using the same environmental variable for the S-file (should be changed !). The solution is that each users has his/her own account, which in any case is the most convenient. From version 12 there is a lock file so if two users use EEV in the same directory, a wardning is given. More details under EEV.