river_initialise Subroutine

public subroutine river_initialise(mb, mch, mhyd, subbasin_input_file_id)

Uses

  • proc~~river_initialise~~UsesGraph proc~river_initialise river_initialise module~input input proc~river_initialise->module~input module~output output proc~river_initialise->module~output module~utilities utilities module~input->module~utilities module~output->module~utilities

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: mb
integer, intent(in) :: mch
integer, intent(in) :: mhyd
integer, intent(in) :: subbasin_input_file_id

Calls

proc~~river_initialise~~CallsGraph proc~river_initialise river_initialise proc~get_config_fid get_config_fid proc~river_initialise->proc~get_config_fid proc~river_allocate river_allocate proc~river_initialise->proc~river_allocate proc~river_read_input river_read_input proc~river_initialise->proc~river_read_input proc~output_register_subbasin_var output_register_subbasin_var proc~river_initialise->proc~output_register_subbasin_var proc~open_file open_file proc~get_config_fid->proc~open_file proc~read_real_column read_real_column proc~river_read_input->proc~read_real_column proc~output_register_var output_register_var proc~output_register_subbasin_var->proc~output_register_var proc~log_error log_error proc~output_register_var->proc~log_error proc~string_index string_index proc~output_register_var->proc~string_index proc~open_file->proc~log_error proc~input_type_conversion_error input_type_conversion_error proc~read_real_column->proc~input_type_conversion_error proc~move_lines move_lines proc~read_real_column->proc~move_lines proc~read_real_column->proc~log_error proc~check_range check_range proc~read_real_column->proc~check_range proc~read_csv_item read_csv_item proc~read_real_column->proc~read_csv_item proc~header_column_index header_column_index proc~read_real_column->proc~header_column_index proc~input_error_column_not_found input_error_column_not_found proc~read_real_column->proc~input_error_column_not_found proc~input_type_conversion_error->proc~log_error proc~log_message log_message proc~log_error->proc~log_message proc~check_range->proc~log_error proc~log_warn log_warn proc~check_range->proc~log_warn proc~out_of_range_error out_of_range_error proc~check_range->proc~out_of_range_error proc~header_column_index->proc~move_lines proc~header_column_index->proc~input_error_column_not_found proc~input_error_column_not_found->proc~log_error proc~log_warn->proc~log_message proc~out_of_range_error->proc~log_error proc~to_string to_string proc~out_of_range_error->proc~to_string proc~log_write log_write proc~log_message->proc~log_write proc~log_format_message log_format_message proc~log_message->proc~log_format_message proc~log_write->proc~to_string proc~date_time_str date_time_str proc~log_format_message->proc~date_time_str proc~colourise colourise proc~log_format_message->proc~colourise proc~colourise->proc~string_index

Called by

proc~~river_initialise~~CalledByGraph proc~river_initialise river_initialise proc~initialise initialise proc~initialise->proc~river_initialise program~swim swim program~swim->proc~initialise

Contents

Source Code


Source Code

  subroutine river_initialise(mb, mch, mhyd, subbasin_input_file_id)
    use input, only : get_config_fid
    use output, only : output_register_subbasin_var
    integer, intent(in) :: mb, mch, mhyd, subbasin_input_file_id

    read(get_config_fid(), RIVER_PARAMETERS)

    river_discharge_output_id = output_register_subbasin_var("discharge")

    call river_allocate(mb, mch, mhyd)
    call river_read_input(subbasin_input_file_id)

    ! In the SWIM manual it is suggested to set roc1 and roc3 values to 0.
    roc1 = 0.
    roc3 = 0.

  end subroutine river_initialise