SURFEX v7.3
General documentation of Surfex
|
00001 ! ################## 00002 MODULE MODN_WATFLUX_n 00003 ! ################## 00004 ! 00005 !!**** *MODN_WATFLUX_n* - declaration of namelist NAM_WATFLUXn 00006 !! 00007 !! PURPOSE 00008 !! ------- 00009 ! The purpose of this module is to specify the namelist NAM_WATFLUXn 00010 ! 00011 !! 00012 !!** IMPLICIT ARGUMENTS 00013 !! ------------------ 00014 !! 00015 !! REFERENCE 00016 !! --------- 00017 !! 00018 !! 00019 !! AUTHOR 00020 !! ------ 00021 !! V. Masson *Meteo France* 00022 !! 00023 !! MODIFICATIONS 00024 !! ------------- 00025 !! Original 01/2004 00026 !! Modified 08/2009 by B. Decharme : LSURF_BUDGETC for all tiles 00027 !------------------------------------------------------------------------------- 00028 ! 00029 !* 0. DECLARATIONS 00030 ! ------------ 00031 ! 00032 USE MODD_WATFLUX_n, ONLY: & 00033 XTSTEP_n => XTSTEP, & 00034 XOUT_TSTEP_n => XOUT_TSTEP, & 00035 CWAT_ALB_n=>CWAT_ALB, & 00036 CINTERPOL_TS_n => CINTERPOL_TS 00037 ! 00038 USE MODD_DIAG_WATFLUX_n, ONLY: & 00039 XDIAG_TSTEP_n => XDIAG_TSTEP, & 00040 N2M_n => N2M, & 00041 L2M_MIN_ZS_n => L2M_MIN_ZS, & 00042 LSURF_BUDGET_n => LSURF_BUDGET, & 00043 LRAD_BUDGET_n => LRAD_BUDGET, & 00044 LSURF_BUDGETC_n => LSURF_BUDGETC, & 00045 LRESET_BUDGETC_n => LRESET_BUDGETC, & 00046 LCOEF_n => LCOEF, & 00047 LSURF_VARS_n => LSURF_VARS 00048 00049 USE MODD_CH_WATFLUX_n, ONLY: & 00050 CCH_DRY_DEP_n => CCH_DRY_DEP 00051 ! 00052 ! 00053 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00054 USE PARKIND1 ,ONLY : JPRB 00055 ! 00056 IMPLICIT NONE 00057 ! 00058 CHARACTER(LEN=4) :: CWAT_ALB 00059 REAL :: XTSTEP 00060 REAL :: XOUT_TSTEP 00061 REAL :: XDIAG_TSTEP 00062 INTEGER :: N2M 00063 LOGICAL :: L2M_MIN_ZS 00064 LOGICAL :: LSURF_BUDGET 00065 LOGICAL :: LRAD_BUDGET 00066 LOGICAL :: LSURF_BUDGETC 00067 LOGICAL :: LRESET_BUDGETC 00068 LOGICAL :: LCOEF 00069 LOGICAL :: LSURF_VARS 00070 CHARACTER(LEN=6) :: CCH_DRY_DEP 00071 CHARACTER(LEN=6) :: CINTERPOL_TS 00072 ! 00073 NAMELIST/NAM_WATFLUXn/CWAT_ALB,CINTERPOL_TS 00074 NAMELIST/NAM_DIAG_SURFn/N2M,L2M_MIN_ZS,LSURF_BUDGET,LRAD_BUDGET, & 00075 LSURF_BUDGETC,LRESET_BUDGETC,LCOEF,LSURF_VARS 00076 NAMELIST/NAM_CH_WATFLUXn/CCH_DRY_DEP 00077 ! 00078 CONTAINS 00079 ! 00080 SUBROUTINE INIT_NAM_WATFLUXn 00081 00082 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00083 00084 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_WATFLUXN',0,ZHOOK_HANDLE) 00085 XTSTEP = XTSTEP_n 00086 XOUT_TSTEP = XOUT_TSTEP_n 00087 CWAT_ALB = CWAT_ALB_n 00088 CINTERPOL_TS = CINTERPOL_TS_n 00089 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_WATFLUXN',1,ZHOOK_HANDLE) 00090 END SUBROUTINE INIT_NAM_WATFLUXn 00091 ! 00092 SUBROUTINE UPDATE_NAM_WATFLUXn 00093 00094 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00095 00096 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_WATFLUXN',0,ZHOOK_HANDLE) 00097 XTSTEP_n = XTSTEP 00098 XOUT_TSTEP_n = XOUT_TSTEP 00099 CWAT_ALB_n = CWAT_ALB 00100 CINTERPOL_TS_n = CINTERPOL_TS 00101 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_WATFLUXN',1,ZHOOK_HANDLE) 00102 END SUBROUTINE UPDATE_NAM_WATFLUXn 00103 ! 00104 SUBROUTINE INIT_NAM_DIAG_SURFn 00105 00106 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00107 00108 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_DIAG_SURFN',0,ZHOOK_HANDLE) 00109 XDIAG_TSTEP = XDIAG_TSTEP_n 00110 N2M = N2M_n 00111 L2M_MIN_ZS = L2M_MIN_ZS_n 00112 LSURF_BUDGET = LSURF_BUDGET_n 00113 LRAD_BUDGET = LRAD_BUDGET_n 00114 LSURF_BUDGETC = LSURF_BUDGETC_n 00115 LRESET_BUDGETC = LRESET_BUDGETC_n 00116 LCOEF = LCOEF_n 00117 LSURF_VARS = LSURF_VARS_n 00118 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_DIAG_SURFN',1,ZHOOK_HANDLE) 00119 END SUBROUTINE INIT_NAM_DIAG_SURFn 00120 00121 SUBROUTINE UPDATE_NAM_DIAG_SURFn 00122 00123 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00124 00125 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_DIAG_SURFN',0,ZHOOK_HANDLE) 00126 XDIAG_TSTEP_n = XDIAG_TSTEP 00127 N2M_n = N2M 00128 L2M_MIN_ZS_n = L2M_MIN_ZS 00129 LSURF_BUDGET_n = LSURF_BUDGET 00130 LRAD_BUDGET_n = LRAD_BUDGET 00131 LSURF_BUDGETC_n = LSURF_BUDGETC 00132 LRESET_BUDGETC_n = LRESET_BUDGETC 00133 LCOEF_n = LCOEF 00134 LSURF_VARS_n = LSURF_VARS 00135 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_DIAG_SURFN',1,ZHOOK_HANDLE) 00136 END SUBROUTINE UPDATE_NAM_DIAG_SURFn 00137 00138 SUBROUTINE INIT_NAM_CH_WATFLUXn 00139 00140 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00141 00142 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_CH_WATFLUXN',0,ZHOOK_HANDLE) 00143 CCH_DRY_DEP = CCH_DRY_DEP_n 00144 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:INIT_NAM_CH_WATFLUXN',1,ZHOOK_HANDLE) 00145 END SUBROUTINE INIT_NAM_CH_WATFLUXn 00146 00147 SUBROUTINE UPDATE_NAM_CH_WATFLUXn 00148 00149 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00150 00151 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_CH_WATFLUXN',0,ZHOOK_HANDLE) 00152 CCH_DRY_DEP_n = CCH_DRY_DEP 00153 IF (LHOOK) CALL DR_HOOK('MODN_WATFLUX_N:UPDATE_NAM_CH_WATFLUXN',1,ZHOOK_HANDLE) 00154 END SUBROUTINE UPDATE_NAM_CH_WATFLUXn 00155 00156 00157 END MODULE MODN_WATFLUX_n