|
Soil Water Balance (SWB2)
|
Data Types | |
| type | model_domain_t |
| interface | array_method |
| interface | index_method |
| interface | minmaxmean |
| type | cell_col_row_t |
Variables | |
| type(cell_col_row_t), dimension(:), allocatable | dump |
| type(cell_col_row_t), dimension(:), allocatable | temp_dump |
| type(model_domain_t), public | model |
| real(c_float), dimension(:,:), allocatable, public | rooting_depth_max |
| type(general_grid_t), pointer | prooting_depth |
| subroutine model_domain::get_weather_data | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 993 of file model_domain.F90.
| subroutine model_domain::initialize_arrays_sub | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::initialize_grid_sub | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | inumcols, | ||
| integer (c_int), intent(in) | inumrows, | ||
| real (c_double), intent(in) | dx_ll, | ||
| real (c_double), intent(in) | dy_ll, | ||
| real (c_double), intent(in) | dgridcellsize ) |
| subroutine, public model_domain::initialize_landuse_codes |
Match landuse codes from table with those contained in the gridded landuse.
This routine loops through all known
Determine how many landuse codes are present
Definition at line 866 of file model_domain.F90.

| subroutine model_domain::initialize_methods_sub | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 656 of file model_domain.F90.
| subroutine model_domain::initialize_row_column_indices_sub | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 602 of file model_domain.F90.
| subroutine model_domain::minmaxmean_float | ( | real (c_float), dimension(:) | variable, |
| character (len=*), intent(in) | varname, | ||
| logical, dimension(:), optional | active_cells ) |
Definition at line 3780 of file model_domain.F90.
| subroutine model_domain::minmaxmean_int | ( | integer (c_int), dimension(:) | variable, |
| character (len=*), intent(in) | varname, | ||
| logical, dimension(:), optional | active_cells ) |
Definition at line 3832 of file model_domain.F90.
| subroutine model_domain::model_calculate_actual_et_fao56 | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_actual_et_fao56__two_stage | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_actual_et_gridded_values | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_actual_et_thornthwaite_mather | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_climatic_water_deficit | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | cell_index ) |
Definition at line 3550 of file model_domain.F90.
| subroutine model_domain::model_calculate_continuous_frozen_ground_index | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_direct_net_infiltration_gridded | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
| subroutine model_domain::model_calculate_direct_net_infiltration_none | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
Definition at line 3232 of file model_domain.F90.
| subroutine model_domain::model_calculate_direct_soil_moisture_gridded | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
| subroutine model_domain::model_calculate_direct_soil_moisture_none | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
Definition at line 3278 of file model_domain.F90.
| subroutine model_domain::model_calculate_et_daily_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_et_hargreaves | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_et_jensen_haise | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_et_monthly_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_et_monthly_zone_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_fog_monthly_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_fog_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3508 of file model_domain.F90.
| subroutine model_domain::model_calculate_gdd | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_gdd_be | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_gdd_none | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see.
Definition at line 2783 of file model_domain.F90.
| subroutine model_domain::model_calculate_interception_bucket | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_interception_gash | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_irrigation | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_irrigation_none | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
Nothing here to see.
Definition at line 2444 of file model_domain.F90.
| subroutine model_domain::model_calculate_maximum_net_infiltration_gridded | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
| subroutine model_domain::model_calculate_maximum_net_infiltration_none | ( | class (model_domain_t), intent(inout) | this, |
| integer ( c_int ), intent(in) | indx ) |
Definition at line 3323 of file model_domain.F90.
| subroutine model_domain::model_calculate_mean_air_temperature | ( | class ( model_domain_t ), intent(inout) | this | ) |
Definition at line 3530 of file model_domain.F90.
| subroutine model_domain::model_calculate_modified_gdd | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_range_in_air_temperature | ( | class ( model_domain_t ), intent(inout) | this | ) |
Definition at line 3540 of file model_domain.F90.
| subroutine model_domain::model_calculate_routing_d8 | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_routing_none | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
Definition at line 1787 of file model_domain.F90.
| subroutine model_domain::model_calculate_runoff_curve_number | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | cell_index ) |
@TODO: Should interception term be part of this? Initial abstraction should include some of this interception...
Definition at line 2127 of file model_domain.F90.

| subroutine model_domain::model_calculate_runoff_gridded_values | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | indx ) |
| subroutine model_domain::model_calculate_snowfall_original | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1921 of file model_domain.F90.
| subroutine model_domain::model_calculate_snowfall_prms | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1942 of file model_domain.F90.
| subroutine model_domain::model_calculate_snowmelt_original | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_calculate_snowmelt_prms | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1979 of file model_domain.F90.
| subroutine model_domain::model_dump_variables | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | unitnum, | ||
| integer (c_int), intent(in) | indx_start, | ||
| integer (c_int), intent(in), optional | indx_end ) |
| subroutine model_domain::model_dump_variables_by_cell | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_dump_variables_none | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see.
Definition at line 2879 of file model_domain.F90.
| subroutine model_domain::model_get_maximum_air_temperature_normal | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3565 of file model_domain.F90.
| subroutine model_domain::model_get_maximum_air_temperature_tabular | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_get_minimum_air_temperature_normal | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3611 of file model_domain.F90.
| subroutine model_domain::model_get_minimum_air_temperature_tabular | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_get_precip_method_of_fragments | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3723 of file model_domain.F90.
| subroutine model_domain::model_get_precip_normal | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3658 of file model_domain.F90.
| subroutine model_domain::model_get_precip_tabular | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_actual_et_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_actual_et_fao56__two_stage | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_actual_et_gridded_values | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_actual_et_thornthwaite_mather | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3108 of file model_domain.F90.
| subroutine model_domain::model_initialize_available_water_content_depth_integrated | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_available_water_content_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_continuous_frozen_ground_index | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_crop_coefficient_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_crop_coefficient_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3405 of file model_domain.F90.
| subroutine model_domain::model_initialize_direct_net_infiltration_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_direct_net_infiltration_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3224 of file model_domain.F90.
| subroutine model_domain::model_initialize_direct_soil_moisture_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_direct_soil_moisture_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3270 of file model_domain.F90.
| subroutine model_domain::model_initialize_et_daily_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_et_hargreaves | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_et_jensen_haise | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2092 of file model_domain.F90.
| subroutine model_domain::model_initialize_et_monthly_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_et_monthly_zone_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_fog_monthly_grid | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_fog_none | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see. Initialization not really needed for the "normal" method.
Definition at line 3463 of file model_domain.F90.
| subroutine model_domain::model_initialize_gdd | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_gdd_be | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_gdd_none | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see.
Definition at line 2774 of file model_domain.F90.
| subroutine model_domain::model_initialize_growing_season | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_growing_season_crop_coefficient_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2554 of file model_domain.F90.
| subroutine model_domain::model_initialize_interception_bucket | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_interception_gash | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_irrigation | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_irrigation_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2434 of file model_domain.F90.
| subroutine model_domain::model_initialize_maximum_net_infiltration_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_maximum_net_infiltration_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3315 of file model_domain.F90.
| subroutine model_domain::model_initialize_precip_method_of_fragments | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_precip_normal | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see. Initialization not really needed for the "normal" method.
Definition at line 3486 of file model_domain.F90.
| subroutine model_domain::model_initialize_precip_tabular | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_rooting_depth_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_rooting_depth_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3360 of file model_domain.F90.
| subroutine model_domain::model_initialize_routing_d8 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_routing_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1777 of file model_domain.F90.
| subroutine model_domain::model_initialize_runoff_curve_number | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_runoff_gridded_values | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_initialize_snowfall_original | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1913 of file model_domain.F90.
| subroutine model_domain::model_initialize_snowfall_prms | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1934 of file model_domain.F90.
| subroutine model_domain::model_initialize_snowmelt_original | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1950 of file model_domain.F90.
| subroutine model_domain::model_initialize_snowmelt_prms | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1971 of file model_domain.F90.
| subroutine model_domain::model_initialize_soil_storage_max_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2378 of file model_domain.F90.
| subroutine model_domain::model_initialize_soil_storage_max_internally_calculated | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2347 of file model_domain.F90.
| subroutine model_domain::model_output_irrigation_none | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see.
Definition at line 2454 of file model_domain.F90.
| subroutine model_domain::model_read_available_water_content_depth_integrated | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_read_available_water_content_gridded | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_crop_coefficient_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_crop_coefficient_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3415 of file model_domain.F90.
| subroutine model_domain::model_update_growing_season | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_growing_season_crop_coefficient_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_irrigation_mask | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 2686 of file model_domain.F90.
| subroutine model_domain::model_update_landuse_codes_dynamic | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_landuse_codes_static | ( | class (model_domain_t), intent(inout) | this | ) |
Nothing here to see.
Definition at line 2738 of file model_domain.F90.
| subroutine model_domain::model_update_rooting_depth_fao56 | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::model_update_rooting_depth_none | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3368 of file model_domain.F90.
| subroutine model_domain::model_update_rooting_depth_table_sub | ( | class (model_domain_t), intent(inout) | this | ) |
Determine how many soil groups are present
Determine how many landuse codes are present; FATAL error if no landuse codes found
Definition at line 2224 of file model_domain.F90.
| subroutine model_domain::preflight_check_method_pointers | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 1027 of file model_domain.F90.
| subroutine, public model_domain::read_landuse_codes |
| integer (c_int) function model_domain::row_column_to_index_fn | ( | class (model_domain_t), intent(inout) | this, |
| integer (c_int), intent(in) | col_num, | ||
| integer (c_int), intent(in) | row_num ) |
Definition at line 628 of file model_domain.F90.
| subroutine model_domain::set_default_procedure_pointers_sub | ( | class (model_domain_t), intent(inout) | this | ) |
initialize procedure pointers such that the default methods are in place this routine necessary because Intel compiler does not support initialization of defined type procedure pointers within the defined type definition
Definition at line 317 of file model_domain.F90.

| subroutine model_domain::set_inactive_cells_sub | ( | class (model_domain_t), intent(inout) | this | ) |
| subroutine model_domain::set_method_pointers_sub | ( | class (model_domain_t), intent(inout) | this, |
| character (len=*), intent(in) | scmdtext, | ||
| type (fstring_list_t) | argv_list ) |
Definition at line 1092 of file model_domain.F90.
| subroutine model_domain::set_output_directory_sub | ( | class (model_domain_t), intent(inout) | this, |
| character (len=*), intent(in) | output_dir_name ) |
Definition at line 306 of file model_domain.F90.
| subroutine model_domain::summarize_state_variables_sub | ( | class (model_domain_t), intent(inout) | this | ) |
Definition at line 3882 of file model_domain.F90.
| type ( cell_col_row_t ), dimension(:), allocatable model_domain::dump |
Definition at line 281 of file model_domain.F90.
| type (model_domain_t), public model_domain::model |
Definition at line 285 of file model_domain.F90.
| type (general_grid_t), pointer model_domain::prooting_depth |
Definition at line 289 of file model_domain.F90.
| real (c_float), dimension(:,:), allocatable, public model_domain::rooting_depth_max |
Definition at line 287 of file model_domain.F90.
| type ( cell_col_row_t ), dimension(:), allocatable model_domain::temp_dump |
Definition at line 282 of file model_domain.F90.