Skip to content

Commit bf21f20

Browse files
authored
Merge pull request #273 from ArtesiaWater/dev
Update to version 0.7.0
2 parents 6f3ea00 + 46d7585 commit bf21f20

File tree

103 files changed

+6297
-1520
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+6297
-1520
lines changed

.github/workflows/ci.yml

-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ jobs:
5454
run: |
5555
py.test ./tests -m "not notebooks"
5656
57-
5857
- name: Run codacy-coverage-reporter
5958
uses: codacy/codacy-coverage-reporter-action@master
6059
with:

.gitignore

+7-1
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,13 @@ nlmod/bin/*
146146
!nlmod/bin/
147147
!nlmod/bin/mp7_2_002_provisional
148148
flowchartnlmod.pptx
149-
tests/data/
149+
150+
tests/data/*
151+
!tests/data/**/
152+
tests/data/mfoutput/*
153+
!tests/data/mfoutput/vertex/*
154+
!tests/data/mfoutput/structured/*
155+
150156
docs/examples/*/
151157
!docs/examples/data/
152158
!docs/examples/data/chloride_hbossche.nc

.prospector.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,10 @@ pylint:
2626
- no-else-raise
2727
- too-many-arguments
2828
- too-many-locals
29+
- too-many-branches
30+
- too-many-statements
2931
- logging-fstring-interpolation
32+
33+
mccabe:
34+
disable:
35+
- MC0001

.readthedocs.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ version: 2
77

88
# Set the version of Python and other tools you might need
99
build:
10-
os: ubuntu-20.04
10+
os: ubuntu-22.04
1111
tools:
12-
python: "3.9"
12+
python: "3.10"
1313

1414
# Build documentation in the docs/ directory with Sphinx
1515
sphinx:
@@ -20,7 +20,6 @@ sphinx:
2020

2121
# Optionally declare the Python requirements required to build your docs
2222
python:
23-
system_packages: true
2423
install:
2524
- method: pip
2625
path: .

README.md

+41-9
Original file line numberDiff line numberDiff line change
@@ -8,35 +8,67 @@
88
[![PyPI version](https://badge.fury.io/py/nlmod.svg)](https://badge.fury.io/py/nlmod)
99
[![Documentation Status](https://readthedocs.org/projects/nlmod/badge/?version=stable)](https://nlmod.readthedocs.io/en/stable/?badge=stable)
1010

11-
Python package with functions to process, build and visualise MODFLOW models in the Netherlands.
11+
Python package to build, run and visualize MODFLOW 6 groundwater models in the Netherlands.
1212

13-
The functions in nlmod have four main objectives:
13+
`nlmod` was built to allow users to write scripts to quickly download relevant data
14+
from publicly available sources, and build and post-process groundwater flow and
15+
transport models at different spatial and temporal scales to answer specific
16+
geohydrological questions. Scripting these steps, from downloading data to building
17+
groundwater models, makes models more reproducible and transparent.
18+
19+
The functions in `nlmod` have four main objectives:
1420

1521
1. Create and adapt the temporal and spatial discretization of a MODFLOW model using an xarray Dataset (`nlmod.dims`).
1622
2. Download and read data from external sources, project this data on the modelgrid and add this data to an xarray Dataset (`nlmod.read`).
17-
3. Use data in an xarray Dataset to build modflow packages using FloPy (`nlmod.gwf` for Modflow 6 and `nlmod.modpath` for Modpath).
23+
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).
1824
4. Visualise modeldata in Python (`nlmod.plot`) or GIS software (`nlmod.gis`).
1925

20-
More information can be found on the documentation-website: https://nlmod.readthedocs.io/.
26+
More information can be found on the documentation-website:
27+
https://nlmod.readthedocs.io/.
2128

2229
## Installation
2330

2431
Install the module with pip:
2532

2633
`pip install nlmod`
2734

28-
`nlmod` has many required dependencies: `flopy`, `xarray`, `netcdf4`, `rasterio`, `rioxarray`, `affine`, `geopandas`, `owslib`, `hydropandas`, `shapely`, `pyshp`, `rtree`, `matplotlib`, `dask` and `colorama`. On top of that there are some optional dependecies, only needed (and imported) in a single method. Examples of this are `bottleneck` (used in calculate_gxg), `geocube` (used in add_min_ahn_to_gdf), `h5netcdf` (used for hdf5 files backend in xarray). To install the nlmod with the optional dependencies use:
35+
`nlmod` has the following required dependencies:
36+
37+
* `flopy`
38+
* `xarray`
39+
* `netcdf4`
40+
* `rasterio`
41+
* `rioxarray`
42+
* `affine`
43+
* `geopandas`
44+
* `owslib`
45+
* `hydropandas`
46+
* `shapely`
47+
* `pyshp`
48+
* `rtree`
49+
* `matplotlib`
50+
* `dask`
51+
* `colorama`
52+
53+
There are some optional dependecies, only needed (and imported) in a single method.
54+
Examples of this are `bottleneck` (used in calculate_gxg), `geocube` (used in
55+
add_min_ahn_to_gdf), `h5netcdf` (used for hdf5 files backend in xarray), `scikit-image`
56+
(used in calculate_sea_coverage). To install `nlmod` with the optional dependencies use:
2957

3058
`pip install nlmod[full]`
3159

32-
When using pip the dependencies are automatically installed. Some dependencies are notoriously hard to install on certain platforms.
33-
Please see the [dependencies](https://github.com/ArtesiaWater/hydropandas#dependencies) section of the `hydropandas` package for more information on how to install these packages manually.
60+
When using pip the dependencies are automatically installed. Some dependencies are
61+
notoriously hard to install on certain platforms. Please see the
62+
[dependencies](https://github.com/ArtesiaWater/hydropandas#dependencies) section of the
63+
`hydropandas` package for more information on how to install these packages manually.
3464

3565
## Getting started
3666

37-
If you are using nlmod for the first time you need to download the MODFLOW executables. You can easily download these executables by running this Python code:
67+
If you are using `nlmod` for the first time you need to download the MODFLOW
68+
executables. You can easily download these executables by running this Python code:
3869

3970
import nlmod
4071
nlmod.download_mfbinaries()
4172

42-
After you've downloaded the executables you can run the Jupyter Notebooks in the examples folder. These notebooks illustrate how you to use the nlmod package.
73+
After you've downloaded the executables you can run the Jupyter Notebooks in the
74+
examples folder. These notebooks illustrate how to use the `nlmod` package.

docs/_static/logo_brabant_water.svg

+1
Loading

docs/_static/logo_evides.png

444 KB
Loading

0 commit comments

Comments
 (0)