Skip to main content

SEG-Y Seismic Data Inspection and Manipulation Tools using Xarray

Project description

Build status Python versions code style: black license Documentation Status

Access the full documentation for SEGY-SAK from Gh-pages

LOGO

SEGY-SAK aims to be your Python Swiss Army Knife for Seismic Data.

To do this SEGY-SAK offers two things; a commandline interface (CLI) for inspecting and converting SEG-Y data to a more friendly format called NETCDF4, and by providing convenience functions for the data using xarray. This includes lazy loading and streaming of data via the Xarray backend engine provided by SEGY-SAK.

We try hard to load the data the same way every time so your functions will work no-matter which cube/line you load. The xarray conventions we use are outlined in the documentation.

Why NETCDF4? Well, NETCDF4 is a fancy type of enclosed file binary format that allows for faster indexing and data retrieval than SEGY. We try our best to scan in the header information and to make it easy (or easier) to load SEGY in different formats, different configuration (2D, 2D gathers, 3D, 3D gathers). We do all this with the help of segyio which is a lower level interface to SEGY. If you stick to our xarray format of files we also offer utility functions to return to SEG-Y so you can export to other software.

Current Capabilities

  • CLI:

    • Convert 2D, 3D and gathers type SEG-Y to NETCDF4 and back. The NETCDF4 files are one line open with xarray.open_dataset.

    • Extract sub-volumes via cropping operations.

    • Read the EBCIDC/text header of the seismic file.

    • Perform a limited header scan.

  • Xarray and Python API:

    • Load SEG-Y data to a xarray.Dataset, dimensions are created by analysing trace header byte locations provided by the user.

    • Access header information and text headers in Python with convenience functions.

    • Select traces by UTM X and Y coordinates.

Installation

SEGY-SAK can be installed by using pip. Dependencies are specified in the pyproject.toml.

Python Package Index via pip

From the command line run the pip package manager

python -m pip install segysak

Install from source

Clone the SEGY-SAK Github repository and in the top level directory run

python -m pip install

CLI Quick Start

The command line interface (CLI) provides an easy tool to convert or manipulate SEG-Y data. In your Python command-line environment it can be accessed by calling segysak.

For a full list of options run

segysak --help

Any SEG-Y files converted using the convert command. For example

segysak convert test.segy

Can be loaded into Python using xarray.

test = xarray.open_dataset('test.SEISNC')

Complete Documentation

The complete documentation for SEGY-SAK can be found at Gh-Pages

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

segysak-0.1.dev115-py3-none-any.whl (92.5 kB view details)

Uploaded Python 3

File details

Details for the file segysak-0.1.dev115-py3-none-any.whl.

File metadata

  • Download URL: segysak-0.1.dev115-py3-none-any.whl
  • Upload date:
  • Size: 92.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for segysak-0.1.dev115-py3-none-any.whl
Algorithm Hash digest
SHA256 706fc612a655e60a26383161e8a0789b350df7978fe549ae77a9dcac6b37bd8e
MD5 b343ab9538e6cc373d3817ddd7e32bbe
BLAKE2b-256 ebae9fbfbea83164ff7619e0753e2b65caf8c124bef875493ffda61df08580aa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page