Skip to content

hkexgroup/resipy

Repository files navigation

GUI for R* family of codes (R2, cR2, R3t, cR3t)

ResIPy is a Python wrapper around the R* family of codes (for 2D/3D DC/IP inversion). ResIPy provides a standalone graphical user interface (GUI) along with a Python API (Application Programming Interface) for use in Jupyter notebook. Have a look at the documentation and the examples or subscribe to our YouTube channel (ResIPy) to learn more.

ResIPy aims to be

  • (1) Simple and intuitive to use (you can invert your data in one-click with all default settings)
  • (2) But still allowing the user to have full control on data filtering, error modelling, mesh parameters and inversion settings

Downloads

Version 3.5.4:
win mac linux
macOS Mojave and before: mac

Note for Windows users:

  • If your Windows prevents you from running ResIPy on first run, on the “Windows protected your PC” message, click on “More info” and then click on “Run anyway” from the bottom. You may also allow ResIPy to run from your antivirus program.

Notes for Mac and Linux users:

  • You will need to have wine installed as the executables beneath are compiled for Windows (detailed instruction below).
  • On MacOS: If you get "ResIPy is damaged" or "ResIPy cannot be opened" error, run this command in terminal xattr -cr /Applications/ResIPy.app
  • On Linux: If you get "command not found" error, you might need to allow "executable permission" to the binary, using sudo chmod 775 ResIPy

Zip files:
win mac linux
macOS Mojave and before: mac

What it can do

Project structure

General overlook of the project structure with the three main parts.
Don't hesitate to consult the CONTRIBUTING.md for more informations.
The full description of the API can be found in the documentation.

Try it from source

After downloading or cloning (git clone https://gitlab.com/hkex/resipy) the repository, you can run the GUI using:

cd resipy/src
python ui.py

You can also try out the API on Binder or using:

cd resipy/jupyter-notebook
python -m notebook # or just 'jupyter notebook'

Wine installation (Linux and Mac users)

ResIPy contains executables that are built only for windows. To run them you will need to install wine.

On Linux

sudo apt-get install wine-stable # if using debian/ubuntu based distribution
sudo pacman -S install wine # if using arch based distribution

On Mac

IMPORTANT NOTE: Please try installing wine > v5.0.0 with below instructions first. ResIPy cannot be run from within the dmg. You must drag it to a folder on your filesystem (e.g., Applications, Desktop).

You first need to install wine through Homebrew to be able to run .exe files on you Mac OS X.

Open "terminal" and install Homebrew by pasting below in your terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Follow the instructions. (You may need to install Command Line Tools)

Once the Homebrew installation is successfully done, install xquartz by pasting below command in terminal:

brew install xquartz

Then install wine:

On macOS Catalina and higher (paste below in terminal):

brew install --no-quarantine wine-stable

On older macOS versions (paste below in terminal):

brew install wine

If all is done with no errors, you are ready to run ResIPy!

NOTE: The first time you're running wine (e.g., creating a triangular mesh) it will need to be updated and install a few dependencies and that will take some time.

NOTE: If you get "ResIPy is damaged" error, run this command in terminal xattr -cr /Applications/ResIPy.app (instead of "/Applications/ResIPy.app" put the address to the place you have the app).

Feature request and bug report

If there is a feature you would like to see in the API or the GUI or if there is a bug you want to report, please raise an issue on Gitlab describing it. We need to be able to reproduce the issue in order to fix it, so please provide example files and error log, related to your issue.

You can also have a look at the FAQ and list of known issues on the wiki.

Contributing

If you wish to contribute to the code, please familiarize yourself with the guidelines.

Citing ResIPy

If you use ResIPy for you work, please cite this paper as:

Blanchy G., Saneiyan S., Boyd J., McLachlan P. and Binley A. 2020.
“ResIPy, an Intuitive Open Source Software for Complex Geoelectrical Inversion/Modeling.”
Computers & Geosciences, February, 104423. https://doi.org/10.1016/j.cageo.2020.104423.

BibTex code:

@article{blanchy_resipy_2020,
	title = {{ResIPy}, an intuitive open source software for complex geoelectrical inversion/modeling},
	issn = {0098-3004},
	url = {http://www.sciencedirect.com/science/article/pii/S0098300419308192},
	doi = {10.1016/j.cageo.2020.104423},
	pages = {104423},
	journaltitle = {Computers \& Geosciences},
	author = {Blanchy, Guillaume and Saneiyan, Sina and Boyd, James and {McLachlan}, Paul and Binley, Andrew},
	urldate = {2020-02-07},
	date = {2020-02-04},
	langid = {english}
}

Temporary folder issue

Before v2.0.0 (included), the Windows version of ResIPy had a bug that causes the temporary folder where ResIPy runs to not be deleted when the program closed. This has been corrected in v2.0.1. When running multiple times this can take up space. Navigate to C:\Users\<username>\AppData\Local\Temp if you want to manually delete them. Those files can be automatically deleted by Windows or third party apps (such as CC cleaner) when there is low disk-space.

All releases

Below are the links to current and previous releases of ResIPy/pyR2. Note that previous releases may contain bugs/issues and it is recommended to always use the latest release available.

Current stable release:

  • v3.5.4 win mac linux

Past releases:

Zenodo project DOI: zenodo doi

Coverage (part of the code covered by the CI test): coverage report