Soil Water Balance (SWB2)
|
Data Types | |
type | gridded_datasets_t |
type | methods_list_t |
Functions/Subroutines | |
subroutine, public | initialize_all (output_prefix, output_dirname, data_dirname, lookup_table_dirname, weather_data_dirname) |
subroutine | initialize_soils_landuse_awc_flowdir_values () |
Initialize soils, landuse, and available water content values. | |
subroutine | initialize_ancillary_values () |
subroutine | set_lookup_table_directory (lookup_table_dirname) |
subroutine | set_data_directory (data_dirname) |
subroutine | set_weather_data_directory (weather_data_dirname) |
subroutine | initialize_snow_storage () |
subroutine | initialize_soil_storage () |
subroutine | initialize_percent_pervious () |
subroutine | initialize_percent_canopy_cover |
subroutine | initialize_hydrologic_soil_groups |
subroutine | read_hydrologic_soil_groups |
subroutine | read_polygon_id () |
subroutine, public | write_control_file (sfilename, sgridspecification, slextradirectives) |
subroutine, public | read_control_file (sfilename) |
subroutine | initialize_generic_grid (skey, spathname, loptional, idatatype) |
Generic routine to handle intake of gridded data. | |
subroutine | initialize_grid_options () |
subroutine | initialize_output_options () |
subroutine | initialize_start_and_end_dates () |
subroutine | initialize_lookup_tables () |
Find any parameter tables specified in the control file; process and store contents. | |
subroutine | initialize_generic_method (skey, loptional) |
subroutine | initialize_program_options () |
subroutine | initialize_latitude () |
subroutine | initialize_surface_storage_max () |
Variables | |
integer(c_int), parameter | number_of_known_grids = 46 |
integer(c_int), parameter | number_of_known_methods = 18 |
type(gridded_datasets_t), dimension(number_of_known_grids) | known_grids = [ GRIDDED_DATASETS_T("PRECIPITATION ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("TMIN ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("TMAX ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("AVAILABLE_WATER_CONTENT ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("REFERENCE_ET0 ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("POTENTIAL_ET ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("ACTUAL_ET ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("SOLAR_RADIATION ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("WIND_SPEED ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("RAINFALL_ZONE ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("REFERENCE_ET_ZONE ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("POTENTIAL_ET_ZONE ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("FLOW_DIRECTION ", "", TRUE, DATATYPE_INT), GRIDDED_DATASETS_T("FOG_RATIO ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("LAND_USE ", "", FALSE, DATATYPE_INT ), GRIDDED_DATASETS_T("SOILS_CODE ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("HYDROLOGIC_SOILS_GROUP ", "", FALSE, DATATYPE_INT ), GRIDDED_DATASETS_T("INITIAL_PERCENT_SOIL_MOISTURE ", "", FALSE, DATATYPE_FLOAT), GRIDDED_DATASETS_T("INITIAL_SNOW_COVER_STORAGE ", "", TRUE, DATATYPE_FLOAT), GRIDDED_DATASETS_T("INITIAL_CONTINUOUS_FROZEN_GROUND_INDEX", "", TRUE, DATATYPE_FLOAT), GRIDDED_DATASETS_T("CFGI_LOWER_LIMIT ", "" ,TRUE, DATATYPE_FLOAT), GRIDDED_DATASETS_T("CFGI_UPPER_LIMIT ", "" ,TRUE, DATATYPE_FLOAT), GRIDDED_DATASETS_T("PERCENT_CANOPY_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("PERCENT_PERVIOUS_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("PERCENT_IMPERVIOUS_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("FRACTION_CANOPY_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("FRACTION_PERVIOUS_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("FRACTION_IMPERVIOUS_COVER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("STEMFLOW_FRACTION ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("EVAPORATION_TO_RAINFALL_RATIO ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("RAINFALL_ADJUST_FACTOR ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("CESSPOOL_LEAKAGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("STORM_DRAIN_CAPTURE_FRACTION ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("WATER_BODY_LEAKAGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("WATER_MAIN_LEAKAGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("DISPOSAL_WELL_DISCHARGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("ANNUAL_DIRECT_NET_INFILTRATION_RATE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("ANNUAL_SEPTIC_DISCHARGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("SEPTIC_DISCHARGE ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("RUNOFF_ZONE ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("POLYGON_ID ", "", TRUE, DATATYPE_INT ), GRIDDED_DATASETS_T("SOIL_STORAGE_MAX ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("PLANT_AVAILABLE_WATER ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("MAXIMUM_NET_INFILTRATION ", "", TRUE, DATATYPE_FLOAT ), GRIDDED_DATASETS_T("IRRIGATION_MASK ", "", TRUE, DATATYPE_INT), GRIDDED_DATASETS_T("RELATIVE_HUMIDITY ", "", TRUE, DATATYPE_FLOAT ) ] |
type(methods_list_t), dimension(number_of_known_methods), parameter | known_methods = [ METHODS_LIST_T("INTERCEPTION ", FALSE), METHODS_LIST_T("EVAPOTRANSPIRATION ", FALSE), METHODS_LIST_T("RUNOFF ", FALSE), METHODS_LIST_T("PRECIPITATION ", FALSE), METHODS_LIST_T("FOG ", TRUE), METHODS_LIST_T("AVAILABLE_WATER_CONTENT", TRUE), METHODS_LIST_T("SOIL_STORAGE_MAX ", TRUE), METHODS_LIST_T("SOIL_MOISTURE ", FALSE), METHODS_LIST_T("IRRIGATION ", TRUE), METHODS_LIST_T("CROP_COEFFICIENT ", TRUE), METHODS_LIST_T("GROWING_DEGREE_DAY ", TRUE), METHODS_LIST_T("DYNAMIC_LANDUSE ", TRUE), METHODS_LIST_T("DIRECT_RECHARGE ", TRUE), METHODS_LIST_T("DIRECT_NET_INFILTRATION", TRUE), METHODS_LIST_T("DIRECT_SOIL_MOISTURE ", TRUE), METHODS_LIST_T("FLOW_ROUTING ", TRUE), METHODS_LIST_T("ROOTING_DEPTH ", TRUE), METHODS_LIST_T("DUMP_VARIABLES ", TRUE) ] |
type(general_grid_t), pointer | pcoord_grd |
subroutine, public model_initialize::initialize_all | ( | character (len=*), intent(in) | output_prefix, |
character (len=*), intent(in) | output_dirname, | ||
character (len=*), intent(in) | data_dirname, | ||
character (len=*), intent(in) | lookup_table_dirname, | ||
character (len=*), intent(in) | weather_data_dirname ) |
|
private |
|
private |
Generic routine to handle intake of gridded data.
[in] | sKey | Name for the data type being processed. |
[in] | lOptional | If lOptional is TRUE, kill model run eventually IF sKey does not match a known data type. |
[in] | iDataType | Datatype as defined in constants_and-conversion.F90 |
This routine accepts a data grid type, for example, "PRECIPITATION", and attempts to handle all related control file directives associated with MODEL data type. In MODEL way, a new gridded data type may be added simply by extending the list of known data types to the list defined in the module variable KNOWN_TYPES.
Definition at line 969 of file model_initialize.F90.
|
private |
|
private |
|
private |
|
private |
|
private |
Find any parameter tables specified in the control file; process and store contents.
Any control file entry that contains the text "LOOKUP_TABLE" is assumed to specify a parameter table that needs to be read in and processed.
Definition at line 1600 of file model_initialize.F90.
|
private |
Definition at line 1421 of file model_initialize.F90.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Initialize soils, landuse, and available water content values.
@NOTE Rather than read the raw values and initialize the SWB variables in one step, we have two steps:
Two steps are needed because the call to "set_inactive_cells" requires access to the "raw" values, not the SWB variables. Basically any cell with negative values found in the landuse, soils groups, or awc grids results in that cell being inactivated. Once the complete collection of active cells is found, the SWB variables can be initialized.
Definition at line 239 of file model_initialize.F90.
|
private |
|
private |
Determine how many landuse codes are present
Definition at line 1970 of file model_initialize.F90.
subroutine, public model_initialize::read_control_file | ( | character (len=*), intent(in) | sfilename | ) |
Definition at line 878 of file model_initialize.F90.
|
private |
|
private |
|
private |
Definition at line 321 of file model_initialize.F90.
|
private |
Definition at line 310 of file model_initialize.F90.
|
private |
Definition at line 352 of file model_initialize.F90.
subroutine, public model_initialize::write_control_file | ( | character (len=*), intent(in) | sfilename, |
character (len=*), intent(in), optional | sgridspecification, | ||
type (fstring_list_t), optional | slextradirectives ) |
Definition at line 819 of file model_initialize.F90.
|
private |
Definition at line 50 of file model_initialize.F90.
|
private |
Definition at line 99 of file model_initialize.F90.
integer (c_int), parameter model_initialize::number_of_known_grids = 46 |
Definition at line 47 of file model_initialize.F90.
|
private |
Definition at line 48 of file model_initialize.F90.
|
private |
Definition at line 121 of file model_initialize.F90.