SeisMain.jl

Main package for SeismicJulia project
Author SeismicJulia
Popularity
7 Stars
Updated Last
1 Year Ago
Started In
October 2017

SeisMain.jl

Build Status

This package contains tools to handle seismic data with the Seis format.

At the moment, it is updated and tested in Julia v1.1.

Installation

To use this package you must first install the Julia programming language. Then, run the Julia application and add the package

julia>using Pkg
julia>Pkg.add("SeisMain")

or

julia>]
pkg> add SeisMain

Finally, in the julia prompt type

julia>using SeisMain

Contents

  1. ReadWrite
  • Exported: SegyToSeis, SeisRead, SeisReadHeaders, SeisWrite, SeisWriteHeaders, SeisCopy, , SeisHeaderInfo, SeisToSegy, SeisRemove
  • Not exported: seis format: InitHeader, GrabHeader, PutHeader, GetNumTraces, ExtractHeader; su format: InitFileHeader, GrabFileHeader, PutFileHeader; segy format: InitSegyHeader, GrabSegyHeader,PutSegyHeader, MapHeaders
  1. Utils
  • SeisBinGeometry, SeisBinHeaders, SeisBinData, SeisPatch, SeisUnPatch, SeisProcess, SeisSort, SeisWindow.

Functions that are not exported can be accessed via SeisMain.ExtractHeader

Use julia help for detail. For example,

julia>?
help?> SegyToSeis

Basic usage

For SeisPlot, please refer here.

The following example produces the figure below.

using SeisMain
using SeisPlot 
run(`mkdir -p data`)
download("http://seismic.physics.ualberta.ca/data/616_79_PR.SGY", "data/616_79_PR.SGY")
SegyToSeis("data/616_79_PR.SGY", "data/616_79_PR.seis")
SeisWindow("data/616_79_PR.seis", "data/616_79_PR_2s.seis", key= ["t"], minval=[0.0], maxval=[2.0])
d, head, extent = SeisRead("data/616_79_PR_2s.seis")

SeisPlotTX(d, title="Seismic Plot Example", cmap="PuOr", wbox=9,ylabel="Time(s)",xlabel="Trace Number (index)",dy=extent.d1)

plot1

For developers: contributing to the project

  • New at GitHub? These basic commands and this dictionary might help.
  • This tutorial provides the basics steps you need to follow in order to fork the main repository, change the source code in your forked repository, commit the changes, and make pull requests using GitHub.
  • For contributions to the package, please follow the general guidelines given here: Modifications.md.

Credits

If you use the SeismicJulia project, please cite the following paper

@article{stanton2016efficient,
  title={Efficient geophysical research in Julia},
  author={Stanton, Aaron and Sacchi, Mauricio D},
  journal={CSEG GeoConvention 2016},
  pages={1--3},
  year={2016}
}