Installation
GEONE relies on pre-compiled C libraries (DEESSE and GEOSCLASSIC core).
Note
GEONE is available on:
PyPI (The Python Package Index)
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 .
Tip
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
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.
Requirements
The following python packages are used by GEONE:
matplotlib
multiprocessing (for parallel processes)
numpy
pandas
pyvista
scipy
Note
numpy version >= 2 is used.
Note
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
Note about multiprocessing
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.
Note
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”.
Removing GEONE
In a terminal type:
pip uninstall -y geone
Note
First remove the directory ‘geone.egg-info’ from the current directory (if present).