SURFEX v7.3
General documentation of Surfex
|
00001 ! ######### 00002 SUBROUTINE CO2_TEB_GREENROOF_INIT_n(PCO2) 00003 ! ##################### 00004 ! 00005 !!**** *CO2_TEB_GREENROOF_INIT_n* - routine to initialize ISBA-AGS variables 00006 !! 00007 !! PURPOSE 00008 !! ------- 00009 !! 00010 !!** METHOD 00011 !! ------ 00012 !! 00013 !! EXTERNAL 00014 !! -------- 00015 !! 00016 !! 00017 !! IMPLICIT ARGUMENTS 00018 !! ------------------ 00019 !! 00020 !! REFERENCE 00021 !! --------- 00022 !! 00023 !! 00024 !! AUTHOR 00025 !! ------ 00026 !! V. Masson *Meteo France* 00027 !! 00028 !! MODIFICATIONS 00029 !! ------------- 00030 !! Original 02/2003 00031 !! J.C. Calvet 01/2004 Externalization 00032 !! P Le Moigne 11/2004 cotwoinit changed into cotwoinit_n 00033 !! P Le Moigne 09/2005 AGS modifs of L. Jarlan 00034 !! S Lafont 09/2008 Add initialisation of POI and ABC (needed for TORI) 00035 !! A.L. Gibelin 04/2009 : TAU_WOOD for NCB option 00036 !! A.L. Gibelin 04/2009 : Add carbon spinup 00037 !! A.L. Gibelin 07/2009 : Suppress RDK and transform GPP as a diagnostic 00038 !! A.L. Gibelin 07/2009 : Suppress PPST and PPSTF as outputs 00039 !! 00040 !------------------------------------------------------------------------------- 00041 ! 00042 !* 0. DECLARATIONS 00043 ! ------------ 00044 ! 00045 USE MODD_SURF_PAR, ONLY : XUNDEF 00046 USE MODD_TEB_VEG_n, ONLY : CPHOTO 00047 USE MODD_TEB_GREENROOF_n,ONLY : XVEGTYPE, & 00048 XGMES, XGC, XDMAX, XABC, XPOI, XANMAX,& 00049 XFZERO, XEPSO, XGAMM, XQDGAMM, & 00050 XQDGMES, XT1GMES, XT2GMES, XAMAX, & 00051 XQDAMAX, XT1AMAX, XT2AMAX, XAH, XBH 00052 USE MODD_DATA_COVER_PAR, ONLY : NVEGTYPE 00053 ! 00054 USE MODI_COTWOINIT_n 00055 ! 00056 ! 00057 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00058 USE PARKIND1 ,ONLY : JPRB 00059 ! 00060 IMPLICIT NONE 00061 ! 00062 !* 0.1 Declarations of arguments 00063 ! ------------------------- 00064 ! 00065 REAL, DIMENSION(:), INTENT(IN) :: PCO2 ! air CO2 concentration (kg/kg) 00066 ! 00067 ! 00068 ! 00069 !* 0.2 Declarations of local variables 00070 ! ------------------------------- 00071 ! 00072 REAL, DIMENSION(SIZE(XVEGTYPE,1)) :: ZTAU_WOOD 00073 INTEGER :: ILU ! size of arrays 00074 INTEGER :: JP ! loop on tiles 00075 ! 00076 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00077 !------------------------------------------------------------------------------- 00078 ! 00079 IF (LHOOK) CALL DR_HOOK('CO2_TEB_GREENROOF_INIT_N',0,ZHOOK_HANDLE) 00080 ILU = SIZE(XVEGTYPE,1) 00081 ! 00082 ALLOCATE(XANMAX (ILU)) 00083 ALLOCATE(XFZERO (ILU)) 00084 ALLOCATE(XEPSO (ILU)) 00085 ALLOCATE(XGAMM (ILU)) 00086 ALLOCATE(XQDGAMM (ILU)) 00087 ALLOCATE(XQDGMES (ILU)) 00088 ALLOCATE(XT1GMES (ILU)) 00089 ALLOCATE(XT2GMES (ILU)) 00090 ALLOCATE(XAMAX (ILU)) 00091 ALLOCATE(XQDAMAX (ILU)) 00092 ALLOCATE(XT1AMAX (ILU)) 00093 ALLOCATE(XT2AMAX (ILU)) 00094 ALLOCATE(XAH (ILU)) 00095 ALLOCATE(XBH (ILU)) 00096 ! 00097 CALL COTWOINIT_n(CPHOTO, XVEGTYPE,XGMES,PCO2,XGC,& 00098 XDMAX,XABC,XPOI,XANMAX, XFZERO, & 00099 XEPSO,XGAMM,XQDGAMM,XQDGMES,XT1GMES, & 00100 XT2GMES,XAMAX,XQDAMAX,XT1AMAX, & 00101 XT2AMAX,XAH,XBH,ZTAU_WOOD ) 00102 ! 00103 !------------------------------------------------------------------------------- 00104 IF (LHOOK) CALL DR_HOOK('CO2_TEB_GREENROOF_INIT_N',1,ZHOOK_HANDLE) 00105 !------------------------------------------------------------------------------- 00106 ! 00107 END SUBROUTINE CO2_TEB_GREENROOF_INIT_n