SURFEX v7.3
General documentation of Surfex
|
00001 ! ####################################################################################### 00002 SUBROUTINE UPDATE_ESM_FLAKE_n(HPROGRAM,KI,KSW,PZENITH,PDIR_ALB,PSCA_ALB,PEMIS,PTSRAD) 00003 ! ####################################################################################### 00004 ! 00005 !!**** *UPDATE_ESM_FLAKE_n* - routine to update FLAKE radiative properties in Earth 00006 !! System Model after the call to OASIS coupler in order 00007 !! to close the energy budget between radiative scheme and surfex 00008 !! 00009 !! PURPOSE 00010 !! ------- 00011 !! 00012 !!** METHOD 00013 !! ------ 00014 !! 00015 !! EXTERNAL 00016 !! -------- 00017 !! 00018 !! 00019 !! IMPLICIT ARGUMENTS 00020 !! ------------------ 00021 !! 00022 !! REFERENCE 00023 !! --------- 00024 !! 00025 !! 00026 !! AUTHOR 00027 !! ------ 00028 !! B. Decharme 00029 !! 00030 !! MODIFICATIONS 00031 !! ------------- 00032 !! Original 09/2009 00033 !------------------------------------------------------------------------------- 00034 ! 00035 !* 0. DECLARATIONS 00036 ! ------------ 00037 ! 00038 USE MODD_CSTS, ONLY : XTT 00039 USE MODD_SURF_PAR, ONLY : XUNDEF 00040 USE MODD_FLAKE_n, ONLY : XDIR_ALB, XSCA_ALB, & 00041 XEMIS, XTS, CFLK_ALB 00042 ! 00043 USE MODI_UPDATE_RAD_SEAWAT 00044 ! 00045 ! 00046 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00047 USE PARKIND1 ,ONLY : JPRB 00048 ! 00049 IMPLICIT NONE 00050 ! 00051 !* 0.1 Declarations of arguments 00052 ! ------------------------- 00053 ! 00054 CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! program calling surf. schemes 00055 INTEGER, INTENT(IN) :: KI ! number of points 00056 INTEGER, INTENT(IN) :: KSW ! number of short-wave spectral bands 00057 ! 00058 REAL, DIMENSION(KI), INTENT(IN) :: PZENITH ! solar zenithal angle 00059 ! 00060 REAL, DIMENSION(KI,KSW),INTENT(OUT) :: PDIR_ALB ! direct albedo for each band 00061 REAL, DIMENSION(KI,KSW),INTENT(OUT) :: PSCA_ALB ! diffuse albedo for each band 00062 REAL, DIMENSION(KI), INTENT(OUT) :: PEMIS ! emissivity 00063 REAL, DIMENSION(KI), INTENT(OUT) :: PTSRAD ! radiative temperature 00064 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00065 ! 00066 ! 00067 !* 0.2 Declarations of local variables 00068 ! ------------------------------- 00069 ! 00070 !------------------------------------------------------------------------------- 00071 ! 00072 ! 00073 !* Albedo and emissivity on open sea and sea ice 00074 ! --------------------------------------------- 00075 ! 00076 IF (LHOOK) CALL DR_HOOK('UPDATE_ESM_FLAKE_N',0,ZHOOK_HANDLE) 00077 CALL UPDATE_RAD_SEAWAT(CFLK_ALB,XTS,PZENITH,XTT,XEMIS,XDIR_ALB,& 00078 XSCA_ALB,PDIR_ALB,PSCA_ALB,PEMIS,PTSRAD ) 00079 IF (LHOOK) CALL DR_HOOK('UPDATE_ESM_FLAKE_N',1,ZHOOK_HANDLE) 00080 ! 00081 !------------------------------------------------------------------------------- 00082 ! 00083 END SUBROUTINE UPDATE_ESM_FLAKE_n