Soil Water Balance (SWB2)
Toggle main menu visibility
Loading...
Searching...
No Matches
actual_et__gridded_values.F90
Go to the documentation of this file.
1
!> @file
2
!> Contains a single module, actual_et__gridded_values, which
3
!> populates the reference et by applying the monthly value obtained from a reference grid.
4
5
6
!> Populate actual evapotranspiration by substituting in
7
!> the daily average actual ET from a gridded data source.
8
9
module
actual_et__gridded_values
10
11
use
iso_c_binding,
only
: c_short, c_int, c_float, c_double
12
use
constants_and_conversions
13
use
data_catalog
14
use
data_catalog_entry
15
use
datetime
,
only
:
datetime_t
16
use
exceptions
17
use
simulation_datetime
,
only
:
sim_dt
18
use
fstring
19
use
fstring_list
20
21
implicit none
22
23
private
24
25
public
::
actual_et_gridded_values_initialize
, &
26
actual_et_gridded_values_calculate
, &
27
actual_et
28
29
type
(
data_catalog_entry_t
),
pointer
::
paet_grid
30
31
real
( c_float),
allocatable
::
actual_et
(:)
32
33
type
(
datetime_t
) ::
date_of_last_retrieval
34
35
contains
36
37
subroutine
actual_et_gridded_values_initialize
( is_cell_active )
38
39
logical (c_bool)
,
intent(in)
:: is_cell_active(:,:)
40
41
! [ LOCALS ]
42
integer (c_int)
:: istat
43
44
! locate the data structure associated with the gridded actual_et entries
45
paet_grid
=>
dat
%find(
"ACTUAL_ET"
)
46
if
(.not.
associated
(
paet_grid
) ) &
47
call
die
(
"A set of ACTUAL_ET grids must be supplied in order to make"
&
48
//
" use of this option."
, __file__, __line__)
49
50
allocate
(
actual_et
( count( is_cell_active ) ), stat=istat )
51
call
assert
( istat==0,
"Problem allocating memory for ACTUAL_ET vector."
, &
52
__file__, __line__)
53
54
end subroutine
actual_et_gridded_values_initialize
55
56
!--------------------------------------------------------------------------------------------------
57
58
subroutine
actual_et_gridded_values_calculate
( is_cell_active )
59
60
logical (c_bool)
,
intent(in)
:: is_cell_active(:,:)
61
62
if
( .not.
date_of_last_retrieval
==
sim_dt
%curr )
then
63
64
call
paet_grid
%getvalues(
sim_dt
%curr )
65
date_of_last_retrieval
=
sim_dt
%curr
66
actual_et
= pack(
paet_grid
%pGrdBase%rData, is_cell_active)
67
68
endif
69
70
end subroutine
actual_et_gridded_values_calculate
71
72
end module
actual_et__gridded_values
actual_et__gridded_values
Populate actual evapotranspiration by substituting in the daily average actual ET from a gridded data...
Definition
actual_et__gridded_values.F90:9
actual_et__gridded_values::actual_et_gridded_values_initialize
subroutine, public actual_et_gridded_values_initialize(is_cell_active)
Definition
actual_et__gridded_values.F90:38
actual_et__gridded_values::actual_et_gridded_values_calculate
subroutine, public actual_et_gridded_values_calculate(is_cell_active)
Definition
actual_et__gridded_values.F90:59
actual_et__gridded_values::paet_grid
type(data_catalog_entry_t), pointer paet_grid
Definition
actual_et__gridded_values.F90:29
actual_et__gridded_values::actual_et
real(c_float), dimension(:), allocatable, public actual_et
Definition
actual_et__gridded_values.F90:31
actual_et__gridded_values::date_of_last_retrieval
type(datetime_t) date_of_last_retrieval
Definition
actual_et__gridded_values.F90:33
constants_and_conversions
This module contains physical constants and convenience functions aimed at performing unit conversion...
Definition
constants_and_conversions.F90:8
data_catalog
Defines the DATA_CATALOG_T data type, which contains type-bound procedures to add,...
Definition
data_catalog.F90:10
data_catalog::dat
type(data_catalog_t), public dat
DAT is a global to hold data catalog entries.
Definition
data_catalog.F90:65
data_catalog_entry
Definition
data_catalog_entry.F90:8
datetime
This module contains the DATETIME_T class and associated time and date-related routines,...
Definition
datetime.F90:9
exceptions
Definition
exceptions.F90:1
exceptions::die
subroutine, public die(smessage, smodule, iline, shints, scalledby, icalledbyline)
Definition
exceptions.F90:140
fstring
Definition
fstring.F90:1
fstring_list
Definition
fstring_list.F90:1
simulation_datetime
Definition
simulation_datetime.F90:1
simulation_datetime::sim_dt
type(date_range_t), public sim_dt
Definition
simulation_datetime.F90:45
data_catalog_entry::data_catalog_entry_t
Definition
data_catalog_entry.F90:46
datetime::datetime_t
Definition
datetime.F90:38
exceptions::assert
Definition
exceptions.F90:15
src
actual_et__gridded_values.F90
Generated on
for Soil Water Balance (SWB2) by
1.17.0