Overview models#

High level functionality#

HydroMT has the following high-level functionality for setting up models from raw data or adjusting models:

The building and clipping methods required the user to provide a region of interest. HydroMT provides several options to define a region based on a geospatial or hydrographic region.

The exact process of building or updating a model can be configured in a single configuration .ini file. This file describes the full pipeline of model methods and their arguments. The methods vary for the different model classes and Plugins, as documented in this documentation or for each plugin documentation websites.

Since v0.5.9, HydroMT can support both generalized model types (for example gridded, lumped or mesh models) and specific model types (plugins).

Generalized model class implementation#

The model API from HydroMT allows to build a model from scratch for different model concepts. This implementation is flexible such that users can create a model instance that matches their need. By default, the model components are returned and read from standard formats, as documented in the API reference. As of version 0.5.9, the grid model (distributed model), lumped model (e.g. semi-distributed, bucket models), mesh model (e.g. unstructured models) have been implemented. Other model classes such as network models will follow in future versions.

Specific model class implementation#

For a list of supported models see the Plugins page.

Model data components#

Model data components are data attributes which together define a model instance and are identical for all models. Each component represents a specific model component and is parsed to a specific Python data object that should adhere to certain specifications. These specification are class dependent. An overview is given below.

The table below lists model components common to all model classes

Component

Explanation

API

maps

Map data (resolution and CRS may vary between maps)

geoms

Static vector data

forcing

(Dynamic) forcing data (meteo or hydrological for example)

results

Model output

states

Initial model conditions

config

Settings for the model kernel simulation or model class

For each generalized model class, the respective components exist:

Component

Model class

Explanation

API

grid

GridModel

Static gridded data with on unified grid

response_units

LumpedModel

Static lumped data over the response_units

mesh

MeshModel

Static mesh data

Note

Prior to v0.5.9, the staticmaps and staticgeoms components were available. staticmaps is replaced with grid in GridModel, whereas staticgeoms is renamed to geoms for consistency but still available in the Model class.