BISIP is a fast, robust and open-source Python program for bayesian inversion of spectral induced polarization (SIP) data. It allows the evaluation of SIP parameters and their uncertainties by propagating measurement errors through the inversion process. Dias, Cole-Cole, Debye and Warburg decomposition schemes are currently implemented. Additional models will be included in the future.
In 2019 BISIP was re-written from the ground up with a powerful ensemble MCMC sampler, better code practice and improved documentation. See our original 2017 paper in Computers & Geosciences.
Visit https://bisip.readthedocs.io for the full documentation including API docs, tutorials and data file templates.
Clone this repository to your computer. Then navigate to the bisip directory. Finally run the setup.py script with Python. The -f
option forces a reinstall if a previous version of the package was already installed.
$ git clone https://github.com/clberube/bisip
$ cd bisip
$ python setup.py install -f
Using BISIP is as simple as importing a SIP model, initializing it and fitting it to a data set. BISIP also offers many utility functions for plotting and analyzing inversion results. See the tutorials for more examples.
from bisip import PolynomialDecomposition
# Define a data file to invert
filepath = '/path/to/DataFile_1.csv'
# Initialize the inversion model
model = PolynomialDecomposition(filepath=filepath,
nwalkers=32, # number of walkers
nsteps=1000, # number of MCMC steps
)
# Fit the model to this data file
model.fit()
Out:
100%|██████████| 1000/1000 [00:01<00:00, 558.64it/s]
The original BISIP code from the 2017 paper is archived in the bisip1-archive
branch.