33 USE modd_prep_teb
, ONLY : xgrid_road, xgrid_wall, xgrid_roof, xgrid_floor, &
34 xws_roof, xws_road, xts_road, xts_roof, xts_wall, &
35 xti_bld, xti_road, xt_can, xq_can, xhui_bld
49 INTEGER,
INTENT(IN) :: KLUOUT
50 CHARACTER(LEN=7),
INTENT(IN) :: HSURF
51 REAL,
POINTER,
DIMENSION(:,:) :: PFIELD
54 REAL,
DIMENSION(:),
ALLOCATABLE :: ZPS
55 REAL,
DIMENSION(:),
ALLOCATABLE :: ZTI_BLD
56 REAL,
PARAMETER :: ZRHOA=1.19
58 REAL(KIND=JPRB) :: ZHOOK_HANDLE
74 ALLOCATE(pfield(1,
SIZE(xgrid_road)))
79 CASE(
'T_WALLA',
'T_WALLB')
80 ALLOCATE(pfield(1,
SIZE(xgrid_wall)))
86 ALLOCATE(pfield(1,
SIZE(xgrid_roof)))
92 ALLOCATE(pfield(1,
SIZE(xgrid_floor)))
96 ALLOCATE(pfield(1,
SIZE(xgrid_floor)))
102 ALLOCATE(pfield(1,1))
106 ALLOCATE(pfield(1,1))
110 ALLOCATE(pfield(1,1))
114 ALLOCATE(pfield(max(1,
SIZE(
xzs_ls)),1))
115 ALLOCATE(zps(
SIZE(
xzs_ls)))
116 ALLOCATE(zti_bld(
SIZE(
xzs_ls)))
119 pfield(:
SIZE(
xzs_ls),1) = xhui_bld *
qsat(zti_bld, zps)
124 ALLOCATE(pfield(1,1))
128 ALLOCATE(pfield(1,1))
132 ALLOCATE(pfield(1,1))
136 ALLOCATE(pfield(1,1))
140 ALLOCATE(pfield(1,1))
164 CHARACTER(LEN=4),
INTENT(IN) :: HSURFTYPE
165 REAL,
DIMENSION(:),
INTENT(IN) :: PGRID
169 REAL,
DIMENSION(1,2) :: ZT
170 REAL,
DIMENSION(1,2) :: ZD
171 REAL(KIND=JPRB) :: ZHOOK_HANDLE
177 IF (
lhook)
CALL dr_hook(
'PUT_UNIF_ON_REF_GRID',0,zhook_handle)
178 SELECT CASE(hsurftype)
193 SELECT CASE(hsurftype)
194 CASE(
'ROOF',
'WALL',
'MASS')
197 IF (xti_road/=
xundef)
THEN 200 WRITE(kluout,*)
'Error in PREParation of TEB fields' 201 WRITE(kluout,*)
'When Road Surface Temperature is prescribed,' 202 WRITE(kluout,*)
'Deep Road Temperature XTI_ROAD must also be prescribed' 203 CALL abor1_sfx(
'PREP_TEB_UNIF: XTI_ROAD MUST BE PRESCRIBED')
218 IF (
lhook)
CALL dr_hook(
'PUT_UNIF_ON_REF_GRID',1,zhook_handle)
real, dimension(:), allocatable xzs_ls
character(len=6) cinterp_type
subroutine abor1_sfx(YTEXT)
subroutine put_unif_on_ref_grid(HSURFTYPE, PGRID)
subroutine prep_teb_unif(KLUOUT, HSURF, PFIELD)