Using SAC

Introduction

Overview

SAC (Seismic Analysis Code) is a general-purpose interactive program designed for the study of sequential signals, especially time-series data. Emphasis has been placed on analysis tools used by research seismologists in the detailed study of seismic events. Analysis capabilities include general arithmetic operations, Fourier transforms, three spectral estimation techniques, IIR and FIR filtering, signal stacking, decimation, interpolation, correlation, and seismic phase picking. SAC also contains an extensive graphics capability. Binary versions are available for Intel Mac and Linux, but SAC can be built from the source code for other computer operating systems. The source code is written in C. For further details regarding requirements to build and run SAC, see the README file that comes with the distribution.

SAC was developed at Lawrence Livermore National Laboratory and is copyrighted by the University of California. It is currently begin developed and maintained by a small group of developers working in cooperation with IRIS.

In all version of SAC through and including v101.6a, all reals in the SAC header/data are single-precision (32 bits; 4 bytes). SAC v102.0 includes double-precision for both time and distance calculations using header variables, and does so in a way that maximizes compatibility so that existing SAC data files can still be used. There is a detailed discussion in the section on Floating-Point Precision in SAC in TUTORIAL.

Starting in version 102.0, SAC is capable of viewing and downloading event, station, and response metadata and downloading waveforms from the IRIS online Web services. See Data Access for an overview.

Through version 101.6a, epicentral distances were calculated using an Earth spheroid defined by a: 6378160.0 m and f: 0.00335293. In version 102.0, a header variable IBODY has been added to allow for distance calculations on terrestrial planets, the Sun, and the Moon. Options for IBODY are given in the Event Field section of SAC Data File Format, and an example (macro and output) has been added in ${SACHOME}/macros.

When testing and demonstrating SAC commands, it is useful to have an easily-accessible set of seismograms. The one seismogram most used is from command FUNCGEN: fg seismo. However, all one gets is the first several seconds of a not-very-interesting P arrival. Command DATAGEN has given access to seismograms from three events: a local event, a regional-distance event, and an epicentral event. In SAC v102.0, a new event has been added: ${SACHOME}/aux/datagen/SUB/DEEP/: three-component seismograms from eight broadband stations. The arrivals are impulsive, and one can see many converted phase. The help files SAC_MACROS and TRAVELTIME have examples using DATAGEN seismograms. (The TRAVELTIME command has been improved and expanded in version 102.0.)

The Using SAC part of the SAC Users Manual contains general information for the new user about what SAC can do, how it works, and how to get started. It also contains detailed information for the more experienced user on topics such as how to use SAC macros, how to read and write SAC data files from C or FORTRAN programs, and how the SAC program is structured.

The Users Manual will be periodically updated to include new descriptions and to revise old ones. Please report any errors in this manual to the sac-community listserv: <sac-community@earthscope.org>. Although the version of the manual that comes with the binary or source distribution will be updated only when a new version comes out, the online version of the manual at <http://ds.iris.edu/files/ sac-manual/> can be updated at any time.

Other Sections

Command Reference Manual contains detailed descriptions of each SAC command including purpose, syntax, default values, and examples. This manual also contains lists of SAC commands sorted alphabetically and functionally.

Spectral-Estimation Subprocess Manual describes a subprocess for the study of stationary random processes. A subprocess is like a small separate program within the main SAC program.

Signal-Stacking Subprocess Manual describes a subprocess for performing signal stacking with delays, traveltimes, and record section plots.

Notation

Repeating an important point made above, you may enter keywords and options in either uppercase or lowercase. SAC converts these to uppercase before interpreting them. The exceptions to this rule are text appearing within single or double quotes and the names of directories and files. The case of these items is not changed. They are interpreted literally.

LATEST REVISION

Version 102.0