SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/modn_tebn.F90
Go to the documentation of this file.
00001 !     ##################
00002       MODULE MODN_TEB_n
00003 !     ##################
00004 !
00005 !!****  *MODN_TEB_n* - declaration of namelist NAM_TEBn
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !       The purpose of this module is to specify  the namelist NAM_TEBn
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    10/2004 by P. Le Moigne: miscellaneous switch
00027 !!      Modified    07/2007 by P. Le Moigne: minimum wind speed and/or shear
00028 !!      Modified    08/2009 by B. Decharme : LSURF_BUDGETC for all tiles
00029 !!      Modified    08/2012 by G. Pigeon : CH_BEM for conv. coef option
00030 !-------------------------------------------------------------------------------
00031 !
00032 !*       0.   DECLARATIONS
00033 !             ------------
00034 !
00035 USE MODD_DIAG_MISC_TEB_n, ONLY:                 &
00036            LSURF_MISC_BUDGET_n => LSURF_MISC_BUDGET
00037 USE MODD_DIAG_TEB_n, ONLY:                      &
00038            XDIAG_TSTEP_n => XDIAG_TSTEP,        &
00039            N2M_n => N2M,                        &
00040            L2M_MIN_ZS_n => L2M_MIN_ZS,          &
00041            LPGD_n => LPGD,                      &
00042            LPGD_FIX_n => LPGD_FIX,              &
00043            LSURF_BUDGET_n => LSURF_BUDGET,      &
00044            LRAD_BUDGET_n => LRAD_BUDGET,        &
00045            LCOEF_n => LCOEF,                    &
00046            LSURF_VARS_n => LSURF_VARS
00047 USE MODD_DIAG_UTCI_TEB_n, ONLY :                &
00048            LUTCI_n => LUTCI  
00049 USE MODD_TEB_n, ONLY:                           &
00050            XTSTEP_n => XTSTEP,                  &
00051            XOUT_TSTEP_n => XOUT_TSTEP,          &
00052            CZ0H_n => CZ0H,                      &
00053            CCH_BEM_n => CCH_BEM
00054 USE MODD_CH_TEB_n, ONLY:                        &
00055            CCH_DRY_DEP_n => CCH_DRY_DEP  
00056 !
00057 !
00058 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00059 USE PARKIND1  ,ONLY : JPRB
00060 !
00061 IMPLICIT NONE
00062 !
00063 LOGICAL           :: LPGD
00064 LOGICAL           :: LPGD_FIX
00065 LOGICAL           :: L2M_MIN_ZS         
00066 LOGICAL           :: LSURF_BUDGET
00067 LOGICAL           :: LRAD_BUDGET
00068 LOGICAL           :: LCOEF
00069 LOGICAL           :: LSURF_VARS
00070 LOGICAL           :: LSURF_MISC_BUDGET
00071 LOGICAL           :: LUTCI
00072 LOGICAL           :: LSURF_BUDGETC
00073 LOGICAL           :: LRESET_BUDGETC
00074 !
00075  CHARACTER(LEN=6)  :: CCH_DRY_DEP
00076  CHARACTER(LEN=6)  :: CZ0H
00077  CHARACTER(LEN=5)  :: CCH_BEM
00078 !
00079 REAL              :: XTSTEP
00080 REAL              :: XOUT_TSTEP
00081 REAL              :: XDIAG_TSTEP
00082 !
00083 INTEGER           :: N2M
00084 !
00085 NAMELIST/NAM_DIAG_SURFn/N2M,L2M_MIN_ZS,LSURF_BUDGET,LRAD_BUDGET, &
00086                         LCOEF,LSURF_VARS, LSURF_BUDGETC, LRESET_BUDGETC
00087 !
00088 NAMELIST/NAM_CH_TEBn/CCH_DRY_DEP
00089 NAMELIST/NAM_DIAG_TEBn/LPGD,LPGD_FIX,LSURF_MISC_BUDGET,LUTCI
00090 NAMELIST/NAM_TEBn/CZ0H,CCH_BEM
00091 !
00092 CONTAINS
00093 !
00094 SUBROUTINE INIT_NAM_DIAG_SURFn
00095 
00096   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00097 
00098   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_DIAG_SURFN',0,ZHOOK_HANDLE)
00099   XTSTEP = XTSTEP_n
00100   XOUT_TSTEP = XOUT_TSTEP_n  
00101   XDIAG_TSTEP = XDIAG_TSTEP_n  
00102   N2M = N2M_n
00103   L2M_MIN_ZS = L2M_MIN_ZS_n
00104   LSURF_BUDGET = LSURF_BUDGET_n
00105   LRAD_BUDGET = LRAD_BUDGET_n
00106   LCOEF = LCOEF_n
00107   LSURF_VARS = LSURF_VARS_n
00108 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_DIAG_SURFN',1,ZHOOK_HANDLE)
00109 END SUBROUTINE INIT_NAM_DIAG_SURFn
00110 
00111 SUBROUTINE UPDATE_NAM_DIAG_SURFn
00112 
00113   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00114 
00115   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_DIAG_SURFN',0,ZHOOK_HANDLE)
00116   XDIAG_TSTEP_n = XDIAG_TSTEP  
00117   N2M_n = N2M
00118   L2M_MIN_ZS_n = L2M_MIN_ZS
00119   LSURF_BUDGET_n = LSURF_BUDGET
00120   LRAD_BUDGET_n = LRAD_BUDGET 
00121   LCOEF_n = LCOEF
00122   LSURF_VARS_n = LSURF_VARS
00123 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_DIAG_SURFN',1,ZHOOK_HANDLE)
00124 END SUBROUTINE UPDATE_NAM_DIAG_SURFn
00125 !
00126 SUBROUTINE INIT_NAM_TEBn
00127 
00128   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00129 
00130   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_TEBN',0,ZHOOK_HANDLE)
00131   CZ0H = CZ0H_n
00132   CCH_BEM = CCH_BEM_n
00133 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_TEBN',1,ZHOOK_HANDLE)
00134 END SUBROUTINE INIT_NAM_TEBn
00135 
00136 SUBROUTINE UPDATE_NAM_TEBn
00137 
00138   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00139 
00140   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_TEBN',0,ZHOOK_HANDLE)
00141   XTSTEP_n = XTSTEP
00142   XOUT_TSTEP_n = XOUT_TSTEP    
00143   CZ0H_n = CZ0H
00144   CCH_BEM_n = CCH_BEM
00145 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_TEBN',1,ZHOOK_HANDLE)
00146 END SUBROUTINE UPDATE_NAM_TEBn
00147 
00148 SUBROUTINE INIT_NAM_CH_TEBn
00149 
00150   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00151 
00152   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_CH_TEBN',0,ZHOOK_HANDLE)
00153   CCH_DRY_DEP = CCH_DRY_DEP_n
00154 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_CH_TEBN',1,ZHOOK_HANDLE)
00155 END SUBROUTINE INIT_NAM_CH_TEBn
00156 
00157 SUBROUTINE UPDATE_NAM_CH_TEBn
00158 
00159   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00160 
00161   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_CH_TEBN',0,ZHOOK_HANDLE)
00162   CCH_DRY_DEP_n = CCH_DRY_DEP
00163 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_CH_TEBN',1,ZHOOK_HANDLE)
00164 END SUBROUTINE UPDATE_NAM_CH_TEBn
00165 
00166 SUBROUTINE INIT_NAM_DIAG_TEBn
00167 
00168   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00169 
00170   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_DIAG_TEBN',0,ZHOOK_HANDLE)
00171   LPGD = LPGD_n
00172   LPGD_FIX = LPGD_FIX_n
00173   LSURF_MISC_BUDGET = LSURF_MISC_BUDGET_n
00174   LUTCI = LUTCI_n
00175 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:INIT_NAM_DIAG_TEBN',1,ZHOOK_HANDLE)
00176 END SUBROUTINE INIT_NAM_DIAG_TEBn
00177 
00178 SUBROUTINE UPDATE_NAM_DIAG_TEBn
00179 
00180   REAL(KIND=JPRB) :: ZHOOK_HANDLE
00181 
00182   IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_DIAG_TEBN',0,ZHOOK_HANDLE)
00183   LPGD_n = LPGD
00184   LPGD_FIX_n = LPGD_FIX
00185   LSURF_MISC_BUDGET_n = LSURF_MISC_BUDGET
00186   LUTCI_n = LUTCI
00187 IF (LHOOK) CALL DR_HOOK('MODN_TEB_N:UPDATE_NAM_DIAG_TEBN',1,ZHOOK_HANDLE)
00188 END SUBROUTINE UPDATE_NAM_DIAG_TEBn
00189 
00190 END MODULE MODN_TEB_n