7 HPROGRAM, HCOUPLING, PTIMEC, PTSTEP, KYEAR, KMONTH, KDAY, &
8 PTIME, KI, KSV, KSW, PTSUN, PZENITH, PZENITH2, PAZIM, &
9 PZREF, PUREF, PZS, PU, PV, PQA, PTA, PRHOA, PSV, PCO2, &
10 HSV, PRAIN, PSNOW, PLW, PDIR_SW, PSCA_SW, PSW_BANDS, PPS, &
11 PPA, PSFTQ, PSFTH, PSFTS, PSFCO2, PSFU, PSFV, PTRAD, &
12 PDIR_ALB, PSCA_ALB, PEMIS, PTSURF, PZ0, PZ0H, PQSURF, &
13 PPEW_A_COEF, PPEW_B_COEF, PPET_A_COEF, PPEQ_A_COEF, &
14 PPET_B_COEF, PPEQ_B_COEF, HTEST )
55 USE modi_coupling_flake_orography_n
57 USE modi_coupling_ideal_flux
59 USE modi_coupling_watflux_orog_n
70 TYPE(
diag_t),
INTENT(INOUT) :: DL
71 TYPE(
diag_t),
INTENT(INOUT) :: DLC
73 TYPE(
dst_t),
INTENT(INOUT) :: DST
74 TYPE(
slt_t),
INTENT(INOUT) :: SLT
77 CHARACTER(LEN=6),
INTENT(IN) :: HPROGRAM
78 CHARACTER(LEN=1),
INTENT(IN) :: HCOUPLING
81 REAL,
INTENT(IN) :: PTIMEC
82 INTEGER,
INTENT(IN) :: KYEAR
83 INTEGER,
INTENT(IN) :: KMONTH
84 INTEGER,
INTENT(IN) :: KDAY
85 REAL,
INTENT(IN) :: PTIME
86 INTEGER,
INTENT(IN) :: KI
87 INTEGER,
INTENT(IN) :: KSV
88 INTEGER,
INTENT(IN) :: KSW
89 REAL,
DIMENSION(KI),
INTENT(IN) :: PTSUN
90 REAL,
INTENT(IN) :: PTSTEP
91 REAL,
DIMENSION(KI),
INTENT(IN) :: PZREF
92 REAL,
DIMENSION(KI),
INTENT(IN) :: PUREF
94 REAL,
DIMENSION(KI),
INTENT(IN) :: PTA
95 REAL,
DIMENSION(KI),
INTENT(IN) :: PQA
96 REAL,
DIMENSION(KI),
INTENT(IN) :: PRHOA
97 REAL,
DIMENSION(KI,KSV),
INTENT(IN) :: PSV
100 CHARACTER(LEN=6),
DIMENSION(KSV),
INTENT(IN):: HSV
101 REAL,
DIMENSION(KI),
INTENT(IN) :: PU
102 REAL,
DIMENSION(KI),
INTENT(IN) :: PV
103 REAL,
DIMENSION(KI,KSW),
INTENT(IN) :: PDIR_SW
105 REAL,
DIMENSION(KI,KSW),
INTENT(IN) :: PSCA_SW
107 REAL,
DIMENSION(KSW),
INTENT(IN) :: PSW_BANDS
108 REAL,
DIMENSION(KI),
INTENT(IN) :: PZENITH
109 REAL,
DIMENSION(KI),
INTENT(IN) :: PZENITH2
110 REAL,
DIMENSION(KI),
INTENT(IN) :: PAZIM
111 REAL,
DIMENSION(KI),
INTENT(IN) :: PLW
113 REAL,
DIMENSION(KI),
INTENT(IN) :: PPS
114 REAL,
DIMENSION(KI),
INTENT(IN) :: PPA
115 REAL,
DIMENSION(KI),
INTENT(IN) :: PZS
116 REAL,
DIMENSION(KI),
INTENT(IN) :: PCO2
117 REAL,
DIMENSION(KI),
INTENT(IN) :: PSNOW
118 REAL,
DIMENSION(KI),
INTENT(IN) :: PRAIN
121 REAL,
DIMENSION(KI),
INTENT(OUT) :: PSFTH
122 REAL,
DIMENSION(KI),
INTENT(OUT) :: PSFTQ
123 REAL,
DIMENSION(KI),
INTENT(OUT) :: PSFU
124 REAL,
DIMENSION(KI),
INTENT(OUT) :: PSFV
125 REAL,
DIMENSION(KI),
INTENT(OUT) :: PSFCO2
126 REAL,
DIMENSION(KI,KSV),
INTENT(OUT):: PSFTS
128 REAL,
DIMENSION(KI),
INTENT(OUT) :: PTRAD
129 REAL,
DIMENSION(KI,KSW),
INTENT(OUT):: PDIR_ALB
130 REAL,
DIMENSION(KI,KSW),
INTENT(OUT):: PSCA_ALB
131 REAL,
DIMENSION(KI),
INTENT(OUT) :: PEMIS
133 REAL,
DIMENSION(KI),
INTENT(OUT) :: PTSURF
134 REAL,
DIMENSION(KI),
INTENT(OUT) :: PZ0
135 REAL,
DIMENSION(KI),
INTENT(OUT) :: PZ0H
136 REAL,
DIMENSION(KI),
INTENT(OUT) :: PQSURF
138 REAL,
DIMENSION(KI),
INTENT(IN) :: PPEW_A_COEF
139 REAL,
DIMENSION(KI),
INTENT(IN) :: PPEW_B_COEF
140 REAL,
DIMENSION(KI),
INTENT(IN) :: PPET_A_COEF
141 REAL,
DIMENSION(KI),
INTENT(IN) :: PPEQ_A_COEF
142 REAL,
DIMENSION(KI),
INTENT(IN) :: PPET_B_COEF
143 REAL,
DIMENSION(KI),
INTENT(IN) :: PPEQ_B_COEF
144 CHARACTER(LEN=2),
INTENT(IN) :: HTEST
145 REAL(KIND=JPRB) :: ZHOOK_HANDLE
151 IF (
lhook)
CALL dr_hook(
'COUPLING_INLAND_WATER_N',0,zhook_handle)
152 IF (u%CWATER==
'WATFLX')
THEN 154 ptstep, kyear, kmonth, kday, ptime, ki, ksv, ksw, &
155 ptsun, pzenith, pzenith2, pazim, pzref, puref, pzs, pu, pv, &
156 pqa, pta, prhoa, psv, pco2, hsv, prain, psnow, plw, pdir_sw, &
157 psca_sw, psw_bands, pps, ppa, psftq, psfth, psfts, psfco2, &
158 psfu, psfv, ptrad, pdir_alb, psca_alb, pemis, ptsurf, pz0, &
159 pz0h, pqsurf, ppew_a_coef, ppew_b_coef, ppet_a_coef, &
160 ppeq_a_coef, ppet_b_coef, ppeq_b_coef, htest )
161 ELSE IF (u%CWATER==
'FLUX ')
THEN 163 ptstep, kyear, kmonth, kday, ptime, ki, ksv, ksw, &
164 ptsun, pzenith, pazim, pzref, puref, pzs, pu, pv, pqa, pta, &
165 prhoa, psv, pco2, hsv, prain, psnow, plw, pdir_sw, psca_sw, &
166 psw_bands, pps, ppa, psftq, psfth, psfts, psfco2, psfu, psfv, &
167 ptrad, pdir_alb, psca_alb, pemis, ptsurf, pz0, pz0h, pqsurf, &
168 ppew_a_coef, ppew_b_coef, ppet_a_coef, ppeq_a_coef, ppet_b_coef, &
170 ELSE IF (u%CWATER==
'FLAKE ')
THEN 172 ptstep, kyear, kmonth, kday, ptime, ki, ksv, ksw, &
173 ptsun, pzenith, pzenith2, pazim, pzref, puref, pzs, &
174 pu, pv, pqa, pta, prhoa, psv, pco2, hsv, prain, psnow, &
175 plw, pdir_sw, psca_sw, psw_bands, pps, ppa, psftq, psfth, &
176 psfts, psfco2, psfu, psfv, ptrad, pdir_alb, psca_alb, &
177 pemis, ptsurf, pz0, pz0h, pqsurf, ppew_a_coef, &
178 ppew_b_coef, ppet_a_coef, ppeq_a_coef, ppet_b_coef, &
180 ELSE IF (u%CWATER==
'NONE ')
THEN 199 IF (
lhook)
CALL dr_hook(
'COUPLING_INLAND_WATER_N',1,zhook_handle)
subroutine coupling_flake_orography_n(FM, DST, SLT, HPROGRAM, HCOUPLING, PTSTEP, KYEAR, KMONTH, KDAY, PTIME, KI, KSV, KSW, PTSUN, PZENITH, PZENITH2, PAZIM, PZREF, PUREF, PZS, PU, PV, PQA, PTA, PRHOA, PSV, PCO2, HSV, PRAIN, PSNOW, PLW, PDIR_SW, PSCA_SW, PSW_BANDS, PPS, PPA, PSFTQ, PSFTH, PSFTS, PSFCO2, PSFU, PSFV, PTRAD, PDIR_ALB, PSCA_ALB, PEMIS, PTSURF, PZ0, PZ0H, PQSURF, PPEW_A_COEF, PPEW_B_COEF, PPET_A_COEF, PPEQ_A_COEF, PPET_B_COEF, PPEQ_B_COEF, HTEST)
subroutine coupling_watflux_orog_n(WM, DST, SLT, HPROGRAM, HCOUPLING, PTIMEC, PTSTEP, KYEAR, KMONTH, KDAY, PTIME, KI, KSV, KSW, PTSUN, PZENITH, PZENITH2, PAZIM, PZREF, PUREF, PZS, PU, PV, PQA, PTA, PRHOA, PSV, PCO2, HSV, PRAIN, PSNOW, PLW, PDIR_SW, PSCA_SW, PSW_BANDS, PPS, PPA, PSFTQ, PSFTH, PSFTS, PSFCO2, PSFU, PSFV, PTRAD, PDIR_ALB, PSCA_ALB, PEMIS, PTSURF, PZ0, PZ0H, PQSURF, PPEW_A_COEF, PPEW_B_COEF, PPET_A_COEF, PPEQ_A_COEF, PPET_B_COEF, PPEQ_B_COEF, HTEST)
subroutine coupling_inland_water_n(FM, WM, DGO, DL, DLC, U, DST, SLT, HPROGRAM, HCOUPLING, PTIMEC, PTSTEP, KYEAR, KMONTH, KDAY, PTIME, KI, KSV, KSW, PTSUN, PZENITH, PZENITH2, PAZIM, PZREF, PUREF, PZS, PU, PV, PQA, PTA, PRHOA, PSV, PCO2, HSV, PRAIN, PSNOW, PLW, PDIR_SW, PSCA_SW, PSW_BANDS, PPS, PPA, PSFTQ, PSFTH, PSFTS, PSFCO2, PSFU, PSFV, PTRAD, PDIR_ALB, PSCA_ALB, PEMIS, PTSURF, PZ0, PZ0H, PQSURF, PPEW_A_COEF, PPEW_B_COEF, PPET_A_COEF, PPEQ_A_COEF, PPET_B_COEF, PPEQ_B_COEF, HTEST)
subroutine coupling_ideal_flux(DGO, D, DC, HPROGRAM, HCOUPLING, PTIMEC, PTSTEP, KYEAR, KMONTH, KDAY, PTIME, KI, KSV, KSW, PTSUN, PZENITH, PAZIM, PZREF, PUREF, PZS, PU, PV, PQA, PTA, PRHOA, PSV, PCO2, HSV, PRAIN, PSNOW, PLW, PDIR_SW, PSCA_SW, PSW_BANDS, PPS, PPA, PSFTQ, PSFTH, PSFTS, PSFCO2, PSFU, PSFV, PTRAD, PDIR_ALB, PSCA_ALB, PEMIS, PTSURF, PZ0, PZ0H, PQSURF, PPEW_A_COEF, PPEW_B_COEF, PPET_A_COEF, PPEQ_A_COEF, PPET_B_COEF, PPEQ_B_COEF, HTEST)