Skip to main content

A python package for simulating hydrogeological virtual realities

Project description

HyVR: Turning your geofantasy into reality!

The Hydrogeological Virtual Reality simulation package (HyVR) is a Python module that helps researchers and practitioners generate subsurface models with multiple scales of heterogeneity that are based on geological concepts. The simulation outputs can then be used to explore groundwater flow and solute transport behaviour. This is facilitated by HyVR outputs in common flow simulation packages’ input formats. As each site is unique, HyVR has been designed that users can take the code and extend it to suit their particular simulation needs.

The original motivation for HyVR was the lack of tools for modelling sedimentary deposits that include bedding structure model outputs (i.e., dip and azimuth). Such bedding parameters were required to approximate full hydraulic-conductivity tensors for groundwater flow modelling. HyVR is able to simulate these bedding parameters and generate spatially distributed parameter fields, including full hydraulic-conductivity tensors. More information about HyVR is available in the online technical documentation.

I hope you enjoy using HyVR much more than I enjoyed putting it together! I look forward to seeing what kind of funky fields you created in the course of your work.

HyVR can be attributed by citing the following journal article: Bennett, J. P., Haslauer, C. P., Ross, M., & Cirpka, O. A. (2018). An open, object-based framework for generating anisotropy in sedimentary subsurface models. Groundwater. DOI: 10.1111/gwat.12803. A preprint version of the article is available here.

Installing the HyVR package

Installing Python

Windows

If you are using Windows, we recommend installing the Anaconda distribution of Python 3. This distribution has the majority of dependencies that HyVR requires.

It is also a good idea to install the HyVR package into a virtual environment. Do this by opening a command prompt window and typing the following:

conda create --name hyvr_env

You need to then activate this environment:

conda activate hyvr_env

Linux

Depending on your preferences you can either use the Anaconda/Miniconda distribution of python, or the version of your package manager. If you choose the former, follow the same steps as for Windows.

If you choose the latter, you probably already have Python 3 installed. If not, you can install it using your package manager (e.g. apt on Ubuntu/Debian).

In any way we recommend using a virtual environment. Non-conda users can use for example virtualenvwrapper.

Installing HyVR

Once you have activated your virtual environment, you can install HyVR from PyPI using pip:

pip install hyvr

The version on PyPI should always be up to date. If it’s not, you can also install HyVR from github:

git clone https://github.com/driftingtides/hyvr.git
pip install hyvr

To install from source you need a C/C++ compiler. On Windows you can get one by installing Build Tools for Visual Studio.

Installation from conda-forge will (hopefully) be coming soon.

Usage

To use HyVR you have to create a configuration file with your settings. You can then run HyVR the following way:

(hyvr_env) $ python -m hyvr my_configfile.ini

HyVR will then run and store all results in a subdirectory. If no configfile is given, it will run a test case instead:

(hyvr_env) $ python -m hyvr

If you want to use HyVR in a script, you can import it and use the run function:

import hyvr
hyvr.run('my_configfile.ini')

Examples can be found in the testcases directory of the github repository, the general setup and possible options of the config-file are described in the documentation. Currently only made.ini is ported to version 1.0.0.

Source

The most current version of HyVR will be available at this github repository; a version will also be available on the PyPI index which can be installed using pip.

Requirements

Python

HyVR was developed for use with Python 3.4 or greater. It may be possible to use with earlier versions of Python 3, however this has not been tested.

Dependencies

Development

HyVR has been developed by Jeremy Bennett (website) as part of his doctoral research at the University of Tübingen and by Samuel Scherrer as a student assistant.

You can contact the developer(s) of HyVR by email or via github.

Problems, Bugs, Unclear Documentation

If you have problems with HyVR have a look at the troubleshooting section. If this doesn’t help, don’t hesitate to contact us via email or at github.

If you find that the documentation is unclear, lacking, or wrong, please also contact us.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyvr-1.0.1.tar.gz (978.5 kB view details)

Uploaded Source

File details

Details for the file hyvr-1.0.1.tar.gz.

File metadata

  • Download URL: hyvr-1.0.1.tar.gz
  • Upload date:
  • Size: 978.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3

File hashes

Hashes for hyvr-1.0.1.tar.gz
Algorithm Hash digest
SHA256 ae38ee8b6c1ca989abedadee922d47400b82163b2b2d2827187b176f72fee5cb
MD5 4c2c76c282ed7f8c2ef860f3d97be3ba
BLAKE2b-256 3cfe01ef6b798018131f3feac1a85f686b698390f41983086d4a245e1cdcf423

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page