mHM
The mesoscale Hydrological Model
|
Prepare meteorological forcings data for mHM. More...
Functions/Subroutines | |
subroutine, public | meteo_forcings_wrapper (idomain, datapath, inputformat, dataout1, readper, ntstepforcingday, level1, level2, lower, upper, ncvarname, bound_error) |
Prepare meteorological forcings data for mHM at Level-1. | |
subroutine, public | meteo_weights_wrapper (idomain, read_meteo_weights, datapath, dataout1, level1, level2, lower, upper, ncvarname) |
Prepare weights for meteorological forcings data for mHM at Level-1. | |
subroutine, public | chunk_config (idomain, tt, ntstepday, simper, timestep, timestep_model_inputs, read_flag, readper) |
determines the start date, end date, and read_flag given Domain id and current timestep | |
logical function | is_read (idomain, tt, ntstepday, simper, timestep, timestep_model_inputs) |
evaluate whether new chunk should be read at this timestep | |
subroutine | chunk_size (idomain, tt, ntstepday, simper, timestep_model_inputs, readper) |
calculate beginning and end of read Period, i.e. | |
Prepare meteorological forcings data for mHM.
Prepare meteorological forcings data for mHM.
COPYING
and COPYING.LESSER
provided with this software. The complete GNU license text can also be found at http://www.gnu.org/licenses/. subroutine, public mo_meteo_helper::chunk_config | ( | integer(i4), intent(in) | idomain, |
integer(i4), intent(in) | tt, | ||
integer(i4), intent(in) | ntstepday, | ||
type(period), dimension(:), intent(in) | simper, | ||
integer(i4), intent(in) | timestep, | ||
integer(i4), dimension(:), intent(in) | timestep_model_inputs, | ||
logical, intent(out) | read_flag, | ||
type(period), intent(out) | readper | ||
) |
determines the start date, end date, and read_flag given Domain id and current timestep
[in] | idomain | current Domain |
[in] | tt | current timestep |
[in] | ntstepday | Number of time intervals per day |
[in] | simper | warmPer + evalPer |
[in] | timestep | [h] simulation time step (= TS) in [h] |
[in] | timestep_model_inputs | frequency for reading meteo input |
[out] | read_flag | indicate whether reading data should be read |
Definition at line 283 of file mo_meteo_helper.f90.
References chunk_size(), is_read(), and mo_common_constants::nodata_dp.
Referenced by mo_meteo_handler::prepare_data().
|
private |
calculate beginning and end of read Period, i.e.
that is length of current chunk to read
[in] | idomain | current Domain to process |
[in] | tt | current time step |
[in] | ntstepday | Number of time intervals per day |
[in] | simper | warmPer + evalPer |
[in] | timestep_model_inputs | frequency for reading meteo input |
[out] | readper | start and end dates of read Period |
Definition at line 431 of file mo_meteo_helper.f90.
Referenced by chunk_config().
|
private |
evaluate whether new chunk should be read at this timestep
[in] | idomain | current Domain |
[in] | tt | current time step |
[in] | ntstepday | Number of time intervals per day |
[in] | simper | warmPer + evalPer |
[in] | timestep | [h] simulation time step (= TS) in [h] |
[in] | timestep_model_inputs | frequency for reading meteo input |
Definition at line 339 of file mo_meteo_helper.f90.
References is_read().
Referenced by chunk_config(), and is_read().
subroutine, public mo_meteo_helper::meteo_forcings_wrapper | ( | integer(i4), intent(in) | idomain, |
character(len = *), intent(in) | datapath, | ||
character(len = *), intent(in) | inputformat, | ||
real(dp), dimension(:, :), intent(inout), allocatable | dataout1, | ||
type(period), intent(in) | readper, | ||
integer(i4), intent(inout) | ntstepforcingday, | ||
type(grid), dimension(:), intent(in) | level1, | ||
type(grid), dimension(:), intent(in) | level2, | ||
real(dp), intent(in), optional | lower, | ||
real(dp), intent(in), optional | upper, | ||
character(len = *), intent(in), optional | ncvarname, | ||
logical, intent(in), optional | bound_error | ||
) |
Prepare meteorological forcings data for mHM at Level-1.
Prepare meteorological forcings data for mHM, which include 1) Reading meteo. datasets at their native resolution for every Domain 2) Perform aggregation or disaggregation of meteo. datasets from their native resolution (level-2) to the required hydrologic resolution (level-1) 3) Pad the above datasets of every Domain to their respective global ones
[in] | idomain | Domain Id |
[in] | datapath | Data path where a given meteo. variable is stored |
[in] | inputformat | only 'nc' possible at the moment |
[in,out] | dataout1 | Packed meterological variable for the whole simulation period |
[in] | readper | start and end dates of read period |
[in,out] | ntstepforcingday | Number of forcing intervals per day |
[in] | level1 | grid information at hydrologic level |
[in] | level2 | Reference of the metereological variables |
[in] | lower | Lower bound for check of validity of data values |
[in] | upper | Upper bound for check of validity of data values |
[in] | ncvarname | name of the variable (for .nc files) |
[in] | bound_error | .FALSE. to only warn about bound (lower, upper) violations, default = .TRUE. - raise an error |
Definition at line 50 of file mo_meteo_helper.f90.
References mo_common_constants::nodata_dp, and mo_read_nc::read_nc().
Referenced by mo_meteo_handler::prepare_data().
subroutine, public mo_meteo_helper::meteo_weights_wrapper | ( | integer(i4), intent(in) | idomain, |
logical, intent(in) | read_meteo_weights, | ||
character(len = *), intent(in) | datapath, | ||
real(dp), dimension(:, :, :), intent(inout), allocatable | dataout1, | ||
type(grid), dimension(:), intent(in) | level1, | ||
type(grid), dimension(:), intent(in) | level2, | ||
real(dp), intent(in), optional | lower, | ||
real(dp), intent(in), optional | upper, | ||
character(len = *), intent(in), optional | ncvarname | ||
) |
Prepare weights for meteorological forcings data for mHM at Level-1.
Prepare meteorological weights data for mHM, which include 1) Reading meteo. weights datasets at their native resolution for every Domain 2) Perform aggregation or disaggregation of meteo. weights datasets from their native resolution (level-2) to the required hydrologic resolution (level-1) 3) Pad the above datasets of every Domain to their respective global ones
[in] | idomain | Domain Id |
[in] | read_meteo_weights | Flag for reading meteo weights |
[in] | datapath | Data path where a given meteo. variable is stored |
[in,out] | dataout1 | Packed meterological variable for the whole simulation period |
[in] | level1 | grid information at hydrologic level |
[in] | level2 | Reference of the metereological variables |
[in] | lower | Lower bound for check of validity of data values |
[in] | upper | Upper bound for check of validity of data values |
[in] | ncvarname | name of the variable (for .nc files) |
Definition at line 175 of file mo_meteo_helper.f90.
References mo_common_constants::nodata_dp, and mo_read_nc::read_weights_nc().
Referenced by mo_meteo_handler::prepare_data().