Saint Louis University Earthquake Center

Computer Programs in Seismology


With the installation of a PDP 11/70 minicomputer in 1981 for use in seismic network analysis, a persistent effort was made to use that tool for research. Because of the uniqueness of a dedicated minicimputer for research at that time as well as a desire to do something for the world wide seismological community, a set of documented computer programs emerged. The programs developed actually reflect research interests of the department as well as a desire to look at data in the manner of other investigators. In doing so, the hope is that these tools will permit research to progress rapidly.

This programming effort led to the development of COMPUTER PROGRAMS IN SEISMOLOGY which continues to be distributed. The package contains its own graphics package, and is relatively easy to install.

  • Version 2.0 emphasized the development of algorithms.
  • Version 3.0 (NEW) emphasizes ease of use. Version 3.30 is the latest release.

Computer Programs in Seismology

These programs focus on the understanding and interpretation of seismic wave propagation in the crust and upper mantle of the Earth. Synthetic seismograph code is provided for sources and receivers at arbitrary positions in the plane layered media. Programs are provided for determination of crustal structure through the inversion of surface-wave dispersion and teleseismic P-wave receiver functions. Inversion of broadband recordings of regional earthquakes for source depth, focal mechanism and seismic moment is also provided. Finally, a new tool, gsac, is provided to permit interactive and script based manipulation of seismic traces. The entire package is well integrated in that the same Earth velocity model, waveform and graphics formats are used by all programs. A complete interactive graphics package is also provided.

Since this package of programs continues to develop and be refined  to keep current with increasing volumes of digital might wish to  return to this page every few months.


The reference to this set of codes is as follows:

Herrmann, R. B. (2013) Computer programs in seismology: An evolving tool for instruction and research, Seism. Res. Lettr. 84, 1081-1088, doi:10.1785/0220110096


The present code requires the use of the gcc/gfortran compilers that are available for all platforms. Interactive graphics requires X11 graphics.

PC Versions Currently support for PC's running windows requires the CYGWIN environment ( The source codes and installation procedure are the same as for the UNIX/LINUX/OSX versions.

UNIX/LINUX/OSX Versions Source codes and install scripts are available. C and FORTRAN compilers are required - gcc and gfortran are available for free. Programs are distributed as gzip'd tar files (.tgz). Documentation in PostScript is provided.

Ubuntu Linux

You can use the program download page, or open a terminal window and enter the following commands:

sudo apt-get install gfortran
sudo apt-get install xorg-dev
sudo apt-get install libncurses5-dev
sudo apt-get install gawk

the following programs are useful:

sudo apt-get install gv
sudo apt-get install graphicsmagick

RHEL 6.3 Linux (perhaps Fedora)

You can use the Add/Remove Softare tab, or open a terminal window and enter the following commands:

yum install gfortran
yum install libX11-devel
yum install ncurses-devel

the following programs are useful:

yum install gv
yum install ImageMagick

OpenSUSE 13.1

Applications -> SystemLizard Button -> Computer -> Install/Remove Softares , or invoke /sbin/YaST2 directly



  • Determine the version of the operating system: Top menu bar AppleLogo -> About This Mac will give the version, e.g., OSX Version 10.9.4 It also gives processor.
  • Determine whether the CPU is 64 or 32 bit: In a terminal window, enter uname -a. Mine gives
    Darwin quake 13.3.0 Darwin Kernel Version 13.3.0: Tue Jun 3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64 x86_64
    the x86_64 indicates a 64 bit processor. If you see i386/i586 it is 32 bot.
  • Install the gcc compilers from . Read the instructions in the first paragraph under the heading GCC 4.7, 4.8, 4.9 (auto-vectorizing with OpenMP).
    Download the gcc distribution which includes the gfortran. You will need both. I clicked on gcc-4.9-bin.tar.gz
  • Install xcode on your Mac, since you will need command line tools.
  • Install MacPorts
    MacPorts gives libraries and LINUX like tools that will be useful for productivity. I have bzip2, gawk, ghostscript, , gv, , ncurses, xfig and xv amont others. See what you have by doing an ls /usr/local/bin.


If you have any questions or if you have suggestions for additions to the package, please Email

You can find more information about the Center, seismology, and many other earthquake-related topics by visiting the Center's homepage, or by contacting Dr. Robert Herrmann.