64 INTEGER,
INTENT(IN) :: KLUOUT
69 REAL(KIND=JPRB) :: ZHOOK_HANDLE
73 IF (
lhook)
CALL dr_hook(
'SFX_OASIS_CHECK',0,zhook_handle)
76 IF(u%CWATER/=
'FLAKE ')
THEN 77 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 78 WRITE(kluout,*)
'!!! SFX - LAKE coupling is asked !!!' 79 WRITE(kluout,*)
'!!! but CWATER /= FLAKE !!!' 80 WRITE(kluout,*)
'!!! !!!' 81 WRITE(kluout,*)
'!!! Please check your namelist !!!' 82 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 83 CALL abor1_sfx(
'SFX_OASIS_CHECK: SFX - LAKE coupling asked but CWATER /= FLAKE')
89 IF(.NOT.io%LGLACIER)
THEN 90 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 91 WRITE(kluout,*)
'Calving flux is asked by SFX - OASIS coupling ' 92 WRITE(kluout,*)
'CCALVING = '//
trim(
ccalving)//
' in NAM_SFX_LAND_CPL' 93 WRITE(kluout,*)
'but LGLACIER in not activated in NAM_ISBAn ' 94 WRITE(kluout,*)
'Please check your SURFEX namelist ' 95 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 96 CALL abor1_sfx(
'SFX_OASIS_CHECK: Calving flux is asked by SFX - OASIS coupling')
101 IF(
lcpl_gw.AND.io%CISBA/=
'DIF')
THEN 102 WRITE(kluout,*)
'SFX_OASIS_CHECK: Water table depth / surface coupling requires ISBA-DF' 103 CALL abor1_sfx(
'SFX_OASIS_CHECK: ISBA-DF is required for SFX - Groundwater coupling')
105 IF(.NOT.
lcpl_gw.AND.io%CISBA==
'DIF'.AND.io%LWTD)
THEN 106 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 107 WRITE(kluout,*)
'!!! A groundwater map is specified and LAND coupling !!!' 108 WRITE(kluout,*)
'!!! is activated but not groundwater/surface coupling !!!' 109 WRITE(kluout,*)
'!!! !!!' 110 WRITE(kluout,*)
'!!! ARE YOU SURE : YOU DO NOT WANT THIS COUPLING ? !!!' 111 WRITE(kluout,*)
'!!! !!!' 112 WRITE(kluout,*)
'!!! Use NAM_SFX_LAND_CPL with CWTD and CFWTD !!!' 113 WRITE(kluout,*)
'!!! if you want this coupling via OASIS !!!' 114 WRITE(kluout,*)
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' 118 IF(
lwater.AND.(u%CWATER==
'NONE '.OR.u%CWATER==
'FLAKE'))
THEN 119 WRITE(kluout,*)
'LWATER = ',
lwater,
' CWATER = ',u%CWATER
120 WRITE(kluout,*)
'! Inland water should not be added to sea mask in case CWATER is NONE or FLAKE !!!' 121 WRITE(kluout,*)
'! Change CWATER or put LWATER=.FALSE. in NAM_SFX_SEA_CPL !!!' 122 CALL abor1_sfx(
'SFX_OASIS_READ_NAM: LWATER and CWATER not consistent')
125 IF (
lhook)
CALL dr_hook(
'SFX_OASIS_CHECK',1,zhook_handle)
static const char * trim(const char *name, int *n)
subroutine sfx_oasis_check(IO, U, KLUOUT)
subroutine abor1_sfx(YTEXT)
character(len=8) ccalving