Skip to main content

seisvelan

Interactive seismic normal-moveout velocity analysis.

Description

The seisvelan package provides an interactive GUI for picking seismic normal-moveout velocities on CMP gathers.

This little program is not meant to replace commercial seismic software optimized to run velocity analysis on large amounts of data. It's primarily meant for smaller projects in, for instance, academic environments to facilitate practical velocity picking in lectures, exercises or field practicals.

Key features

  • Pure Python code based on tkinter, i.e., minimal external dependencies.
  • Uses the seisio module for flexible I/O of seismic data.
  • GUI allows users to interactively change clips, axis labels, axis ticks, colormaps, and many more parameters.
  • OS-independent, i.e., should work on Linux, Windows, etc.

Getting Started

Dependencies

Required: matplotlib, numpy, seisio, tabulate, tkinter-tooltip, ttkbootstrap, ttkbootstrap-icons, ttkbootstrap-icons-bs

The seisio packages requires: numba, numpy, pandas, tabulate

Installation

Install from PyPI:

$> pip install seisvelan

Afterwards, simply call

$> seisvelan

at the commandline. You can use option -v to obtain additional logging information or -vv to put all modules that use the standard logging facility into debug mode, including seisvelan itself.

Install directly from gitlab:

$> pip install git+https://gitlab.kit.edu/thomas.hertweck/seisvelan.git

Editable install from source:

This version is intended for experts who would like to test the latest version or make modifications. Normal users should prefer to install a stable version.

$> git clone https://gitlab.kit.edu/thomas.hertweck/seisvelan.git

Once you acquired the source, you can install an editable version of seisvelan with:

$> cd seisvelan
$> pip install -e .

An alternative location of the source is https://github.com/ThomasHertweck/seisvelan.

Overview

Here is a screenshot of the GUI with some explanations:

seisvelan GUI

Testing

The current version of the seisvelan package has primarily been tested on Linux and Windows using Python 3.13 and 3.14.

Main author

Dr. Thomas Hertweck, geophysics@email.de

Citation

If you use the seisvelan package and you find it useful, getting some feedback would be very much appreciated. If you would like to cite this package, please use, for instance:

Hertweck, T. (2026). seisvelan: A Python GUI for interactive seismic velocity analysis. Version 0.1. url: https://gitlab.kit.edu/thomas.hertweck/seisvelan/ (visited on 08/25/2026).

Adjust year, version and last visited date as required. Here's a BibTeX entry:

@software{seisvelan,
  author  = {Hertweck, Thomas},
  year    = {2026},
  title   = {seisvelan: A Python GUI for interactive seismic velocity analysis},
  url     = {https://gitlab.kit.edu/thomas.hertweck/seisvelan/},
  urldate = {2026-08-25},
  version = {0.1.0}
}

License

This project is licensed under the GPL v3.0 License - see the LICENSE.md file for details

Metadata

Release files for seisvelan 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for seisvelan 0.1.0
File Size Uploaded
seisvelan-0.1.0.tar.gz 46.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for seisvelan 0.1.0
File Interpreter ABI Platform
seisvelan-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 96.4 kB

Release files / seisvelan-0.1.0.tar.gz

Download URL seisvelan-0.1.0.tar.gz
Size 46.9 kB
Tags Source
SHA-256 checksum
How to use checksums
620eb2ae6b980b99a7cf5fdc01686ed42fd3f2d449a3fd0354de4a04bfc377ab
BLAKE2b-256 checksum
How to use checksums
96ecfc84509cf7e2ed4fd7976f380914576ed412414c5de38ae46c3a4bd9d7c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release files / seisvelan-0.1.0-py3-none-any.whl

Download URL seisvelan-0.1.0-py3-none-any.whl
Size 49.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e8cf90a7bf02e1e951cd1f569ff674581be3ac9a1948450a9a8bac198143b9b
BLAKE2b-256 checksum
How to use checksums
0bdcbb6b4edc48f198f7c4543fed39d8359349548f9dad814c587659051fd6f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release history Release notifications | RSS feed

0.1.1

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page