SURFEX v7.3
General documentation of Surfex
|
00001 ! ######################### 00002 SUBROUTINE ECOCLIMAP2_LAI 00003 ! ######################### 00004 ! 00005 !!**** *ECOCLIMAP2_LAI* initializes cover-field correspondance arrays 00006 !! 00007 !! PURPOSE 00008 !! ------- 00009 !! 00010 !! METHOD 00011 !! ------ 00012 !! 00013 !! 00014 !! EXTERNAL 00015 !! -------- 00016 !! 00017 !! IMPLICIT ARGUMENTS 00018 !! ------------------ 00019 !! 00020 !! REFERENCE 00021 !! --------- 00022 !! 00023 !! AUTHOR 00024 !! ------ 00025 !! 00026 !! V. Masson Meteo-France 00027 !! 00028 !! MODIFICATION 00029 !! ------------ 00030 !! 00031 !! Original 09/2008 00032 !---------------------------------------------------------------------------- 00033 ! 00034 !* 0. DECLARATION 00035 ! ----------- 00036 ! 00037 USE MODD_SURF_PAR, ONLY : XUNDEF 00038 ! 00039 USE MODD_DATA_COVER, ONLY : XDATA_VEGTYPE, XDATA_LAI, XDATA_LAI_ALL_YEARS, LCLIM_LAI, NYEAR,& 00040 NECO2_START_YEAR, NECO2_END_YEAR 00041 USE MODD_DATA_COVER_PAR, ONLY : NVEGTYPE, JPCOVER 00042 00043 ! 00044 ! 00045 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00046 USE PARKIND1 ,ONLY : JPRB 00047 ! 00048 IMPLICIT NONE 00049 ! 00050 !* 0.1 Declaration of arguments 00051 ! ------------------------ 00052 ! 00053 !* 0.2 Declaration of local variables 00054 ! ------------------------------ 00055 ! 00056 ! 00057 INTEGER :: IYEAR ! year index 00058 INTEGER :: JCOVER,JVEGTYPE ! loop counters on covers and decades 00059 INTEGER :: JYEAR ! loop counter on years 00060 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00061 ! 00062 !------------------------------------------------------------------------------- 00063 ! 00064 !* 1. definition of LAI data 00065 ! ---------------------- 00066 ! 00067 IF (LHOOK) CALL DR_HOOK('ECOCLIMAP2_LAI',0,ZHOOK_HANDLE) 00068 XDATA_LAI(301:,:,:) = XUNDEF 00069 ! 00070 !* 2. if averaged LAI 00071 ! --------------- 00072 ! 00073 IF (LCLIM_LAI .OR. NYEAR<NECO2_START_YEAR .OR. NYEAR>NECO2_END_YEAR) THEN 00074 ! 00075 DO JCOVER=301,JPCOVER 00076 DO JVEGTYPE=1,NVEGTYPE 00077 IF (XDATA_VEGTYPE(JCOVER,JVEGTYPE).ne.0.) THEN 00078 XDATA_LAI(JCOVER,:,JVEGTYPE) = 0. 00079 DO JYEAR=1,5 00080 XDATA_LAI(JCOVER,:,JVEGTYPE)=XDATA_LAI(JCOVER,:,JVEGTYPE) & 00081 +XDATA_LAI_ALL_YEARS(JCOVER,(JYEAR-1)*36+1:JYEAR*36,JVEGTYPE)/5. 00082 END DO 00083 ENDIF 00084 END DO 00085 END DO 00086 00087 ! 00088 !* 3. if LAI of a specific year 00089 ! ------------------------- 00090 ELSE 00091 ! 00092 IYEAR = NYEAR - NECO2_START_YEAR 00093 DO JCOVER=301,JPCOVER 00094 DO JVEGTYPE=1,NVEGTYPE 00095 IF (XDATA_VEGTYPE(JCOVER,JVEGTYPE).ne.0.) THEN 00096 XDATA_LAI(JCOVER,:,JVEGTYPE)=XDATA_LAI_ALL_YEARS(JCOVER,IYEAR*36+1:(IYEAR+1)*36,JVEGTYPE) 00097 ENDIF 00098 ENDDO 00099 ENDDO 00100 ! 00101 END IF 00102 IF (LHOOK) CALL DR_HOOK('ECOCLIMAP2_LAI',1,ZHOOK_HANDLE) 00103 ! 00104 ! 00105 !------------------------------------------------------------------------------- 00106 ! 00107 END SUBROUTINE ECOCLIMAP2_LAI