Soil Water Balance (SWB2)
Loading...
Searching...
No Matches
et__gridded_values.F90
Go to the documentation of this file.
1!> @file
2!> Contains a single module, et_gridded_values, which
3!> populates the reference et by applying the monthly value obtained from a reference grid.
4
5
6!> Populate potential evapotranspiration by substituting in
7!> the daily average ET from a gridded data source.
8
10
11 use iso_c_binding, only : c_short, c_int, c_float, c_double
13 use data_catalog
15 use exceptions
17 use fstring
18 use fstring_list
19
20 implicit none
21
22 private
23
25
26 type (data_catalog_entry_t), pointer :: pet_grid
27
28contains
29
30 subroutine et_gridded_values_initialize( lActive )
31
32 logical (c_bool), intent(in) :: lactive(:,:)
33
34 ! [ LOCALS ]
35 integer (c_int) :: istat
36 type (fstring_list_t) :: slstring
37 integer (c_int) :: iindex
38
39
40 ! locate the data structure associated with the gridded rainfall zone entries
41 pet_grid => dat%find("POTENTIAL_ET")
42 if ( .not. associated(pet_grid) ) then
43 pet_grid => dat%find("REFERENCE_ET0")
44 if (.not. associated(pet_grid) ) &
45 call die("A POTENTIAL_ET or REFERENCE_ET0 grid must be supplied in order to make" &
46 //" use of this option.", __file__, __line__)
47
48 endif
49
50 end subroutine et_gridded_values_initialize
51
52!--------------------------------------------------------------------------------------------------
53
55
56 associate( dt => sim_dt%curr )
57
58 call pet_grid%getvalues( dt )
59
60 end associate
61
62 end subroutine et_gridded_values_calculate
63
64end module et__gridded_values
This module contains physical constants and convenience functions aimed at performing unit conversion...
Defines the DATA_CATALOG_T data type, which contains type-bound procedures to add,...
type(data_catalog_t), public dat
DAT is a global to hold data catalog entries.
Populate potential evapotranspiration by substituting in the daily average ET from a gridded data sou...
subroutine, public et_gridded_values_calculate()
type(data_catalog_entry_t), pointer, public pet_grid
subroutine, public et_gridded_values_initialize(lactive)
subroutine, public die(smessage, smodule, iline, shints, scalledby, icalledbyline)
type(date_range_t), public sim_dt