Skip to main content

Python package to build, run and visualize MODFLOW 6 groundwater models in the Netherlands.

Project description

nlmod

nlmod Codacy Badge Codacy Badge PyPI version Documentation Status

Python package to build, run and visualize MODFLOW 6 groundwater models in the Netherlands.

nlmod was built to allow users to write scripts to quickly download relevant data from publicly available sources, and build and post-process groundwater flow and transport models at different spatial and temporal scales to answer specific geohydrological questions. Scripting these steps, from downloading data to building groundwater models, makes models more reproducible and transparent.

The functions in nlmod have four main objectives:

  1. Create and adapt the temporal and spatial discretization of a MODFLOW model using an xarray Dataset (nlmod.dims).
  2. Download and read data from external sources, project this data on the modelgrid and add this data to an xarray Dataset (nlmod.read).
  3. Use data in an xarray Dataset to build modflow packages for both groundwater flow and transport models using FloPy (nlmod.sim, nlmod.gwf and nlmod.gwt for Modflow 6 and nlmod.modpath for Modpath).
  4. Visualise modeldata in Python (nlmod.plot) or GIS software (nlmod.gis).

More information can be found on the documentation-website: https://nlmod.readthedocs.io/.

Installation

Install the module with pip:

pip install nlmod

nlmod has the following required dependencies:

  • flopy
  • xarray
  • netcdf4
  • rasterio
  • rioxarray
  • affine
  • geopandas
  • owslib
  • hydropandas
  • shapely
  • pyshp
  • rtree
  • matplotlib
  • dask
  • colorama
  • joblib
  • bottleneck

There are some optional dependecies, only needed (and imported) in a single method. Examples of this are geocube (used in add_min_ahn_to_gdf), h5netcdf (used for hdf5 files backend in xarray), scikit-image (used in calculate_sea_coverage). To install nlmod with the optional dependencies use:

pip install nlmod[full]

When using pip the dependencies are automatically installed. Some dependencies are notoriously hard to install on certain platforms. Please see the dependencies section of the hydropandas package for more information on how to install these packages manually.

Getting started

Start with the Jupyter Notebooks in the examples folder. These notebooks illustrate how to use the nlmod package.

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

nlmod-0.8.1.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

nlmod-0.8.1-py3-none-any.whl (2.7 MB view details)

Uploaded Python 3

File details

Details for the file nlmod-0.8.1.tar.gz.

File metadata

  • Download URL: nlmod-0.8.1.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for nlmod-0.8.1.tar.gz
Algorithm Hash digest
SHA256 7cc56b533e2d3deff4c54865ade00e30d9d21907114f02270249a6e1fc94d0bc
MD5 b480e560ac31d69d2b24aa4f1c56e7eb
BLAKE2b-256 b327a446d74b81cc1151b2bf81ad9fe3c82f9f42cc62e8b40ba27a026905128a

See more details on using hashes here.

File details

Details for the file nlmod-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: nlmod-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for nlmod-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7f4728c9d070f0d55408aaec779ad409c9be97dc6d85d79cfa96ef3deec700a8
MD5 a878342da163c08459a50e219fde92a5
BLAKE2b-256 f273d3022e11bfa305eda4602aaaede65a666ef73d082dc427c9adb46293b337

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