Soil Water Balance (SWB2)
|
Update crop coefficients for crop types in simulation. More...
Enumerations | |
enum | { l_doy_ini =1 , l_doy_dev , l_doy_mid , l_doy_late , l_doy_fallow } |
enum | { gdd_plant =1 , gdd_ini , gdd_dev , gdd_mid , gdd_late } |
enum | { planting_date =1 , enddate_ini , enddate_dev , enddate_mid , enddate_late , enddate_fallow } |
enum | { kcb_ini =13 , kcb_mid , kcb_end , kcb_min } |
enum | { jan = 1 , feb , mar , apr , may , jun , jul , aug , sep , oct , nov , dec } |
enum | { kcb_method_gdd = 1 , kcb_method_monthly_values , kcb_method_fao56 } |
Functions/Subroutines | |
subroutine, public | crop_coefficients_fao56_initialize () |
impure elemental real(c_float) function, public | update_crop_coefficient_date_as_threshold (ilanduseindex) |
Update the current basal crop coefficient (Kcb) for a SINGLE irrigation table entry. | |
pure elemental real(c_float) function, public | crop_coefficients_fao56_calculate_kcb_max (wind_speed_meters_per_sec, relative_humidity_min_pct, kcb, plant_height_meters) |
impure elemental real(c_float) function, public | update_crop_coefficient_gdd_as_threshold (ilanduseindex, fgdd) |
Update the current basal crop coefficient (Kcb), with GDD as the threhold. | |
subroutine, public | crop_coefficients_fao56_update_growth_stage_dates () |
impure elemental subroutine, public | crop_coefficients_fao56_calculate (kcb, landuse_index, gdd) |
impure elemental subroutine, public | crop_coefficients_fao56_update_growing_season (landuse_index, kcb, it_is_growing_season) |
Variables | |
integer(c_int), dimension(:), allocatable | landuse_code |
real(c_float), dimension(:,:), allocatable, public | kcb_l |
integer(c_int), dimension(:), allocatable, public | kcb_method |
real(c_float), dimension(:), allocatable | growth_stage_shift_days |
real(c_float), dimension(:,:), allocatable, public | growth_stage_length_in_days |
real(c_float), dimension(:,:), allocatable | growth_stage_gdd |
type(datetime_t), dimension(:,:), allocatable, public | growth_stage_date |
integer(c_int) | lu_soils_csv |
Update crop coefficients for crop types in simulation.
|
private |
Enumerator | |
---|---|
l_doy_ini | |
l_doy_dev | |
l_doy_mid | |
l_doy_late | |
l_doy_fallow |
Definition at line 37 of file crop_coefficients__fao56.F90.
|
private |
Enumerator | |
---|---|
gdd_plant | |
gdd_ini | |
gdd_dev | |
gdd_mid | |
gdd_late |
Definition at line 41 of file crop_coefficients__fao56.F90.
|
private |
Enumerator | |
---|---|
planting_date | |
enddate_ini | |
enddate_dev | |
enddate_mid | |
enddate_late | |
enddate_fallow |
Definition at line 45 of file crop_coefficients__fao56.F90.
|
private |
Enumerator | |
---|---|
kcb_ini | |
kcb_mid | |
kcb_end | |
kcb_min |
Definition at line 50 of file crop_coefficients__fao56.F90.
|
private |
Enumerator | |
---|---|
jan | |
feb | |
mar | |
apr | |
may | |
jun | |
jul | |
aug | |
sep | |
oct | |
nov | |
dec |
Definition at line 54 of file crop_coefficients__fao56.F90.
|
private |
Enumerator | |
---|---|
kcb_method_gdd | |
kcb_method_monthly_values | |
kcb_method_fao56 |
Definition at line 58 of file crop_coefficients__fao56.F90.
impure elemental subroutine, public crop_coefficients__fao56::crop_coefficients_fao56_calculate | ( | real (c_float), intent(inout) | kcb, |
integer (c_int), intent(in) | landuse_index, | ||
real (c_float), intent(in), optional | gdd ) |
Definition at line 623 of file crop_coefficients__fao56.F90.
pure elemental real (c_float) function, public crop_coefficients__fao56::crop_coefficients_fao56_calculate_kcb_max | ( | real (c_float), intent(in) | wind_speed_meters_per_sec, |
real (c_float), intent(in) | relative_humidity_min_pct, | ||
real (c_float), intent(in) | kcb, | ||
real (c_float), intent(in) | plant_height_meters ) |
Definition at line 452 of file crop_coefficients__fao56.F90.
subroutine, public crop_coefficients__fao56::crop_coefficients_fao56_initialize |
create string list that allows for alternate heading identifiers for the landuse code
Determine how many landuse codes are present
@TODO What should happen if the TEW / REW header entries do not fall in a logical sequence of values? In other words, if the user has columns named REW_1, REW_3, REW_5, only the values associated with "REW_1" would be retrieved. Needless to say, this would be catastrophic.
@TODO Add more logic here to perform checks on the validity of this data.
@TODO Need to handle missing values. WHat do we do if an entire column of values is missing?
Definition at line 78 of file crop_coefficients__fao56.F90.
impure elemental subroutine, public crop_coefficients__fao56::crop_coefficients_fao56_update_growing_season | ( | integer (c_int), intent(in) | landuse_index, |
real (c_float), intent(in) | kcb, | ||
logical (c_bool), intent(out) | it_is_growing_season ) |
Definition at line 645 of file crop_coefficients__fao56.F90.
subroutine, public crop_coefficients__fao56::crop_coefficients_fao56_update_growth_stage_dates |
Definition at line 555 of file crop_coefficients__fao56.F90.
impure elemental real (c_float) function, public crop_coefficients__fao56::update_crop_coefficient_date_as_threshold | ( | integer (c_int), intent(in) | ilanduseindex | ) |
Update the current basal crop coefficient (Kcb) for a SINGLE irrigation table entry.
[in,out] | pIRRIGATION | pointer to a single line of information in the irrigation file. |
[in] | iThreshold | either the current day of year or the number of growing degree days. |
rKcb | Basal crop coefficient given the irrigation table entries and the current threshold values. |
Definition at line 384 of file crop_coefficients__fao56.F90.
impure elemental real (c_float) function, public crop_coefficients__fao56::update_crop_coefficient_gdd_as_threshold | ( | integer (c_int), intent(in) | ilanduseindex, |
real (c_float), intent(in) | fgdd ) |
Update the current basal crop coefficient (Kcb), with GDD as the threhold.
[in] | fGDD | current growing degree day value associated with the cell. |
fKcb | Basal crop coefficient given the irrigation table entries and the current threshold values. |
Definition at line 489 of file crop_coefficients__fao56.F90.
type (datetime_t), dimension(:,:), allocatable, public crop_coefficients__fao56::growth_stage_date |
Definition at line 72 of file crop_coefficients__fao56.F90.
|
private |
Definition at line 71 of file crop_coefficients__fao56.F90.
real (c_float), dimension(:,:), allocatable, public crop_coefficients__fao56::growth_stage_length_in_days |
Definition at line 70 of file crop_coefficients__fao56.F90.
|
private |
Definition at line 69 of file crop_coefficients__fao56.F90.
real (c_float), dimension(:,:), allocatable, public crop_coefficients__fao56::kcb_l |
Definition at line 67 of file crop_coefficients__fao56.F90.
integer (c_int), dimension(:), allocatable, public crop_coefficients__fao56::kcb_method |
Definition at line 68 of file crop_coefficients__fao56.F90.
|
private |
Definition at line 64 of file crop_coefficients__fao56.F90.
|
private |
Definition at line 74 of file crop_coefficients__fao56.F90.