Seismic Unix


Geschwindigkeitsanalyse mit SU
Basisdaten

Entwickler CWP
Aktuelle Version SU 42
(15. Februar 2010)
Betriebssystem Unix, Linux, Solaris
Programmier­sprache C
Kategorie Geophysik, Processing, Reflexionsseismik
Lizenz Alle Rechte vorbehalten (Open Source)
deutschsprachig nein
Seismic Unix Home

Seismic Unix ist ein Softwarepaket zur seismischen Analyse und Processing. Das freie Open Source Softwarepaket wird vom Center for Wave Phenomena (CWP) an der Colorado School of Mines (CSM) bereit gestellt.

Geschichte

Bearbeiten

Einar Kjartansson began writing what is now called SU (the SY package) in the late 1970s while still a graduate student at Jon Claerbout's Stanford Exploration Project (SEP). He continued to expand the package while he was a professor at the University of Utah in the early eighties. In 1984, during an extended visit to SEP Einar introduced SY to Shuki Ronen, then a graduate student at Stanford. Ronen further developed SY from 1984 to 1986. Other students at SEP started to use it and contributed code and ideas. SY was inspired by much other software developed at SEP and benefited from the foundations laid by Clairbout and many of his students; Rob Clayton, Stew Levin, Dave Hale, Jeff Thorson, Chuck Sword, and others who pioneered seismic processing on Unix in the seventies and early eighties.

In 1986, Shuki Ronen brought this work to our Center during a one year postdoctoral appointment at the Colorado School of Mines. During this time, Ronen aided Cohen in turning SU into a supportable and exportable product.

Chris Liner (homepage), while a student at the Center, contributed to many of the graphics codes used in the pre-workstation (i.e, graphics terminal) age of SU. Liner's broad knowledge of seismology and seismic processing enabled him to make a positive and continuing influence on the SU coding philosophy. Liner continues to promote the use of SU in his students' research at the University of Houston.

Craig Artley, now at Golden Geophysical, made major contributions to the graphics codes while a student at CWP and continues to make significant contributions to the general package.

Dave Hale wrote several of the heavy duty processing codes as well as most of the core scientific and graphics libraries. His knowledge of good C-language coding practice helped make our package an excellent example for applied computer scientists.

John Stockwell's involvement with SU began in 1989. He is largely responsible for designing the Makefile structure that makes the package easy to install on the majority of Unix platforms. He has been the main contact for the project since the first public release of SU in September 1992 (Release 17). After Jack Cohen's death in 1996, Stockwell assumed the role of principal investigator of the SU project and has remained in this capacity to the present. The number of codes has more than tripled in the 11 years, since John Stockwell has been PI of the project.

There have been many contributors to SU over the past two decades.

The Seismic Unix routines run under the Unix terminal, and can get maximum efficiency when using it with bash scripting techniques.

Simple routines

Bearbeiten

Many of the programs run simply by a command on the terminal, for instance, to visualize a seismogram, as wiggle traces

$ suxwigb < seismogram.su

or as an image plot

$ suximage < seismogram.su

More elaborated routines

Bearbeiten

It is also possible, to use bash features do elaborate more complex processing structures:

$ for ((i=1;i<=100;i++)); do
> sufdmod2 < model.bin > output.mov nx=200 nz=300 tmax=5 xs=$i zs=0 hsfile=seismogram.$i.su
> done

In the example above Seismic Unix will create 100 seismograms in 100 different source positions

SU Daten

Bearbeiten
Key Bedeutung
dt Abtastintervall in Mikrosekunden
ns Anzahl der Samples in dieser Spur
offset Entfernung vom Schusspunkt
cdp CMP-Nummer
tracl Nummeriert die Spuren
fldr Nummeriert die Gather

Eine .su-Datei entspricht dem SEG-Y Format und besteht aus zwei Teilen. Es gibt den Header, in dem Informationen über den Datenteil der Spur gespeichert sind. Dieser Teil kann die Spurnummer, das Abtastintervall, sowie weitere Informationen beinhalten. Im Datenteil selber ist das digitalisierte seismische Signale gespeichert.

Bei der Bearbeitung einer SU-Datei können durch Seismic Unix über Schlüsselwörter im Header (key) angesprochen werden. Die Schlüsselwörter können zudem bearbeitet und verändert werden.

SU Programs

Bearbeiten

Seismic Unix has many of the processes needed on the geophysical processing. It is possible to use it to manipulate and create your own seismograms, and also to convert them between the SU standard file and the industry standard, the SEG Y.

Here you can find a list of the programs that the SU package has, with a brief description and a link to its help page.[1]

Datenkompression

Bearbeiten
Diskrete Kosinus Transformation
dctcomp Kompression mittels diskreter Kosinus Transformation
dctuncomp Dekompression mittels diskreter Kosinus Transformation
Packroutinen
supack1 Packt SEGY Spuren in Characters
suunpack1 Entpackt SEGY Spuren aus Chars in Gleitkommazahlen
supack2 Packt SEGY Spuren in 2-Byte Integer
suunpack2 Entpackt SEGY Spuren von Integern zu Gleitkommazahlen
Wavelet-Transformation
wpc1comp2 Spurweise Kompression von einer 2D-Sektion mit Waveletpaketen (WPT)
wpc1uncomp2 Dekompression einer 2D-Sektion, die mit Waveletpaketen komprimiert wurde
wpccompress Kompression von einer 2D-Sektion mit Waveletpaketen
wpcuncompress Dekompression von einer 2D-Sektion
wptcomp Kompression mittels Wavelet-Paket-Kompression
wptuncomp Dekompression mit WPT komprimierter Daten
wtcomp Kompression mittels Wavelet-Transformation (WT)
wtuncomp Dekompression WT-komprimierter Daten

Bearbeitung, Sortierung und Manipulation

Bearbeiten
Bearbeitungswerkzeuge
suabshw Schlüsselworte im Header durch Absolutwerte ersetzen
suazimuth Berechnung des AZIMUT der Spur mi den Werten sx,sy,gx,gy header fields und einfügen in ein bestimmbares Header-Schlüsselwort
subset Auswahl eines Teils aus 3D-seismischen Daten
suchw Header-Schlüsselwort ändern
sucountkey Zählt die Anzahl diskreter Werte eine Schlüsselwortes
suedit SEG Y-Daten untersuchen und Header bearbeiten
sugethw Ausgewählten Wert setzen
sukill Spuren Null setzen
sunan Nicht zu verarbeitende Daten (Not a Number) ersetzen
suquantile Einige Quantilen oder Ränge anzeigen
surange Maximal- und Minimalwerte von gesetzten Schlüsselworten ausgeben
sushw Eine beliebige Anzahl an Schlüsselworten anhand ihrer Spurnummer berechnen oder aus einer Datei einlesen
sutab gesetzte Schlüsselworte aus nicht-graphische Terminals ausgeben
suwind Gibt ein Fenster der Spuren anhand von Schlüsselworten aus
suedit SEG Y-Daten untersuchen und Header bearbeiten
Sortierung
susort Nach Schlüsselwort sortieren
susorty 2-D Datensatz erstellen um Datensortierung zu visualisieren
Manipulation
fcat Verbinden von Dateien nach einem Lesedurchgang (fast cat)
maxdiff Absolut maximale differenz zweier SEG y-Datensätze ermitteln
segyhdrmod Textheader von SEGY-Daten ersetzen
suaddnoise Einem Datensatz Noise hinzufügen
sucmp Vergleicht zwei Datensätze und gibt 0 zurück, wenn sie übereinstimmen und 1 wenn sie sich unterscheiden (Compare)
sudiff,susum,suprod,suquo Differenz, Summe, Produkt und Quotient zweier Datensätze via suop2
suflip Datensatz spiegeln
suhtmath Unäre arithmetische Operationen mit Spuren und Headern
suinterp Interpolation zwischen den Spuren durch automatisches Event picken
sumixgathers Zwei Gather mischen
sunull Eine Spur Null setzen
suop Unäre arithmetische Operation auf einen Datensatz anwenden
suop2 Binäre arithmetische Operation auf zwei Datensätze anwenden
supermute Permutieren oder transponieren eine 3D-Datenwürfels
suramp Lineare Abnahme des Starts und/oder dem Ende einer Spur auf Null
surecip Summe gegenüberliegender Offsets eines vorbereiteten Datensatzes
recip Summe gegenüberliegender Offsets in einem "Common Midpoint-"Datensatz
suresamp Erneutes Abtasten
resamp Abtasten der ersten Dimension einer 2D-Funktion
suswapbytes Byte-Reihenfolge umdrehen
sutaper Abnahme der äußeren Spuren auf Null
sutxtaper Abnahme an den Kanten von (X,T)-Daten auf Null
suvcat Anhängen eines Datensatz an einen anderen mit möglicher Überlappung
suzero Über ein Zeitfenster Daten Null setzen
swapbytes Byte-Reihenfolge verschiedener Datentypen ändern
transp Transponieren einer n1- mittels einer n2-Matrix

Filterung, Transformation und Attribute

Bearbeiten
Ein-dimensionale Filter
suband Trapezoid-ähnlicher um   abnehmender Bandpassfilter via sufilter
subfilt Butterworth-bandpassfilter
suconv Faltung mit einem Filter vom User
sueipofi Eigenwerte (SVD) basierend auf einem Polarisationsfilter für 3D-Daten
sufilter Wendet einen nullphasigen um   abnehmenden Filter an
sufrac take general (fractional) time derivative or integral of data, plus a phase shift. Input is TIME DOMAIN data
supef Wiener-Filter (predictive error filter)
supofilt Polarisationfilter für 3D-Daten
sushape Wiener-Modellierungsfilter
sutvband zeitlich variabler um   abnehmender Bandpassfilter
suxcor Korrelation mit Filter vom User
Zwei-Dimensionale Filter
sudipfilt Steigungs-Filter in der Frequenz-Wellenzahl-Domäne (f-k-Domäne)[2]
sufxdecon Abschwächung des stochastischen Rauschens mittels FX-Dekonvolution
suk1k2filter Symmetrischer Wellenzahl-Domänenfilter (k-Domäne), der über das kartesische Produkt von zwei  -abfallenden polygonalen Filter, die durch k1 und k2 definiert ist
sumedian Median-Filter über eine userdefinierte polygonale Kurve mit der über Schlüsselworte definierten Distanz
sukfilter radialsymmetrischer polygonaler K-Domänenfilter, der über   abfällt
sukfrac wendet rationale Exponenten aus   auf phasenverschobene Daten an
Transforms and Attributes
entropy Entropie des Eingangssignals
mrafxzwt Multi-Resolution Analysis of a function F(X,Z) by Wavelet Transform
suamp output amp, phase, real or imag trace from domain data
suattributes trace attributes instantanteous amplitude, phase or frequency
suenv Instantaneous amplitude, frequency, and phase via: suattributes
suhilb Hilbert transform
suhrot Horizontal ROTation of three-component data
sufft fft real time traces to complex frequency traces
suifft fft complex frequency traces to real time traces
sugabor Outputs a time-frequency representation of seismic data via the Gabor transform-like multifilter analysis technique
suharlan signal-noise separation by the invertible linear transformation method of Harlan
sulog time axis log-stretch of seismic traces
suilog time axis inverse log-stretch of seismic traces
supolar POLarization analysis of three-component data
syradon compute forward or reverse Radon transform or remove multiples by using the parabolic Radon transform to estimate multiples and subtract
sutaup forward and inverse T-X and F-K global slant stacks
sutsq time axis time-squared stretch of seismic traces
sureduce convert traces to display in reduced time
suspecfk F-K Fourier SPECtrum of data set
suspecfx Fourier SPECtrum (T -> F) of traces
suspeck1k2 2D (K1,K2) Fourier SPECtrum of (x1,x2) data set

Gain, NMO, Stack and Standard Processes

Bearbeiten
Standard Processes
suagc perform agc on SU data
sudipdivcor Dip-dependent Divergence (spreading) correction
sudivcor Divergence (spreading) correction
sugain apply various types of gain to display traces
grm Generalized Reciprocal refraction analysis for a single layer
sumix compute weighted moving average (trace MIX) on a panel of seismic data
sumute mute above (or below) a user-defined polygonal curve with the distance along the curve specified by key header word
sunmo NMO for an arbitrary velocity function of time and CDP
supgc Programmed Gain Control--apply agc like function but the same function to all traces preserving relative amplitudes spatially
supws Phase stack or phase-weighted stack (PWS) of adjacent traces having the same key header word
suresstat Surface consistent source and receiver statics calculation
sustack stack adjacent traces having the same key header word
sustatic Elevation static corrections, apply corrections from headers or from a source and receiver statics file
sustaticrrs Elevation STATIC corrections, apply corrections from headers or from a source and receiver statics file, includes application of Residual Refraction Statics
unglitch clip outliers in data
Miscellaneous
suacor Auto Correlation
suttoz Resample from time to depth
suvibro Generates a Vibroseis sweep (linear, linear-segment, dB per octave, dB per hertz, T-power)
suvlength Adjust variable length traces to common length

SU community

Bearbeiten

Seismic Unix has a very large community, with lots of laboratories and researchers on the world using it. There's a listserver group where you can get help and post your questions about SU. To subscribe to it, click here.

You can also see the old posts that the users have already discussed, to do it click here.

Auszeichnungen

Bearbeiten

2002 - Society of Exploration Geophysicists Special Commendation [3]

1994 - University to Industry award from the Colorado chapter of the Technology Transfer Society [4]

Literatur

Bearbeiten
  • Geldart Telford: Applied Geophysics. Cambridge University Press, Cambridge 1990, ISBN 0-521-32693-1
  1. SU Help Page
  2. Telford (2002): f-k Domäne
  3. Award 2002
  4. Award 1994

Category:Seismik Category:Freie Software