Skip to main content

Make massive MODFLOW models

None

Project description

https://img.shields.io/badge/lifecycle-maturing-blue https://gitlab.com/deltares/imod/imod-python/badges/master/pipeline.svg https://img.shields.io/pypi/l/imod https://gitlab.com/deltares/imod/imod-python/badges/master/coverage.svg https://img.shields.io/conda/vn/conda-forge/imod.svg https://mybinder.org/badge_logo.svg

The imod Python package is designed to help you in your MODFLOW groundwater modeling efforts. It makes it easy to go from your raw data to a fully defined MODFLOW model, with the aim to make this process reproducable. Whether you want to build a simple 2D conceptual model, or a complex 3D regional model with millions of cells, imod-python scales automatically by making use of dask.

By building on top of popular Python packages like xarray, pandas, rasterio and geopandas, a lot of functionality comes for free.

Currently we support the creation of the following MODFLOW-based models:

  • USGS MODFLOW 6, structured grids only, and no advanced stress packages yet (LAK, MAW, SFR, UZF)

  • iMODFLOW

  • iMOD-WQ, which integrates SEAWAT (density-dependent groundwater flow) and MT3DMS (multi-species reactive transport calculations)

Documentation: https://imod.xyz/

Source code: https://gitlab.com/deltares/imod/imod-python

Interactive notebook examples:

https://mybinder.org/badge_logo.svg

Getting started

import imod

# read and write IPF files to pandas DataFrame
df = imod.ipf.read('wells.ipf')
imod.ipf.save('wells-out.ipf', df)

# get all calculated heads in a xarray DataArray
# with dimensions time, layer, y, x
da = imod.idf.open('path/to/results/head_*.idf')

# create a groundwater model
# abridged example, see examples for the full code
gwf_model = imod.mf6.GroundwaterFlowModel()
gwf_model["dis"] = imod.mf6.StructuredDiscretization(
    top=200.0, bottom=bottom, idomain=idomain
)
gwf_model["chd"] = imod.mf6.ConstantHead(
    head, print_input=True, print_flows=True, save_flows=True
)
simulation = imod.mf6.Modflow6Simulation("ex01-twri")
simulation["GWF_1"] = gwf_model
simulation.time_discretization(times=["2000-01-01", "2000-01-02"])
simulation.write(modeldir)

Authors

This Python package was written primarily by Martijn Visser and Huite Bootsma at Deltares.

Project details

None

Download files

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

Source Distribution

imod-0.10.0.tar.gz (265.1 kB view hashes)

Uploaded Source

Built Distribution

imod-0.10.0-py3-none-any.whl (225.3 kB view hashes)

Uploaded Python 3

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