Skip to main content

cself_tools

cself_tools is a Python package for downloading, processing, and plotting geomagnetic and very-low-frequency apparent resistivity data from irregular Oracle tables.

The package focuses on two workflows:

  • Magnetic data: download F/H/D/I/X/Y/Z components, split by station, point, and FINSTR, and export CSV/TXT/PNG outputs.
  • Apparent resistivity: query RXY/RYX/RXX/RYY components, filter outliers, compute moving averages, save raw CSV data, and generate report-ready plots.

Installation

pip install cself-tools

For development:

pip install -e .[dev,qzad]

Oracle access requires cx_Oracle and an Oracle Instant Client compatible with the target database.

Database configuration

Named connections are loaded directly from .adder-style configuration files, so addereq is no longer required.

By default, the package searches:

~/.adder/conf
~/.adder/config
~/.adder/connections.ini
~/.adder/connections.json

Example INI-style config:

[China]
username = qzdata
password = pass#word
dsn = 127.0.0.1:1521/orcl

Passwords are read as plain values, so special characters such as # are preserved.

Command line usage

After installation, use the cself-tools command.

Download magnetic data:

cself-tools magnetic download --connection China --start 2000-01-01 --components F H D I X Y Z

Plot apparent resistivity:

cself-tools resistivity plot --connection DB-Shandong-12 --station-id 37022 --point-id E --components RXY --frequencies 22 74

Common database options:

--connection China
--oracle-client-lib C:\oracle\instantclient_19_22
--config-dir C:\Users\you\.adder

Outputs

Default outputs are written below outputs/:

outputs/
  magnetic/
    csv/
    txt/
    plots/
    manifest.csv
  resistivity/
    csv/
    plots/

The magnetic manifest records station, point, FINSTR, row count, date range, file path, and same-day duplicate counts.

Python API

Legacy APIs are still available:

from cself_tools import query_data, process_and_plot_mt_data

New workflow modules are preferred:

from cself_tools.resistivity import ResistivityRequest, load_resistivity, plot_resistivity
from cself_tools.magnetic import MagneticDownloadRequest, download_magnetic

Plot style

Plots use a consistent report-ready style:

  • 300 dpi PNG output
  • compact multi-panel time-series layout
  • blue observed lines and gray smoothed trends
  • automatic line breaks across missing time intervals
  • apparent resistivity labels such as rho_xy and units Ohm m

Release checklist

python -m build
twine check dist/*
pip install dist/*.whl
cself-tools --help

Download files

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

Source Distribution

cself_tools-0.5.3.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

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

cself_tools-0.5.3-py3-none-any.whl (31.5 kB view details)

Uploaded Python 3

File details

Details for the file cself_tools-0.5.3.tar.gz.

File metadata

  • Download URL: cself_tools-0.5.3.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.13

File hashes

Hashes for cself_tools-0.5.3.tar.gz
Algorithm Hash digest
SHA256 46046fd69770e01e75538dc80adc7dac41ad57cbb16662ae1d1f51513f5c294c
MD5 43aede8298856049bfcbe3424ddc6726
BLAKE2b-256 9d293b593d8b3cd9dc571a607d304cfe3ff5eb61b95242062406db60f82e65e2

See more details on using hashes here.

File details

Details for the file cself_tools-0.5.3-py3-none-any.whl.

File metadata

  • Download URL: cself_tools-0.5.3-py3-none-any.whl
  • Upload date:
  • Size: 31.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.13

File hashes

Hashes for cself_tools-0.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2a29b3556eb7519c3954a2d58b847ebc50b0e0ed7176067c4d41610e0b453f83
MD5 9a0f7d125ffb8b980c1c7888687a944c
BLAKE2b-256 adb3e44ad821996be3659c5f63b9255a91094dc26892b4aa4396cf3fb36f3967

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 Sentry Error logging StatusPage Status page