/pykooh

Efficient implementations of the Konno Omachi filter in Python

Primary LanguageJupyter NotebookMIT LicenseMIT

pykooh

PyPi Cheese Shop Build Status Code Quality Test Coverage License DOI

Konno Ohmachi filter implemented in Numba.

This code implements Konno-Ohmachi spectral smoothing as defined in:

Konno, K. and Ohmachi, T., 1998. Ground-motion characteristics estimated
from spectral ratio between horizontal and vertical components of
microtremor. Bulletin of the Seismological Society of America, 88(1),
pp.228-241.

This code was originally written for smoothing sub-module in gmprocess by Bruce Worden. Dave Boore has provided notes on this topic, which also may be of interest. Notes regarding the characteristics of the Konno-Ohmachi filter and the implementation are provided in the implementation Jupyter Notebook.

Installation

pykooh is available via pip and can be installed with:

pip install pykooh

By default, pykooh uses numba for the fast implementation of the filter. Performance can be increased by using cython, but this requires a C complier. If a C compiler is available, install cython required dependencies with:

pip install pykooh[cython]

Usage

Smooth a signal using a bandwith of 30.

import pykooh
signal_smooth = pykooh.smooth(freqs, freqs_raw, signal_raw, 30)

Additional examples and comparison with obspy are provided in example.

Citation

Please cite this software using the following DOI.