5.13.2-dev0
mHM
The mesoscale Hydrological Model
Loading...
Searching...
No Matches
mo_mhm_interface Module Reference

Module providing interfaces for mHM. More...

Functions/Subroutines

subroutine, public mhm_interface_init (namelist_mhm, namelist_mhm_param, namelist_mhm_output, namelist_mrm_output, cwd)
 initialize mHM from given namelist paths.
 
subroutine, public mhm_interface_get_parameter (para)
 Get current global parameter value of mHM.
 
subroutine, public mhm_interface_get_parameter_number (n)
 Get number of current global parameter value of mHM.
 
subroutine, public mhm_interface_run ()
 Run mHM with current settings.
 
subroutine, public mhm_interface_run_optimization ()
 Run mHM optimization with current settings.
 
subroutine, public mhm_interface_finalize ()
 Write mHM restart.
 

Detailed Description

Module providing interfaces for mHM.

Interfaces to control the mHM workflow from outside (init, run, get infos, etc.).

Authors
Sebastian Mueller
Version
0.1
Date
Oct 2021

Function/Subroutine Documentation

◆ mhm_interface_finalize()

subroutine, public mo_mhm_interface::mhm_interface_finalize

Write mHM restart.

Definition at line 427 of file mo_mhm_interface.F90.

References mo_clean_up::deallocate_global_variables(), mo_common_variables::domainmeta, mo_mhm_messages::finish_message(), mo_common_variables::itimer, mo_common_variables::mhmfilerestartout, mo_mrm_write::mrm_write(), mo_common_mhm_mrm_variables::optimize, mo_common_variables::processmatrix, mo_common_variables::write_restart, and mo_restart::write_restart_files().

Referenced by model::finalize(), and mhm_driver().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mhm_interface_get_parameter()

subroutine, public mo_mhm_interface::mhm_interface_get_parameter ( real(dp), dimension(:), intent(out), allocatable  para)

Get current global parameter value of mHM.

Parameters
[out]paraglobal parameter values of mHM

Definition at line 231 of file mo_mhm_interface.F90.

References mo_common_variables::global_parameters.

◆ mhm_interface_get_parameter_number()

subroutine, public mo_mhm_interface::mhm_interface_get_parameter_number ( integer(i4), intent(out)  n)

Get number of current global parameter value of mHM.

Parameters
[out]nnumber of global parameter values of mHM

Definition at line 245 of file mo_mhm_interface.F90.

References mo_common_variables::global_parameters.

Referenced by get::parameter_length().

Here is the caller graph for this function:

◆ mhm_interface_init()

subroutine, public mo_mhm_interface::mhm_interface_init ( character(*), intent(in), optional  namelist_mhm,
character(*), intent(in), optional  namelist_mhm_param,
character(*), intent(in), optional  namelist_mhm_output,
character(*), intent(in), optional  namelist_mrm_output,
character(*), intent(in), optional  cwd 
)

initialize mHM from given namelist paths.

Parameters
[in]namelist_mhmpath to mHM configuration namelist
[in]namelist_mhm_parampath to mHM parameter namelist
[in]namelist_mhm_outputpath to mHM output namelist
[in]namelist_mrm_outputpath to mRM output namelist
[in]cwddesired working directory

Definition at line 37 of file mo_mhm_interface.F90.

References mo_global_variables::bfi_calc, mo_mhm_bfi::calculate_bfi(), mo_common_mhm_mrm_read_config::check_optimization_settings(), mo_common_mhm_mrm_read_config::common_mhm_mrm_read_config(), mo_common_read_config::common_read_config(), mo_global_variables::couple_cfg, mo_mhm_messages::domain_dir_check_message(), mo_common_variables::domainmeta, mo_file::file_defoutput, mo_file::file_namelist_mhm, mo_file::file_namelist_mhm_param, mo_common_variables::itimer, mo_global_variables::l1_etobs, mo_global_variables::l1_neutronsobs, mo_global_variables::l1_smobs, mo_global_variables::l1_twsaobs, mo_common_variables::level0, mo_common_variables::level1, mo_global_variables::meteo_handler, mo_startup::mhm_initialize(), mo_mhm_read_config::mhm_read_config(), mo_mpr_read_config::mpr_read_config(), mo_mrm_init::mrm_configuration(), mo_common_mhm_mrm_variables::mrm_coupling_mode, mo_mrm_init::mrm_init(), mo_common_mhm_mrm_variables::opti_function, mo_common_mhm_mrm_variables::optimize, mo_common_variables::processmatrix, mo_read_wrapper::read_data(), mo_common_mhm_mrm_variables::read_restart, mo_read_optional_data::readoptidataobs(), mo_common_mhm_mrm_variables::simper, mo_mhm_messages::startup_message(), mo_common_mhm_mrm_variables::timestep, mo_file::unamelist_mhm, mo_file::unamelist_mhm_param, and mo_write_ascii::write_configfile().

Referenced by model::init(), and mhm_driver().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mhm_interface_run()

subroutine, public mo_mhm_interface::mhm_interface_run

Run mHM with current settings.

Definition at line 257 of file mo_mhm_interface.F90.

References mo_common_variables::domainmeta, mo_common_variables::global_parameters, mo_common_variables::itimer, and mo_mhm_eval::mhm_eval().

Referenced by mhm_driver(), model::run(), and model::run_or_optimize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mhm_interface_run_optimization()

subroutine, public mo_mhm_interface::mhm_interface_run_optimization