7 hprogram,ki,prui,pwind,pfwsu,pfwsv,psnet, &
8 pheat,pevap,prain,psnow,piceflux,pfwsm, &
9 pheat_ice,pevap_ice,psnet_ice)
61 lcpl_flood, lcpl_sea, lcpl_seaice
68 USE yomhook
,ONLY : lhook, dr_hook
69 USE parkind1
,ONLY : jprb
80 TYPE(isba_t
),
INTENT(INOUT) :: i
85 CHARACTER(LEN=6),
INTENT(IN) :: hprogram
86 INTEGER,
INTENT(IN) :: ki
88 REAL,
DIMENSION(KI),
INTENT(OUT) :: prui
89 REAL,
DIMENSION(KI),
INTENT(OUT) :: pwind
90 REAL,
DIMENSION(KI),
INTENT(OUT) :: pfwsu
91 REAL,
DIMENSION(KI),
INTENT(OUT) :: pfwsv
92 REAL,
DIMENSION(KI),
INTENT(OUT) :: psnet
93 REAL,
DIMENSION(KI),
INTENT(OUT) :: pheat
94 REAL,
DIMENSION(KI),
INTENT(OUT) :: pevap
95 REAL,
DIMENSION(KI),
INTENT(OUT) :: prain
96 REAL,
DIMENSION(KI),
INTENT(OUT) :: psnow
97 REAL,
DIMENSION(KI),
INTENT(OUT) :: piceflux
98 REAL,
DIMENSION(KI),
INTENT(OUT) :: pfwsm
99 REAL,
DIMENSION(KI),
INTENT(OUT) :: pheat_ice
100 REAL,
DIMENSION(KI),
INTENT(OUT) :: pevap_ice
101 REAL,
DIMENSION(KI),
INTENT(OUT) :: psnet_ice
106 REAL,
DIMENSION(KI) :: zrunoff
107 REAL,
DIMENSION(KI) :: zdrain
108 REAL,
DIMENSION(KI) :: zcalving
109 REAL,
DIMENSION(KI) :: zrecharge
110 REAL,
DIMENSION(KI) :: zsrcflood
112 REAL,
DIMENSION(KI) :: zsea_fwsu
113 REAL,
DIMENSION(KI) :: zsea_fwsv
114 REAL,
DIMENSION(KI) :: zsea_heat
115 REAL,
DIMENSION(KI) :: zsea_snet
116 REAL,
DIMENSION(KI) :: zsea_wind
117 REAL,
DIMENSION(KI) :: zsea_fwsm
118 REAL,
DIMENSION(KI) :: zsea_evap
119 REAL,
DIMENSION(KI) :: zsea_rain
120 REAL,
DIMENSION(KI) :: zsea_snow
121 REAL,
DIMENSION(KI) :: zsea_watf
123 REAL,
DIMENSION(KI) :: zseaice_heat
124 REAL,
DIMENSION(KI) :: zseaice_snet
125 REAL,
DIMENSION(KI) :: zseaice_evap
127 INTEGER :: ilu, iluout
129 REAL(KIND=JPRB) :: zhook_handle
132 IF (lhook) CALL dr_hook(
'GET_SFXCPL_N',0,zhook_handle)
139 IF(ki/=u%NSIZE_FULL)
THEN
140 WRITE(iluout,*)
'size of field expected by the coupling :', ki
141 WRITE(iluout,*)
'size of field in SURFEX :', u%NSIZE_FULL
142 CALL
abor1_sfx(
'GET_SFXCPL_N: VECTOR SIZE NOT CORRECT FOR COUPLING')
155 zrecharge(:) = xundef
156 zsrcflood(:) = xundef
161 lcpl_gw,lcpl_flood,lcpl_calving, &
162 zrunoff,zdrain,zcalving,zrecharge, &
167 prui(:) = zrunoff(:)+zdrain(:)
168 piceflux(:) = zcalving(:)
179 zsea_fwsu(:) = xundef
180 zsea_fwsv(:) = xundef
181 zsea_heat(:) = xundef
182 zsea_snet(:) = xundef
183 zsea_wind(:) = xundef
184 zsea_fwsm(:) = xundef
185 zsea_evap(:) = xundef
186 zsea_rain(:) = xundef
187 zsea_snow(:) = xundef
188 zsea_watf(:) = xundef
190 zseaice_heat(:) = xundef
191 zseaice_snet(:) = xundef
192 zseaice_evap(:) = xundef
197 lcpl_seaice,lwater, &
198 zsea_fwsu,zsea_fwsv,zsea_heat,zsea_snet, &
199 zsea_wind,zsea_fwsm,zsea_evap,zsea_rain, &
200 zsea_snow,zsea_watf, &
201 zseaice_heat,zseaice_snet,zseaice_evap )
205 pfwsu(:) = zsea_fwsu(:)
206 pfwsv(:) = zsea_fwsv(:)
207 psnet(:) = zsea_snet(:)
208 pheat(:) = zsea_heat(:)
209 pevap(:) = zsea_evap(:)
210 prain(:) = zsea_rain(:)
211 psnow(:) = zsea_snow(:)
212 pfwsm(:) = zsea_fwsm(:)
213 pheat_ice(:) = zseaice_heat(:)
214 pevap_ice(:) = zseaice_evap(:)
215 psnet_ice(:) = zseaice_snet(:)
220 IF (lhook) CALL dr_hook(
'GET_SFXCPL_N',1,zhook_handle)
subroutine get_sfx_land(I, U, OCPL_GW, OCPL_FLOOD, OCPL_CALVING, PRUNOFF, PDRAIN, PCALVING, PRECHARGE, PSRCFLOOD)
subroutine get_sfxcpl_n(I, S, U, W, HPROGRAM, KI, PRUI, PWIND, PFWSU, PFWSV, PSNET, PHEAT, PEVAP, PRAIN, PSNOW, PICEFLUX, PFWSM, PHEAT_ICE, PEVAP_ICE, PSNET_ICE)
subroutine get_sfx_sea(S, U, W, OCPL_SEAICE, OWATER, PSEA_FWSU, PSEA_FWSV, PSEA_HEAT, PSEA_SNET, PSEA_WIND, PSEA_FWSM, PSEA_EVAP, PSEA_RAIN, PSEA_SNOW, PSEA_WATF, PSEAICE_HEAT, PSEAICE_SNET, PSEAICE_EVAP)
subroutine abor1_sfx(YTEXT)
subroutine get_luout(HPROGRAM, KLUOUT)