Benutzer:Jigger D/Seismic Unix
Seismic Unix
| |
---|---|
Geschwindigkeitsanalyse mit SU | |
Basisdaten
| |
Entwickler | CWP |
Aktuelle Version | SU 42 (15. Februar 2010) |
Betriebssystem | Unix, Linux, Solaris |
Programmiersprache | 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 | Quelltext 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.
Syntax
[Bearbeiten | Quelltext bearbeiten]The Seismic Unix routines run under the Unix terminal, and can get maximum efficiency when using it with bash scripting techniques.
Simple routines
[Bearbeiten | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext 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 | Quelltext bearbeiten]- Geldart Telford: Applied Geophysics. Cambridge University Press, Cambridge 1990, ISBN 0-521-32693-1
Quellen
[Bearbeiten | Quelltext bearbeiten]- ↑ SU Help Page
- ↑ Telford (2002): f-k Domäne
- ↑ Award 2002
- ↑ Award 1994