SEATREE distribution
License and availability
SEATREE is distributed under the GNU public license without any warranties whatsoever. Computational modules as included with SEATREE might hold different copyrights, please refer to the module documentation for references to original scientific work. If you use SEATREE, please cite this Eos report.
SEATREE is now released as version 1.0.
Downloads
Most users will want to follow the fully automated install procedure; for system software requirements, see below.
For users familiar with the untar-make-make install cycle, we suggest to download the tar ball and follow the SEATREE installation procedure.
Given that SEATREE is in active development, users familiar with SVN might prefer to subscribe to the development version which we use. Our repository holds all codes, including the 3-D tomography and earthquake location modules, which are not included in the 1.0 release yet.
Fully automated installation
Download the install_seatree script and execute from a directory where you wish to place the SEATREE source code, such as $HOME/progs/ or /usr/local/src.
sh -x install_seatree
This will attempt to download the most recent tar ball from the web, unpack it, and run the SEATREE installation process for you (see below).
Tar-ball with source
The most recent release of SEATREE in a single tar file which includes the GUI and the most stable modules is available from
http://geodynamics.usc.edu/~becker/software/seatree.recent.tgz.
The last release is version 1.0
-rw-rw-r-- 1 becker becker 8844396 2009-02-03 13:50 seatree-1.0.0-020309.tgz
The release includes a fully functional GUI and drivers for hc, larry, syn2D. You will need this file if you do not choose to subscribe to our SVN version, and either obtain it manually or by running the fully automated installer.
Developer source code access
You can inspect the current source code through our source browser, or checkout the SVN repository by
svn co http://geosys.usc.edu/svn/seatree/trunk/ seatree
To install, then follow the SEATREE installation procedure below.
Installation
Required Software Packages
All individual computational modules should compile and work fine when run from the command line. For the compilation, C (for hc and nonlinloc) and Fortran (for ConMan, larry, larry3d, and syn2d) compilers (such as GNU gcc and gfortran, which we use for development) need to be available, of course. Compilers will typically be available on a regular Linux install, and can be added easily to Mac OS-X (see, e.g., this page).
However, the GUI and scripting functionality (i.e. the main contribution of SEATREE) will require further software. Often all of this can be installed very easily on a OS-X or Linux system using fink (for Mac OS-X), yum (e.g. Fedora Linux), or apt-get (e.g. Ubuntu Linux). We are also working on a packaged, virtual machine type of install DVD.
You will have to have these individual packages installed:
- Python: Python alone will give you more sophisticated scripting capabilities,
- for the graphical user interface, you'll also need to add pygtk
- matplotlib is needed for additional plotting functionality
The simplest approach may be to obtain the Enthought Python Distribution. This software package is free for academic users and contains all of the individual packages below. It is available for Mac-OSX, Windows, and Linux.
- Generic Mapping Tools (GMT) 3.4.5 or 4.x.x including Coastline Data Used for generating postscript plots to visualize output.
- NetCDF, including Development Kit
Used by GMT.
- Must have the following files/libraries:
- libnetcdf.a
- netcdf.h
- netcdf.inc
- libnetcdf.so
- Must have the following files/libraries:
- ImageMagick Used to convert postscript to PNG for display.
Fully automated installation
The install_seatree script will download the tar file for you and attempt the next step.
SEATREE installation
1. Download the tar file, unpack and change into the directory where you unpackaged SEATREE. Here, I will use my install directory
~/tmp/seatree-1.0.0-082108/
as an example directory from which the python scripts are run. Replace the version string "1.0.0-082108" with whatever version you are using.
2. Run the automated installer. This can be done with
becker@walter:~/tmp/seatree-1.0.0-082108 > ./configure
but this script mainly only loads the actual installer, which is python/seatree/install/install.py
install_seatree: installing in seatree-1.0.0-082108/ by running configure script...
configure: SEATREE installation process
configure: This script assumes you have C and F77 compilers and the regular flags set to usable values
configure: CC: gcc CFLAGS: -O2 -Wall -funroll-loops -fomit-frame-pointer -DLINUX_SUBROUTINE_CONVENTION -DUSE_GZDIR
configure: F77: gfortran FFLAGS: -x f77-cpp-input -O2 -Wall -funroll-loops -fomit-frame-pointer -DLINUX_SUBROUTINE_CONVENTION
configure: running install.py in python/seatree/install subdirectory
Setting up GMT
GMT appears to be in your system path already...
Specify another path (y/n default: n)?
Loading Modules...
Parsing /home/walter/becker/tmp/seatree-1.0.0-082108/python/conf/install/hc.xml
Found FlowCalc
Parsing /home/walter/becker/tmp/seatree-1.0.0-082108/python/conf/install/larry.xml
Found Invert
Parsing /home/walter/becker/tmp/seatree-1.0.0-082108/python/conf/install/nll.xml
Found NonLinLoc
Parsing /home/walter/becker/tmp/seatree-1.0.0-082108/python/conf/install/syn2d.xml
Found Syn2D
Installing Module: FlowCalc
Installing FlowCalc
Build HC (note: you must do this once) (y/n default: y)?
GMT Home: /usr/local/src//GMT4.3.1/
NetCDF Home: /usr/geosys/x86_64/netcdf-3.6.0-p1/
HC Directory: /home/walter/becker/tmp/seatree-1.0.0-082108/modules/mc/hc
1) GMT 3.4.5
2) GMT 4.x.x
Select GMT version from above (default: 2):
CPU Architecture (default: x86_64):
Building HC...
Success!
Installing Module: Invert
Installing Larry-Invert
Build Larry (note: you must do this once) (y/n default: y)?
Larry Directory: /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/larry
Building Larry...
COMMAND: cd /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/larry; make clean
COMMAND: cd /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/larry; make
Success!
Installing Module: NonLinLoc
Traceback (most recent call last):
File "python/seatree/install/install.py", line 95, in installModule
exec(execstr)
File "<string>", line 1, in <module>
ImportError: No module named nllInstaller
NonLinLoc installer missing or not needed
Installing Module: Syn2D
Installing Syn2D
Build Syn2D Binaries (note: you must do this once) (y/n default: y)?
Syn2D Directory: /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/syn2d
Detected GNU Fortran Compiler, checking $FFLAGS for fixed line length flag
Building Syn2D...
COMMAND: cd /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/syn2d; make clean
COMMAND: cd /home/walter/becker/tmp/seatree-1.0.0-082108/modules/seismo/syn2d; make build_only
Success!
Note how the installer automatically configures default setting for the python SEATREE GUI, checks for existing modules, and then loops through all modules to install then. In this case, the installer configured and compiled hc and larry. If everything works OK, you should end up with a link to the main python script in (at least) the installation directory
becker@walter:~/progs/src/seatree> more seatree #!/bin/sh /home/walter/becker/progs/src/seatree/install/../py-drivers/py-gui/SEATREE.py
Documentation
Brief EOS report
User documentation
Developer documentation
Mac OSX comments
The simplest approach may be to obtain the Enthought Python Distribution. This software is free for academic users and contains all of the required, python-related packages below. Should you wish to install the individual packages, and are having problems installing PyGTK, this thread may help.
Other installation comments (from Marc Spiegelman, LDEO)
- have a reasonably recent python from http://www.python.org/ e.g. python2.4
- if not installed, use Fink to install
- GMT
- netCDF
- gtk
- pygtk these will normally be installed in /sw (and the path for GMT and netCDF will be /sw )
- make sure PYTHONPATH includes /sw/lib/python2.4/site-packages (for pygtk) (and anywhere else)
- If you need a fortran complier (i.e. to build Larry) install gfortran http://gcc.gnu.org/wiki/GFortranBinaries
- when building Larry setenv F77 gfortran setenv F90 gfortran
Bug reports, feedback, and release history
See our SEATREE version history page for recent changes.
