Difference between revisions of "Geopsy: Supported file formats"

From GeopsyWiki
Jump to navigation Jump to search
 
(16 intermediate revisions by 3 users not shown)
Line 14: Line 14:
 
|SAC
 
|SAC
 
|Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
 
|Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
 +
|-
 +
|Extension is "gse"
 +
|GSE2
 +
|GSE format
 
|-
 
|-
 
|Extension is "su"
 
|Extension is "su"
 
|SU
 
|SU
|The endianess cannot be automatically detected from file header. The file is open with the default byte order (according to current platform). If you get warnings or error while loading a SU file, consider the manual format selection in [[Geopsy::Preferences|Preferences]].
+
|Big or little endian is determined by scanning the complete file and checking consistency between number of samples and file size.
 
|-
 
|-
 
|Extension is "sgy" or "segy"
 
|Extension is "sgy" or "segy"
|SEGY
+
|SEGY or PASSCAL SEGY
|Big and little endian are automatically recognized thanks to sample coding (offset 24 in file binary header) that must be 1, 2, 3, 5 or 8.
+
|Big and little endian for SEGY are automatically recognized thanks to sample coding (offset 24 in file binary header) that must be 1, 2, 3, 5 or 8. If SEGY fails, PASSCAL SEGY is checked by scanning the complete file and checking consistency between number of samples and file size.
 +
|-
 +
|Extension is "seg2" or "sg2"
 +
|SEG2
 +
|Segmented binary format
 +
|-
 +
|Extension is "mseed" or "msd"
 +
|Miniseed
 +
|Miniseed format
 
|-
 
|-
 
|Extension is "rd3"
 
|Extension is "rd3"
Line 42: Line 54:
 
|Syscom
 
|Syscom
 
|Files generated by Syscom instruments
 
|Files generated by Syscom instruments
 +
|-
 +
|Extension of a custom ASCII format
 +
|Custom ASCII format
 +
|One of the ASCII formats defined by the user
 
|-
 
|-
 
|Contents starts with
 
|Contents starts with
Line 88: Line 104:
 
|Text files that user can easily produce from file conversions
 
|Text files that user can easily produce from file conversions
 
|-
 
|-
|Check values of
+
|First block is a correct Guralp block (1024 bytes)
IFTYPE, LEVEN and NVHDR
+
|Guralp GCF
 +
|The first block is fully loaded and parsed (compression code, component code, reverse integrating constant)
 +
|-
 +
|Check values of IFTYPE, LEVEN and NVHDR
 
|SAC
 
|SAC
 
|Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
 
|Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
 
|-
 
|-
|First block is a correct
+
|First block is a correct Seed blocket
Guralp block (1024 bytes)
 
|Guralp GCF
 
|The first block is fully loaded and parsed (compression code, component code, reverse integrating constant)
 
|-
 
|First block is a correct
 
Seed blocket
 
 
|Mini seed
 
|Mini seed
 
|Check if no error occurs while reading the first blocket
 
|Check if no error occurs while reading the first blocket
 +
|-
 +
|Check content for SU
 +
|SU
 +
|Check consistency between number of samples and file size
 +
|-
 +
|Check content for SEGY
 +
|SEGY
 +
|Check validity of sample type
 +
|-
 +
|Check content for PASSCAL SEGY
 +
|PASSCAL SEGY
 +
|Check consistency between number of samples and file size
 +
|-
 +
|Check header for custom ASCII format
 +
|Custom ASCII format
 +
|Check mandatory regular expressions of header parser defined by user
 
|}
 
|}
  
Line 195: Line 224:
 
   Editors Michael W. Norris and Alan K. Faichney
 
   Editors Michael W. Norris and Alan K. Faichney
  
PASSCAL SEGY is currently not supported. Differences with standard SEGY is described at [http://www.passcal.nmt.edu/software/segy.html]. (TODO)
+
== PASSCAL SEGY ==
 +
 
 +
Implementation based on:
 +
 
 +
* [http://seisweb.usask.ca/SIA/doc/segy_header.html segy, passcal segy and su headers]
 +
* [http://www.iris.edu/data/reports/1999/99-002B.pdf PASSCAL SEGY Trace header format]
  
 
== SAC (gw) ==
 
== SAC (gw) ==
Line 201: Line 235:
 
SAC format is produced by [http://www.iris.edu/software/sac SAC software].
 
SAC format is produced by [http://www.iris.edu/software/sac SAC software].
  
Importing and exporting is supported.
+
Importing and exporting is supported (format description [http://www.iris.edu/manuals/sac/SAC_Manuals/FileFormatPt1.html part 1] and [http://www.iris.edu/manuals/sac/SAC_Manuals/FileFormatPt2.html part 2]). Coordinates are retrieved and stored in USER7, USER8 and USER9 (for X, Y, and Z). Time picks from indexes 0 to 9 are saved and restored through fields T0 to T9, others picked inside ''geopsy'' are ignored.
  
 
== Mini seed (rw) ==
 
== Mini seed (rw) ==
Line 211: Line 245:
 
== GSE2 (rw) ==
 
== GSE2 (rw) ==
  
Only compressed format ''CM6''.
+
Only compressed format ''CM6'' (read/write) and uncompressed ''INT'' (read) are supported. Components are properly identified if they end with ''Z'', ''N'', or ''E''. Upon export channels are named ''HHZ'', ''HHN'', ''HHE'' (high broad band and high gain seismometers). Coordinates are not saved nor restored from ''STA2'' line because geographical coordinates are not stored in ''geopsy'' (only Cartesian coordinates).
TODO, add a link to GSETT 2.1 protocol
+
 
 +
[http://www.seismo.ethz.ch/autodrm/downloads/provisional_GSE2.1.pdf provisional_GSE2.1.pdf], Waveform description, p 66.
  
 
== CityShark2 ==
 
== CityShark2 ==
 
== Guralp GCF ==
 
== Guralp GCF ==
== ACII GeoSig ==
 
 
==ASCII Single column (rw)==
 
==ASCII Single column (rw)==
 
==ASCII Multi column (rw)==
 
==ASCII Multi column (rw)==
 +
ASCII Multi column are text files without header ([[Geopsy: tips for loading text files without header|tips for loading text files without header]]). To handle ASCII Multi column files with header, see [[Geopsy: Custom ASCII formats|Custom ASCII formats]].
  
 
== SESAME SAF (rw) ==
 
== SESAME SAF (rw) ==

Latest revision as of 09:59, 13 November 2015

This article describes all the signal file formats recognized by Geopsy. Other instrument specific formats can be implemented. If you have special requests or if you want to propose algorithms to import/export other formats, your contribution, in any form, is fully encouraged. Currently all formats can be read but not all them can be exported (only those marked as rw).

Automatic recognition

The table here below gives the criteria used to recognize the file formats. The conditions are processed in order from the first to the last row. At the first match, the format is considered to be recognized.

Conditions for automatic recognition of file formats
Conditions File formats Comments
Extension is "sac" SAC Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
Extension is "gse" GSE2 GSE format
Extension is "su" SU Big or little endian is determined by scanning the complete file and checking consistency between number of samples and file size.
Extension is "sgy" or "segy" SEGY or PASSCAL SEGY Big and little endian for SEGY are automatically recognized thanks to sample coding (offset 24 in file binary header) that must be 1, 2, 3, 5 or 8. If SEGY fails, PASSCAL SEGY is checked by scanning the complete file and checking consistency between number of samples and file size.
Extension is "seg2" or "sg2" SEG2 Segmented binary format
Extension is "mseed" or "msd" Miniseed Miniseed format
Extension is "rd3" RD3 RAMAC/RD3 format for RAMAC Ground Penetrating Radar
Extension is "dzt" Radan Radan format for GSSI Ground Penetrating Radar
Extension is "ndx" or "sis" Sismalp Sismalp format, a ".sis" or ".ndx" (and vice-versa) must also exists in the same directory.
Extension is "wav" Wave Wave PCM sound file, just for fun to analyze your favorite music albums.
Extension is "xmr", "smr", "vmr" or "vmx" Syscom Files generated by Syscom instruments
Extension of a custom ASCII format Custom ASCII format One of the ASCII formats defined by the user
Contents starts with

"GeopsySignal"

Geopsy signals Internal format for storing signal on a disk. Software version and file version must match (back compatibility). A magic integer(32 bits) and a magic double(64 bits) are checked. A positive number of samples is expected.
First line contains

"Arrival_times_file"

Arrival times Storage of source and receiver positions plus the corresponding travel time.
First 16 bits are

0x 55 3A

SEG2 Binary file format produced by Geometrics instruments (among others).
First 32 bits are

0x 66 5F 9C 6E

NiSismo
First characters are

"Original file name"

Cityshark2 File produced by Cityshark2 station (Leas instruments)
First characters are

"SESAME ASCII data format (saf) v. 1"

SESAME SAF Common file format proposed during SESAME project (2001-2004)
First characters are

"RIFF"

WAV Wave PCM sound file, just for fun to analyze your favorite music albums. Extension of files can be something else than "wav".
First characters are

"Station_code"

ASCII GeoSig Files produced by GeoSig instruments
First characters are numbers

separated by blanks

ASCII Multi columns Text files that user can easily produce from file conversions
First block is a correct Guralp block (1024 bytes) Guralp GCF The first block is fully loaded and parsed (compression code, component code, reverse integrating constant)
Check values of IFTYPE, LEVEN and NVHDR SAC Big and little endian are automatically recognized thanks to IFTYPE (must be 1), LEVEN (must be true), and NVHDR (must be 6).
First block is a correct Seed blocket Mini seed Check if no error occurs while reading the first blocket
Check content for SU SU Check consistency between number of samples and file size
Check content for SEGY SEGY Check validity of sample type
Check content for PASSCAL SEGY PASSCAL SEGY Check consistency between number of samples and file size
Check header for custom ASCII format Custom ASCII format Check mandatory regular expressions of header parser defined by user

Geopsy signals (rw)

It is the format used by Geopsy to automatically save processed signals. Usually you never import original signals written under this format. This new format has been introduced in Geopsy because it is the closer to internal memory vectors, hence I/O access are faster than decoding original files. This format is also used to store temporary files resulting of memory swaps.

Geopsy signal specification
Offset (bytes) Size (bytes) Type Description
0 16 char "GeopsySignal " (tag ending with 0)
16 4 integer Magic integer number (-2078964521). Make sure that integer representation used to generate file is the same as for the running software.
20 8 double Magic float number (-333.3333333e33). Make sure that double float representation used to generate file is the same as for the running software.
28 4 integer Version (currently=2)
32 4 integer Offset to first data (offset=22+nSignals*4)
36 4 integer Number of signals (nSignals)
40 4*nSignals integer Number of samples for each signal (nSamples[])
offset nSamples[0]*8 double Samples for first signal
...
nSamples[nSignals-1]*8 double Samples for last signal

SEG2 (rw)

It is the usual format produced with Geometrics instruments.

Importing and exporting is supported.

The implementation is based on the following document:

 Recommended standard for seismic (/radar) data tiles in the personal computer environment1
 Subcommittee of the SEG Engineering and Groundwater Geophysics
 Committee, S. E Pullan, Chairman2

Which is based in turn on Pullan, S. E., 1990[1].

SU (rw)

SU (Seismic Unix) format is a sub format of SEGY. This is just the trace header and trace samples.

SEGY

Implementation based on the following document:

 SEG Y rev 1 Data Exchange format
 SEG Technical Standards Commitee
 Release 1.0, May 2002
 Society of Exploration Geophysicist
 Editors Michael W. Norris and Alan K. Faichney

PASSCAL SEGY

Implementation based on:

SAC (gw)

SAC format is produced by SAC software.

Importing and exporting is supported (format description part 1 and part 2). Coordinates are retrieved and stored in USER7, USER8 and USER9 (for X, Y, and Z). Time picks from indexes 0 to 9 are saved and restored through fields T0 to T9, others picked inside geopsy are ignored.

Mini seed (rw)

Common signal exchange format in seismology ([1]). Library libmseed is directly used by Geopsy.

Importing and exporting is supported.

GSE2 (rw)

Only compressed format CM6 (read/write) and uncompressed INT (read) are supported. Components are properly identified if they end with Z, N, or E. Upon export channels are named HHZ, HHN, HHE (high broad band and high gain seismometers). Coordinates are not saved nor restored from STA2 line because geographical coordinates are not stored in geopsy (only Cartesian coordinates).

provisional_GSE2.1.pdf, Waveform description, p 66.

CityShark2

Guralp GCF

ASCII Single column (rw)

ASCII Multi column (rw)

ASCII Multi column are text files without header (tips for loading text files without header). To handle ASCII Multi column files with header, see Custom ASCII formats.

SESAME SAF (rw)

Wave PCM (rw)

Uncompressed audio format.

Arrival times (rw)

RD3 RAMAC

NiSismo

Radan GSSI

Sismalp

Syscom

References

  1. Pullan, S. E., 1990, Recommended standard for seismic (/radar) files in the personal computer environment: Geophysics, 55, no. 09, 1260-1271