Current version : 1.3.4
GEONE is a Python3 package providing a set of tools for geostatistical modeling, including:
- multiple-point statistics (MPS) simulation as "DEESSE wrapper"
- geostatistical tools based on two-point statistics, including "GEOSCLASSIC wrapper"
- miscellaneous algorithms based on random processes
The documentation of GEONE is on https://geone.readthedocs.io.
The notebooks (examples) from the documentation are available in docs/source/notebooks.
GEONE is available on:
- PyPI (The Python Package Index)
- Github repository
GEONE relies on pre-compiled C libraries (DEESSE and GEOSCLASSIC core), available for:
- linux (x86_64 with GLIBC 2.35 or GLIBC 2.27) and python 3.9 to 3.13
- mac (x86_64 or arm64) and python 3.9 to 3.13
- windows and python 3.9 to 3.13
Installation from PyPI
In a terminal type
pip install geone
Or, equivalently: python -m pip install geone.
Installation from the Github repository
In a terminal, change directory where to download GEONE, and type
git clone https://github.com/randlab/geone.git
cd geone
pip install .
Note: use pip install . --verbose or pip install . -v for printing (more) messages during the installation.
Alternatively:
- Instead of
git clone ..., you can download GEONE from the Github repository: click on the green button "code" and choose "Download ZIP". - Then, unzip the archive on your computer
- Finally, in a terminal, go into the unzipped directory, and type
pip install .
Warning - Using GEONE
If the installation has been done from github, do not launch python from the directory containing the downloaded sources and where the installation has been done (with pip), otherwise import geone will fail.
The following python packages are used by GEONE:
matplotlibmultiprocessing(for parallel processes)numpypandaspyvistascipy
Note: numpy version >= 2 is used.
Remark: the package ipykernel is required to run the notebooks.
GEONE has been tested with the following settings:
platform_system : Linux
python version : sys.version_info(major=3, minor=13, micro=7, releaselevel='final', serial=0)
glibc_str : glibc 2.35
glibc_version : (2, 35)
machine : x86_64
matplotlib.__version__ = 3.10.7
numpy.__version__ = 2.3.3
pandas.__version__ = 2.3.3
pyvista.__version__ = 0.46.3
scipy.__version__ = 1.16.2
Some functions uses multiprocessing with each process running on multi-threads (OpenMP in pre-compiled C libraries). If such a function blocks, this might be due to the "start method" of multiprocessing, which is set to 'fork' by default on Linux. Setting "start method" to 'spawn' might solve this issue, at the cost of performance. Or, to keep better performance, "start method" can be let (set) to 'fork', and in function allowing to specify the number of process(es) nproc and the number of thread(s) per process nthreads_per_proc, use set-up such that nproc=1 or nthreads_per_proc=1.
Important: if needed, "start method" of multiprocessing must be set at START OF THE PYTHON SESSION, i.e. before running any multiprocessing task, with
import multiprocessing
multiprocessing.set_start_method(start_method)
where start_method is a string (e.g. 'spawn', 'fork'); or this can be forced by using the keyword argument force=True. Note that multiprocessing.get_start_method() returns the "start method".
In a terminal type
pip uninstall -y geone
Note: First remove the directory 'geone.egg-info' from the current directory (if present).
See LICENSE file.
GEONE is developed by Julien Straubhaar and Philippe Renard.