The mesoscale Hydrological Model
No Matches
mHM - Fortran modules

Core modules of mHM. More...


module  mo_canopy_interc
 Canopy interception.
module  mo_file
 Provides file names and units for mHM.
module  mo_global_variables
 Main global variables for mHM.
module  mo_init_states
 Initialization of all state variables of mHM.
module  mo_mhm
 Call all main processes of mHM.
module  mo_mhm_bfi
 Module to calculate BFI form gauging stations in mHM.
module  mo_mhm_cli
 Module to parse command line arguments of mHM.
module  mo_mhm_constants
 Provides mHM specific constants.
module  mo_mhm_eval
 Runs mhm with a specific parameter set and returns required variables, e.g.
module  mo_mhm_interface
 Module providing interfaces for mHM.
module  mo_mhm_interface_run
 Module providing interfaces for running preconfigured mHM.
module  mo_mhm_messages
 Module for mHM messages.
module  mo_mhm_read_config
 Reading of main model configurations.
module  mo_neutrons
 Models to predict neutron intensities above soils.
module  mo_objective_function
 Objective Functions for Optimization of mHM.
module  mo_pet
 Module for calculating reference/potential evapotranspiration [mm d-1].
module  mo_read_optional_data
 Read optional data for mHM calibration.
module  mo_restart
 reading and writing states, fluxes and configuration for restart of mHM.
module  mo_runoff
 Runoff generation.
module  mo_snow_accum_melt
 Snow melting and accumulation.
module  mo_soil_moisture
 Soil moisture of the different layers.
module  mo_startup
 Startup procedures for mHM.
module  mo_write_ascii
 Module to write ascii file output.
module  mo_write_fluxes_states
 Creates NetCDF output for different fluxes and state variables of mHM.


program mhm_driver
 Distributed precipitation-runoff model mHM.

Detailed Description

Core modules of mHM.

These modules provide the core components of mHM.

Function/Subroutine Documentation

◆ mhm_driver()

program mhm_driver

Distributed precipitation-runoff model mHM.

This is the main driver of mHM, which calls one instance of mHM for a multiple domains and a given period.

Typical mHM cell
  • Stephan Thober Nov 2013
    • added read in of latitude longitude fields
  • Matthias Zink Mar 2013
    • edited screen output for gauges added inflow gauges
  • Matthias Cuntz & Juliane Mai Mar 2014
    • Likelihood Kavetski uses 2 more parameters for the error model global_parameters -> local_parameters
  • Rohini Kumar Apr 2014
    • implementation of the mHM run on a single cell configuration also for the routing mode.
    • run mHM at the input data level i.e. L0 grid
  • Rohini Kumar May 2014
    • model run on a regular lat-lon grid or on a regular X-Y coordinate system
  • Stephan Thober May 2014
  • Matthias Cuntz & Juliane Mai Nov 2014
    • LAI input from daily, monthly or yearly files
  • Matthias Zink Mar 2015
    • added optional soil mositure read in for calibration
  • Luis Samaniego Jul 2015
    • added temporal directories for optimization
  • Stephan Thober Aug 2015
    • removed routing related variables
  • Stephan Thober Oct 2015
    • reorganized optimization (now compatible with mRM)
  • Oldrich Rakovec, Rohini Kumar Oct 2015
    • added reading of domain averaged TWS and objective function 15 for simultaneous calibration based on runoff and TWS
  • Rohini Kumar Mar 2016
    • options to handle different soil databases modified MPR to included soil horizon specific properties/parameters
  • Stephan Thober Nov 2016
    • implemented adaptive timestep for routing
  • Rohini Kumar Dec 2016
    • options to read (monthly mean) LAI fields
  • Robert Schweppe Jun 2018
    • refactoring and reformatting
  • Maren Kaluza Oct 2019
    • TWS to data structure
  • M.C. Demirel, Simon Stisen Jun 2020
    • New Soil Moisture Process: Feddes and FC dependency on root fraction coefficient processCase(3) = 4
  • Sebastian Müller Nov 2021
    • refactoring driver to use provided interfaces
Luis Samaniego & Rohini Kumar (UFZ)
Jun 2018

Definition at line 58 of file mhm_driver.f90.

References mo_mhm_interface::mhm_interface_finalize(), mo_mhm_interface::mhm_interface_init(), mo_mhm_interface::mhm_interface_run(), mo_mhm_interface::mhm_interface_run_optimization(), mo_common_mpi_tools::mpi_tools_finalize(), mo_common_mpi_tools::mpi_tools_init(), mo_common_mhm_mrm_variables::optimize, and mo_mhm_cli::parse_command_line().

Here is the call graph for this function: