|
SURFEX v7.3
General documentation of Surfex
|
00001 ! ################## 00002 MODULE MODN_FLAKE_n 00003 ! ################## 00004 ! 00005 !!**** *MODN_FLAKE_n* - declaration of namelist NAM_FLAKEn 00006 !! 00007 !! PURPOSE 00008 !! ------- 00009 ! The purpose of this module is to specify the namelist NAM_FLAKEn 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 !------------------------------------------------------------------------------- 00027 ! 00028 !* 0. DECLARATIONS 00029 ! ------------ 00030 ! 00031 USE MODD_DIAG_MISC_FLAKE_n, ONLY: & 00032 LWATER_PROFILE_n => LWATER_PROFILE, & 00033 XZWAT_PROFILE_n => XZWAT_PROFILE 00034 00035 USE MODD_DIAG_FLAKE_n, ONLY: & 00036 XDIAG_TSTEP_n => XDIAG_TSTEP, & 00037 N2M_n => N2M, & 00038 L2M_MIN_ZS_n => L2M_MIN_ZS, &! 00039 LSURF_BUDGET_n => LSURF_BUDGET, & 00040 LRAD_BUDGET_n => LRAD_BUDGET, & 00041 LSURF_BUDGETC_n => LSURF_BUDGETC, & 00042 LRESET_BUDGETC_n => LRESET_BUDGETC, & 00043 LCOEF_n => LCOEF, & 00044 LSURF_VARS_n => LSURF_VARS 00045 00046 USE MODD_CH_WATFLUX_n, ONLY: & 00047 CCH_DRY_DEP_n => CCH_DRY_DEP 00048 00049 Use MODD_FLAKE_n, ONLY: & 00050 XTSTEP_n => XTSTEP, & 00051 XOUT_TSTEP_n => XOUT_TSTEP, & 00052 LSEDIMENTS_n => LSEDIMENTS, & 00053 CFLK_FLUX_n => CFLK_FLUX, & 00054 CFLK_ALB_n => CFLK_ALB, & 00055 CSNOW_FLK_n => CSNOW_FLK, & 00056 XICHCE_n => XICHCE, & 00057 LPRECIP_n => LPRECIP, & 00058 LPWEBB_n => LPWEBB 00059 00060 ! 00061 00062 ! 00063 ! 00064 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00065 USE PARKIND1 ,ONLY : JPRB 00066 ! 00067 IMPLICIT NONE 00068 ! 00069 REAL :: XTSTEP 00070 REAL :: XOUT_TSTEP 00071 REAL :: XDIAG_TSTEP 00072 INTEGER :: N2M 00073 LOGICAL :: L2M_MIN_ZS 00074 LOGICAL :: LSURF_BUDGET 00075 LOGICAL :: LRAD_BUDGET 00076 LOGICAL :: LSURF_BUDGETC 00077 LOGICAL :: LRESET_BUDGETC 00078 LOGICAL :: LCOEF 00079 LOGICAL :: LSURF_VARS 00080 CHARACTER(LEN=6) :: CCH_DRY_DEP 00081 ! 00082 LOGICAL :: LSEDIMENTS 00083 CHARACTER(LEN=3) :: CSNOW_FLK 00084 CHARACTER(LEN=5) :: CFLK_FLUX 00085 CHARACTER(LEN=4) :: CFLK_ALB 00086 ! 00087 LOGICAL :: LWATER_PROFILE 00088 REAL,DIMENSION(100) :: XZWAT_PROFILE 00089 ! 00090 REAL :: XICHCE 00091 LOGICAL :: LPRECIP 00092 LOGICAL :: LPWEBB 00093 ! 00094 NAMELIST/NAM_DIAG_FLAKEn/LWATER_PROFILE,XZWAT_PROFILE 00095 NAMELIST/NAM_FLAKEn/LSEDIMENTS,CSNOW_FLK, CFLK_FLUX, CFLK_ALB, & 00096 XICHCE, LPRECIP, LPWEBB 00097 NAMELIST/NAM_DIAG_SURFn/N2M,L2M_MIN_ZS,LSURF_BUDGET,LRAD_BUDGET, & 00098 LSURF_BUDGETC,LRESET_BUDGETC,LCOEF,LSURF_VARS 00099 NAMELIST/NAM_CH_WATFLUXn/CCH_DRY_DEP 00100 ! 00101 CONTAINS 00102 ! 00103 SUBROUTINE INIT_NAM_FLAKEn 00104 00105 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00106 00107 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_FLAKEN',0,ZHOOK_HANDLE) 00108 XTSTEP=XTSTEP_n 00109 XOUT_TSTEP=XOUT_TSTEP_n 00110 LSEDIMENTS=LSEDIMENTS_n 00111 CFLK_FLUX=CFLK_FLUX_n 00112 CFLK_ALB=CFLK_ALB_n 00113 CSNOW_FLK=CSNOW_FLK_n 00114 XICHCE=XICHCE_n 00115 LPRECIP=LPRECIP_n 00116 LPWEBB=LPWEBB_n 00117 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_FLAKEN',1,ZHOOK_HANDLE) 00118 END SUBROUTINE INIT_NAM_FLAKEn 00119 ! 00120 SUBROUTINE UPDATE_NAM_FLAKEn 00121 00122 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00123 00124 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_FLAKEN',0,ZHOOK_HANDLE) 00125 XTSTEP_n = XOUT_TSTEP 00126 XOUT_TSTEP_n = XOUT_TSTEP 00127 LSEDIMENTS_n =LSEDIMENTS 00128 CFLK_FLUX_n=CFLK_FLUX 00129 CFLK_ALB_n=CFLK_ALB 00130 CSNOW_FLK_n=CSNOW_FLK 00131 XICHCE_n=XICHCE 00132 LPRECIP_n=LPRECIP 00133 LPWEBB_n=LPWEBB 00134 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_FLAKEN',1,ZHOOK_HANDLE) 00135 END SUBROUTINE UPDATE_NAM_FLAKEn 00136 ! 00137 SUBROUTINE INIT_NAM_DIAG_SURFn 00138 00139 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00140 00141 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_DIAG_SURFN',0,ZHOOK_HANDLE) 00142 XDIAG_TSTEP = XDIAG_TSTEP_n 00143 N2M = N2M_n 00144 L2M_MIN_ZS = L2M_MIN_ZS_n 00145 LSURF_BUDGET = LSURF_BUDGET_n 00146 LRAD_BUDGET = LRAD_BUDGET_n 00147 LSURF_BUDGETC = LSURF_BUDGETC_n 00148 LRESET_BUDGETC = LRESET_BUDGETC_n 00149 LCOEF = LCOEF_n 00150 LSURF_VARS = LSURF_VARS_n 00151 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_DIAG_SURFN',1,ZHOOK_HANDLE) 00152 END SUBROUTINE INIT_NAM_DIAG_SURFn 00153 00154 SUBROUTINE UPDATE_NAM_DIAG_SURFn 00155 00156 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00157 00158 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_DIAG_SURFN',0,ZHOOK_HANDLE) 00159 XDIAG_TSTEP_n = XDIAG_TSTEP 00160 N2M_n = N2M 00161 L2M_MIN_ZS_n = L2M_MIN_ZS 00162 LSURF_BUDGET_n = LSURF_BUDGET 00163 LRAD_BUDGET_n = LRAD_BUDGET 00164 LSURF_BUDGETC_n = LSURF_BUDGETC 00165 LRESET_BUDGETC_n = LRESET_BUDGETC 00166 LCOEF_n = LCOEF 00167 LSURF_VARS_n = LSURF_VARS 00168 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_DIAG_SURFN',1,ZHOOK_HANDLE) 00169 END SUBROUTINE UPDATE_NAM_DIAG_SURFn 00170 ! 00171 SUBROUTINE INIT_NAM_DIAG_FLAKEn 00172 00173 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00174 00175 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_DIAG_FLAKEN',0,ZHOOK_HANDLE) 00176 LWATER_PROFILE = LWATER_PROFILE_n 00177 XZWAT_PROFILE = XZWAT_PROFILE_n 00178 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_DIAG_FLAKEN',1,ZHOOK_HANDLE) 00179 END SUBROUTINE INIT_NAM_DIAG_FLAKEn 00180 00181 SUBROUTINE UPDATE_NAM_DIAG_FLAKEn 00182 00183 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00184 00185 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_DIAG_FLAKEN',0,ZHOOK_HANDLE) 00186 LWATER_PROFILE_n = LWATER_PROFILE 00187 XZWAT_PROFILE_n = XZWAT_PROFILE 00188 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_DIAG_FLAKEN',1,ZHOOK_HANDLE) 00189 END SUBROUTINE UPDATE_NAM_DIAG_FLAKEn 00190 00191 SUBROUTINE INIT_NAM_CH_WATFLUXn 00192 00193 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00194 00195 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_CH_WATFLUXN',0,ZHOOK_HANDLE) 00196 CCH_DRY_DEP = CCH_DRY_DEP_n 00197 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:INIT_NAM_CH_WATFLUXN',1,ZHOOK_HANDLE) 00198 END SUBROUTINE INIT_NAM_CH_WATFLUXn 00199 00200 SUBROUTINE UPDATE_NAM_CH_WATFLUXn 00201 00202 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00203 00204 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_CH_WATFLUXN',0,ZHOOK_HANDLE) 00205 CCH_DRY_DEP_n = CCH_DRY_DEP 00206 IF (LHOOK) CALL DR_HOOK('MODN_FLAKE_N:UPDATE_NAM_CH_WATFLUXN',1,ZHOOK_HANDLE) 00207 END SUBROUTINE UPDATE_NAM_CH_WATFLUXn 00208 00209 END MODULE MODN_FLAKE_n
1.8.0