Skip to content
Glenn Thompson edited this page Oct 12, 2016 · 3 revisions

This is just a list of the main GISMO data types (also called "classes" in object-oriented terminology):

waveform

The waveform data type is a container for seismic timeseries data. Whether you load seismic timeseries data from a SAC, Miniseed or Seisan file, or from IRIS DMC webservices or an Antelope database, GISMO stores it as a waveform variable. So all you need to learn is how to work with waveform variables.

scnlobject

The scnlobject data type is a container for the SEED station-channel-network-location code for a channel.

Catalog

The Catalog data type is a container for seismic event catalog data. Whether you load seismic event catalog data from Antelope, Seisan, ZMAP or IRIS DMC webservices, GISMO stores it as a Catalog object.

1. Seismic waveform data in GISMO: The Waveform Suite

The Waveform Suite is the toolbox around which GISMO originally grew, providing the waveform handling capabilities. The Waveform Suite no longer exists as a separate project - today it is a component of GISMO.

Overview:

The first task is to read your seismic data into a waveform object. The steps are to tell GISMO:

  • where to get the data from (datasource)
  • which stations/channels/networks & locations to get data for (scnlobject)
  • the start and end of the time window you wish to get data for (waveform)

For example, to load data from a SAC file:

ds = datasource('sac', '/path/to/mysacfile.sac');
scnl = scnlobject('REF', 'EHZ', 'AV', '--');
startTime = '2009/03/23 06:00:00';
endTime = '2009/03/23 07:00:00';
w = waveform(ds, scnl, startTime, endTime);

To load from other data sources, all that changes is the datasource call, e.g. IRIS DMC webservices:

ds = datasource('irisdmcws');

e.g. Antelope/CSS3.0 database:

ds = datasource('antelope', '/path/to/mydatabase');

e.g. Earthworm/Winston waveserver:

ds = datasource('winston', 'host/ip address', port-number); 

e.g. Miniseed file:

ds = datasource('miniseed', '/path/to/myminiseedfile.mseed');

e.g. Seisan file:

ds = datasource('seisan', '/path/to/myseisanfile');

It is also possible to load from multiple files at once with more complex datasource commands.

Similarly, more than one station/channel/network/location can be loaded at once with more complex scnlobject calls.

Processing / Analyzing waveform data

Once you have loaded your data into a waveform object (or into an array of waveform objects), you can do common tasks like make a time series plot, detrend or filter, plot an amplitude spectrum, a spectrogram or a helicorder. Here are some simple examples:

plot(w);
w = detrend(w);
f = filterobject('b', [0.5 10], 2); % define a filter, bandpass 0.5-10 Hz, 2 poles
w = filtfilt(f,w); % apply two-way filter
plot_spectrum(w);
spectrogram(w);
plot_helicorder(w);

As you can see, the commands are self-explanatory. These are just a few of the built-in functions ("methods") that can be applied to waveform objects.

For more detailed/advanced examples, consult these pages:

2. Seismic event catalogs

Classes:

3. Instrument response data

Classes:

Example:

4. RSAM data

Classes:

5. Helicorder plots (drum plots)

Classes:

6. STA/LTA Detector

7. Correlation analysis

8. Interfacing GISMO with other tools

8.1 ObsPy

8.2 SAC

8.3 Seisan

8.4 Earthworm and Winston waveservers

8.5 Antelope

8.6 CSS3.0 databases (without Antelope)

8.7 Excel


Guide on writing tutorial pages
Clone this wiki locally