7 PSFLUX_U, PFORC_U, PDFORC_UDU, PUW, PALFA, PBETA )
44 USE modi_canopy_evol_field
56 INTEGER,
INTENT(IN) :: KI
57 REAL,
INTENT(IN) :: PTSTEP
58 INTEGER,
INTENT(IN) :: KIMPL
63 REAL,
DIMENSION(KI),
INTENT(IN) :: PWIND
64 REAL,
DIMENSION(KI,SB%NLVL),
INTENT(IN) :: PK
65 REAL,
DIMENSION(KI,SB%NLVL),
INTENT(IN) :: PDKDDVDZ
68 REAL,
DIMENSION(KI),
INTENT(IN) :: PSFLUX_U
69 REAL,
DIMENSION(KI,SB%NLVL),
INTENT(IN) :: PFORC_U
70 REAL,
DIMENSION(KI,SB%NLVL),
INTENT(IN) :: PDFORC_UDU
72 REAL,
DIMENSION(KI,SB%NLVL),
INTENT(OUT) :: PUW
73 REAL,
DIMENSION(KI),
INTENT(OUT) :: PALFA
74 REAL,
DIMENSION(KI),
INTENT(OUT) :: PBETA
82 REAL,
DIMENSION(KI,SB%NLVL) :: ZDUDZ
83 REAL,
DIMENSION(KI,SB%NLVL) :: ZF
84 REAL,
DIMENSION(KI,SB%NLVL) :: ZDFDDVDZ
87 REAL,
DIMENSION(KI,SB%NLVL) :: ZEXT
88 REAL,
DIMENSION(KI,SB%NLVL) :: ZDEXTDV
91 REAL,
DIMENSION(KI,SB%NLVL) :: ZU
93 REAL,
DIMENSION(KI) :: ZDUADT
95 REAL(KIND=JPRB) :: ZHOOK_HANDLE
105 IF (
lhook)
CALL dr_hook(
'CANOPY_EVOL_WIND',0,zhook_handle)
112 pbeta(:) = sb%XU(:,1)
121 zext = zext + pforc_u(:,:)
123 zdextdv = zdextdv + pdforc_udu(:,:)
143 zduadt(:) = ( pwind(:) - sb%XU(:,sb%NLVL) ) /ptstep
147 DO jlayer=1,sb%NLVL-1
148 zext(:,jlayer) = zext(:,jlayer)
152 zext(:,sb%NLVL) = zduadt(:)
163 sb%XU(:,:) = max(sb%XU,0.)
165 IF (
lhook)
CALL dr_hook(
'CANOPY_EVOL_WIND',1,zhook_handle)
subroutine canopy_evol_field(KI, KLVL, PTSTEP, KIMPL, PK, PDKDDVDZ
subroutine canopy_evol_wind(SB, KI, PTSTEP, KIMPL, PWIND, PK, PDKD