SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/modd_pack_isba.F90
Go to the documentation of this file.
00001 !######################
00002 MODULE MODD_PACK_ISBA
00003 !######################
00004 !
00005 !!****  *MODD_PACK_ISBA - declaration of packed surface parameters for ISBA scheme
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !
00010 !!
00011 !!**  IMPLICIT ARGUMENTS
00012 !!    ------------------
00013 !!      None 
00014 !!
00015 !!    REFERENCE
00016 !!    ---------
00017 !!
00018 !!    AUTHOR
00019 !!    ------
00020 !!      A. Boone   *Meteo France*
00021 !!
00022 !!    MODIFICATIONS
00023 !!    -------------
00024 !!      Original       20/09/02
00025 !!      A.L. Gibelin    04/2009 : BIOMASS and RESP_BIOMASS arrays 
00026 !!      A.L. Gibelin    04/2009 : TAU_WOOD for NCB option 
00027 !!      A.L. Gibelin    05/2009 : Add carbon spinup
00028 !!      A.L. Gibelin    06/2009 : Soil carbon variables for CNT option
00029 !!      A.L. Gibelin    07/2009 : Suppress RDK and transform GPP as a diagnostic
00030 !!      A.L. Gibelin    07/2009 : Suppress PPST and PPSTF as outputs
00031 !!
00032 !-------------------------------------------------------------------------------
00033 !
00034 !*       0.   DECLARATIONS
00035 !             ------------
00036 !
00037 USE MODD_TYPE_DATE_SURF      
00038 !
00039 IMPLICIT NONE
00040 !-------------------------------------------------------------------------------
00041 !
00042 INTEGER :: NSIZE_LSIMPLE
00043 !$OMP THREADPRIVATE(NSIZE_LSIMPLE)
00044 INTEGER :: NSIZE_L0
00045 !$OMP THREADPRIVATE(NSIZE_L0)
00046 INTEGER :: NSIZE_NSIMPLE
00047 !$OMP THREADPRIVATE(NSIZE_NSIMPLE)
00048 INTEGER :: NSIZE_N0
00049 !$OMP THREADPRIVATE(NSIZE_N0)
00050 INTEGER :: NSIZE_TSIMPLE
00051 !$OMP THREADPRIVATE(NSIZE_TSIMPLE)
00052 INTEGER :: NSIZE_T0
00053 !$OMP THREADPRIVATE(NSIZE_T0)
00054 INTEGER :: NSIZE_SIMPLE
00055 !$OMP THREADPRIVATE(NSIZE_SIMPLE)
00056 INTEGER :: NSIZE_GROUND
00057 !$OMP THREADPRIVATE(NSIZE_GROUND)
00058 INTEGER :: NSIZE_VEGTYPE
00059 !$OMP THREADPRIVATE(NSIZE_VEGTYPE)
00060 INTEGER :: NSIZE_TG
00061 !$OMP THREADPRIVATE(NSIZE_TG)
00062 INTEGER :: NSIZE_SNOW
00063 !$OMP THREADPRIVATE(NSIZE_SNOW)
00064 INTEGER :: NSIZE_ALB
00065 !$OMP THREADPRIVATE(NSIZE_ALB)
00066 INTEGER :: NSIZE_2
00067 !$OMP THREADPRIVATE(NSIZE_2)
00068 INTEGER :: NSIZE_BIOMASS
00069 !$OMP THREADPRIVATE(NSIZE_BIOMASS)
00070 INTEGER :: NSIZE_SOILCARB
00071 !$OMP THREADPRIVATE(NSIZE_SOILCARB)
00072 INTEGER :: NSIZE_LITTLEVS
00073 !$OMP THREADPRIVATE(NSIZE_LITTLEVS)
00074 INTEGER :: NSIZE_LITTER
00075 !$OMP THREADPRIVATE(NSIZE_LITTER)
00076 INTEGER :: NSIZE_0
00077 !$OMP THREADPRIVATE(NSIZE_0)
00078 INTEGER :: NSIZE_00
00079 !$OMP THREADPRIVATE(NSIZE_00)
00080 INTEGER :: NSIZE_000
00081 !$OMP THREADPRIVATE(NSIZE_000)
00082 INTEGER :: NSIZE_01
00083 !$OMP THREADPRIVATE(NSIZE_01)
00084 LOGICAL, ALLOCATABLE, DIMENSION(:,:), TARGET :: LBLOCK_SIMPLE 
00085 !$OMP THREADPRIVATE(LBLOCK_SIMPLE)
00086 LOGICAL, ALLOCATABLE, DIMENSION(:,:), TARGET :: LBLOCK_0
00087 !$OMP THREADPRIVATE(LBLOCK_0)
00088 INTEGER, ALLOCATABLE, DIMENSION(:,:), TARGET :: NBLOCK_SIMPLE 
00089 !$OMP THREADPRIVATE(NBLOCK_SIMPLE)
00090 INTEGER, ALLOCATABLE, DIMENSION(:,:), TARGET :: NBLOCK_0
00091 !$OMP THREADPRIVATE(NBLOCK_0)
00092 TYPE(DATE_TIME), ALLOCATABLE, DIMENSION(:,:), TARGET :: TBLOCK_SIMPLE
00093 !$OMP THREADPRIVATE(TBLOCK_SIMPLE)
00094 TYPE(DATE_TIME), ALLOCATABLE, DIMENSION(:,:), TARGET :: TBLOCK_0
00095 !$OMP THREADPRIVATE(TBLOCK_0)
00096 REAL, ALLOCATABLE, DIMENSION(:,:), TARGET :: XBLOCK_SIMPLE
00097 !$OMP THREADPRIVATE(XBLOCK_SIMPLE)
00098 REAL, ALLOCATABLE, DIMENSION(:,:,:),TARGET :: XBLOCK_GROUND
00099 !$OMP THREADPRIVATE(XBLOCK_GROUND)
00100 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_VEGTYPE
00101 !$OMP THREADPRIVATE(XBLOCK_VEGTYPE)
00102 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_TG
00103 !$OMP THREADPRIVATE(XBLOCK_TG)
00104 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_SNOW
00105 !$OMP THREADPRIVATE(XBLOCK_SNOW)
00106 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_ALB
00107 !$OMP THREADPRIVATE(XBLOCK_ALB)
00108 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_2
00109 !$OMP THREADPRIVATE(XBLOCK_2)
00110 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_BIOMASS
00111 !$OMP THREADPRIVATE(XBLOCK_BIOMASS)
00112 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_SOILCARB
00113 !$OMP THREADPRIVATE(XBLOCK_SOILCARB)
00114 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_LITTLEVS
00115 !$OMP THREADPRIVATE(XBLOCK_LITTLEVS)
00116 REAL, ALLOCATABLE, DIMENSION(:,:,:,:), TARGET :: XBLOCK_LITTER
00117 !$OMP THREADPRIVATE(XBLOCK_LITTER)
00118 REAL, ALLOCATABLE, DIMENSION(:,:), TARGET :: XBLOCK_0
00119 !$OMP THREADPRIVATE(XBLOCK_0)
00120 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_00
00121 !$OMP THREADPRIVATE(XBLOCK_00)
00122 REAL, ALLOCATABLE, DIMENSION(:,:,:,:), TARGET :: XBLOCK_000
00123 !$OMP THREADPRIVATE(XBLOCK_000)
00124 REAL, ALLOCATABLE, DIMENSION(:,:,:), TARGET :: XBLOCK_01
00125 !$OMP THREADPRIVATE(XBLOCK_01)
00126 !
00127 ! Mask and number of grid elements containing patches/tiles:
00128 !
00129 REAL, POINTER, DIMENSION(:,:)  :: XP_VEGTYPE_PATCH ! fraction of each vegetation type for
00130 !$OMP THREADPRIVATE(XP_VEGTYPE_PATCH)
00131 !                                                      ! each vegetation unit/patch              (-)
00132 !
00133 ! General surface parameters:
00134 !
00135 REAL, POINTER, DIMENSION(:)    :: XP_SSO_SLOPE     ! orography slope within the grid mesh    (-)
00136 !$OMP THREADPRIVATE(XP_SSO_SLOPE)
00137 REAL, POINTER, DIMENSION(:)    :: XP_LAT           ! latitude    (-)
00138 !$OMP THREADPRIVATE(XP_LAT)
00139 REAL, POINTER, DIMENSION(:)    :: XP_LON           ! latitude    (-)
00140 !$OMP THREADPRIVATE(XP_LON)
00141 !
00142 ! Subgrid orography parameters
00143 !
00144 REAL, DIMENSION(:), POINTER :: XP_AOSIP,XP_AOSIM,XP_AOSJP,XP_AOSJM
00145 !$OMP THREADPRIVATE(XP_AOSIP, XP_AOSIM, XP_AOSJP, XP_AOSJM)
00146 ! directional A/S quantities in 4 coordinate directions
00147 ! (IP: i index up;  IM: i index down;  JP: j index up;  JM: j index down)
00148 ! They are used in soil routines to compute effective roughness length
00149 !
00150 REAL, DIMENSION(:), POINTER :: XP_HO2IP,XP_HO2IM,XP_HO2JP,XP_HO2JM
00151 !$OMP THREADPRIVATE(XP_HO2IP, XP_HO2IM, XP_HO2JP, XP_HO2JM)
00152 ! directional h/2 quantities in 4 coordinate directions
00153 ! (IP: i index up;  IM: i index down;  JP: j index up;  JM: j index down)
00154 ! They are used in soil routines to compute effective roughness length
00155 !
00156 REAL, DIMENSION(:), POINTER :: XP_Z0EFFIP,XP_Z0EFFIM,XP_Z0EFFJP,XP_Z0EFFJM
00157 !$OMP THREADPRIVATE(XP_Z0EFFIP, XP_Z0EFFIM, XP_Z0EFFJP, XP_Z0EFFJM)
00158 ! directional total roughness lenghts in 4 coordinate directions
00159 ! (IP: i index up;  IM: i index down;  JP: j index up;  JM: j index down)
00160 !
00161 REAL, POINTER, DIMENSION(:) :: XP_Z0REL         ! relief roughness length                 (m)
00162 !$OMP THREADPRIVATE(XP_Z0REL)
00163 
00164 !
00165 ! Input Parameters:
00166 !
00167 ! - bare soil:
00168 !
00169 REAL, POINTER, DIMENSION(:,:) :: XP_CLAY         ! clay fraction profile                   (-)
00170 !$OMP THREADPRIVATE(XP_CLAY)
00171 REAL, POINTER, DIMENSION(:,:) :: XP_SAND         ! sand fraction profile                   (-)
00172 !$OMP THREADPRIVATE(XP_SAND)
00173 
00174 REAL, POINTER, DIMENSION(:) :: XP_ALBNIR_DRY     ! near-infra-red albedo of dry soil       (-)
00175 !$OMP THREADPRIVATE(XP_ALBNIR_DRY)
00176 REAL, POINTER, DIMENSION(:) :: XP_ALBVIS_DRY     ! visible albedo of dry soil              (-)
00177 !$OMP THREADPRIVATE(XP_ALBVIS_DRY)
00178 REAL, POINTER, DIMENSION(:) :: XP_ALBUV_DRY      ! UV albedo of dry soil                   (-)
00179 !$OMP THREADPRIVATE(XP_ALBUV_DRY)
00180 REAL, POINTER, DIMENSION(:) :: XP_ALBNIR_WET     ! near-infra-red albedo of wet soil       (-)
00181 !$OMP THREADPRIVATE(XP_ALBNIR_WET)
00182 REAL, POINTER, DIMENSION(:) :: XP_ALBVIS_WET     ! visible albedo of wet soil              (-)
00183 !$OMP THREADPRIVATE(XP_ALBVIS_WET)
00184 REAL, POINTER, DIMENSION(:) :: XP_ALBUV_WET      ! UV albedo of wet soil                   (-)
00185 !$OMP THREADPRIVATE(XP_ALBUV_WET)
00186 REAL, POINTER, DIMENSION(:) :: XP_ALBNIR_SOIL    ! near-infra-red albedo of wet soil       (-)
00187 !$OMP THREADPRIVATE(XP_ALBNIR_SOIL)
00188 REAL, POINTER, DIMENSION(:) :: XP_ALBVIS_SOIL    ! visible albedo of soil                  (-)
00189 !$OMP THREADPRIVATE(XP_ALBVIS_SOIL)
00190 REAL, POINTER, DIMENSION(:) :: XP_ALBUV_SOIL     ! UV albedo of soil                       (-)
00191 !$OMP THREADPRIVATE(XP_ALBUV_SOIL)
00192 !
00193 ! - vegetation + bare soil:
00194 !
00195 REAL, POINTER, DIMENSION(:) :: XP_Z0_O_Z0H       ! ratio of surface roughness lengths
00196 !$OMP THREADPRIVATE(XP_Z0_O_Z0H)
00197 !                                                    ! (momentum to heat)                      (-)
00198 REAL, POINTER, DIMENSION(:) :: XP_ALBNIR         ! near-infra-red albedo                   (-)
00199 !$OMP THREADPRIVATE(XP_ALBNIR)
00200 REAL, POINTER, DIMENSION(:) :: XP_ALBVIS         ! visible albedo                          (-)
00201 !$OMP THREADPRIVATE(XP_ALBVIS)
00202 REAL, POINTER, DIMENSION(:) :: XP_ALBUV          ! UV albedo                               (-)
00203 !$OMP THREADPRIVATE(XP_ALBUV)
00204 REAL, POINTER, DIMENSION(:) :: XP_EMIS           ! snow-free surface emissivity                      (-)
00205 !$OMP THREADPRIVATE(XP_EMIS)
00206 REAL, POINTER, DIMENSION(:) :: XP_Z0             ! snow-free surface roughness length                (m)
00207 !$OMP THREADPRIVATE(XP_Z0)
00208 !
00209 ! - vegetation :
00210 !
00211 REAL, POINTER, DIMENSION(:) :: XP_ALBNIR_VEG     ! near-infra-red albedo of vegetation     (-)
00212 !$OMP THREADPRIVATE(XP_ALBNIR_VEG)
00213 REAL, POINTER, DIMENSION(:) :: XP_ALBVIS_VEG     ! visible albedo of vegetation            (-)
00214 !$OMP THREADPRIVATE(XP_ALBVIS_VEG)
00215 REAL, POINTER, DIMENSION(:) :: XP_ALBUV_VEG      ! UV albedo of vegetation                 (-)
00216 !$OMP THREADPRIVATE(XP_ALBUV_VEG)
00217 !
00218 !
00219 ! - vegetation: default option (Jarvis) and general parameters:
00220 !
00221 REAL, POINTER, DIMENSION(:) :: XP_VEG            ! vegetation cover fraction               (-)
00222 !$OMP THREADPRIVATE(XP_VEG)
00223 REAL, POINTER, DIMENSION(:) :: XP_WRMAX_CF       ! coefficient for maximum water 
00224 !$OMP THREADPRIVATE(XP_WRMAX_CF)
00225 !                                                    ! interception 
00226 !                                                    ! storage capacity on the vegetation      (-)
00227 REAL, POINTER, DIMENSION(:) :: XP_RSMIN          ! minimum stomatal resistance             (s/m)
00228 !$OMP THREADPRIVATE(XP_RSMIN)
00229 REAL, POINTER, DIMENSION(:) :: XP_GAMMA          ! coefficient for the calculation
00230 !$OMP THREADPRIVATE(XP_GAMMA)
00231 !                                                    ! of the surface stomatal
00232 !                                                    ! resistance
00233 REAL, POINTER, DIMENSION(:) :: XP_CV             ! vegetation thermal inertia coefficient  (K m2/J)
00234 !$OMP THREADPRIVATE(XP_CV)
00235 REAL, POINTER, DIMENSION(:) :: XP_RGL            ! maximum solar radiation
00236 !$OMP THREADPRIVATE(XP_RGL)
00237 !                                                    ! usable in photosynthesis                (W/m2)
00238 REAL, POINTER, DIMENSION(:,:) :: XP_ROOTFRAC     ! root fraction profile ('DIF' option)
00239 !$OMP THREADPRIVATE(XP_ROOTFRAC)
00240 !
00241 ! - vegetation: Ags parameters ('AGS', 'LAI', 'AST', 'LST', 'NIT', 'NCB' options)
00242 !
00243 REAL, POINTER, DIMENSION(:)    :: XP_BSLAI      ! ratio d(biomass)/d(lai)                 (kg/m2)
00244 !$OMP THREADPRIVATE(XP_BSLAI)
00245 REAL, POINTER, DIMENSION(:)    :: XP_LAIMIN     ! minimum LAI (Leaf Area Index)           (m2/m2)
00246 !$OMP THREADPRIVATE(XP_LAIMIN)
00247 REAL, POINTER, DIMENSION(:)    :: XP_SEFOLD     ! e-folding time for senescence           (s)
00248 !$OMP THREADPRIVATE(XP_SEFOLD)
00249 REAL, POINTER, DIMENSION(:)    :: XP_H_TREE     ! height of trees                         (m)
00250 !$OMP THREADPRIVATE(XP_H_TREE)
00251 REAL, POINTER, DIMENSION(:)    :: XP_ANF        ! total assimilation over canopy          (
00252 !$OMP THREADPRIVATE(XP_ANF)
00253 REAL, POINTER, DIMENSION(:)    :: XP_ANMAX      ! maximum photosynthesis rate             (
00254 !$OMP THREADPRIVATE(XP_ANMAX)
00255 REAL, POINTER, DIMENSION(:)    :: XP_FZERO      ! ideal value of F, no photo- 
00256 !$OMP THREADPRIVATE(XP_FZERO)
00257 !                                                   ! respiration or saturation deficit       (
00258 REAL, POINTER, DIMENSION(:)    :: XP_EPSO       ! maximum initial quantum use             
00259 !$OMP THREADPRIVATE(XP_EPSO)
00260 !                                                   ! efficiency                              (mg J-1 PAR)
00261 REAL, POINTER, DIMENSION(:)    :: XP_GAMM       ! CO2 conpensation concentration          (ppmv)
00262 !$OMP THREADPRIVATE(XP_GAMM)
00263 REAL, POINTER, DIMENSION(:)    :: XP_QDGAMM     ! Log of Q10 function for CO2 conpensation 
00264 !$OMP THREADPRIVATE(XP_QDGAMM)
00265 !                                                   ! concentration                           (-)
00266 REAL, POINTER, DIMENSION(:)    :: XP_GMES       ! mesophyll conductance                   (m s-1)
00267 !$OMP THREADPRIVATE(XP_GMES)
00268 REAL, POINTER, DIMENSION(:)    :: XP_RE25       ! Ecosystem respiration parameter         (kg m-2 s-1)
00269 !$OMP THREADPRIVATE(XP_RE25)
00270 REAL, POINTER, DIMENSION(:)    :: XP_QDGMES     ! Log of Q10 function for mesophyll conductance  (-)
00271 !$OMP THREADPRIVATE(XP_QDGMES)
00272 REAL, POINTER, DIMENSION(:)    :: XP_T1GMES     ! reference temperature for computing 
00273 !$OMP THREADPRIVATE(XP_T1GMES)
00274 !                                                   ! compensation concentration function for 
00275 !                                                   ! mesophyll conductance: minimum
00276 !                                                   ! temperature                             (K)
00277 REAL, POINTER, DIMENSION(:)    :: XP_T2GMES     ! reference temperature for computing 
00278 !$OMP THREADPRIVATE(XP_T2GMES)
00279 !                                                   ! compensation concentration function for 
00280 !                                                   ! mesophyll conductance: maximum
00281 !                                                   ! temperature                             (K)
00282 REAL, POINTER, DIMENSION(:)    :: XP_AMAX       ! leaf photosynthetic capacity            (kg m-2 s-1)
00283 !$OMP THREADPRIVATE(XP_AMAX)
00284 REAL, POINTER, DIMENSION(:)    :: XP_QDAMAX     ! Log of Q10 function for leaf photosynthetic 
00285 !$OMP THREADPRIVATE(XP_QDAMAX)
00286 !                                                   ! capacity                                (-)
00287 REAL, POINTER, DIMENSION(:)    :: XP_T1AMAX     ! reference temperature for computing 
00288 !$OMP THREADPRIVATE(XP_T1AMAX)
00289 !                                                   ! compensation concentration function for 
00290 !                                                   ! leaf photosynthetic capacity: minimum
00291 !                                                   ! temperature                             (K)
00292 REAL, POINTER, DIMENSION(:)    :: XP_T2AMAX     ! reference temperature for computing 
00293 !$OMP THREADPRIVATE(XP_T2AMAX)
00294 !                                                   ! compensation concentration function for 
00295 !                                                   ! leaf photosynthetic capacity: maximum
00296 !                                                   ! temperature                             (K)
00297 !
00298 ! - vegetation: Ags Stress parameters ('AST', 'LST', 'NIT', 'NCB' options)
00299 !
00300 LOGICAL, POINTER, DIMENSION(:) :: LP_STRESS      ! vegetation response type to water
00301 !$OMP THREADPRIVATE(LP_STRESS)
00302 !                                                    ! stress (true:defensive false:offensive) (-)
00303 REAL, POINTER, DIMENSION(:)    :: XP_F2I         ! critical normilized soil water 
00304 !$OMP THREADPRIVATE(XP_F2I)
00305 !                                                    ! content for stress parameterisation
00306 REAL, POINTER, DIMENSION(:)    :: XP_GC          ! cuticular conductance                   (m s-1)
00307 !$OMP THREADPRIVATE(XP_GC)
00308 REAL, POINTER, DIMENSION(:)    :: XP_AH          ! coefficients for herbaceous water stress 
00309 !$OMP THREADPRIVATE(XP_AH)
00310 !                                                    ! response (offensive or defensive)       (log(mm/s))
00311 REAL, POINTER, DIMENSION(:)    :: XP_BH          ! coefficients for herbaceous water stress 
00312 !$OMP THREADPRIVATE(XP_BH)
00313 !                                                    ! response (offensive or defensive)       (-)
00314 REAL, POINTER, DIMENSION(:)    :: XP_TAU_WOOD    ! residence time in woody biomass         (s)
00315 !$OMP THREADPRIVATE(XP_TAU_WOOD)
00316 REAL, POINTER, DIMENSION(:)    :: XP_DMAX        ! maximum air saturation deficit
00317 !$OMP THREADPRIVATE(XP_DMAX)
00318 !                                                    ! tolerate by vegetation                  (kg/kg)
00319 !
00320 ! - vegetation: Ags Nitrogen-model parameters ('NIT', 'NCB' option)
00321 !
00322 REAL, POINTER, DIMENSION(:)    :: XP_CE_NITRO      ! leaf aera ratio sensitivity to 
00323 !$OMP THREADPRIVATE(XP_CE_NITRO)
00324 !                                                      ! nitrogen concentration                (m2/kg)
00325 REAL, POINTER, DIMENSION(:)    :: XP_CF_NITRO      ! lethal minimum value of leaf area
00326 !$OMP THREADPRIVATE(XP_CF_NITRO)
00327 !                                                      ! ratio                                 (m2/kg)
00328 REAL, POINTER, DIMENSION(:)    :: XP_CNA_NITRO     ! nitrogen concentration of active 
00329 !$OMP THREADPRIVATE(XP_CNA_NITRO)
00330 !                                                      ! biomass                               (kg/kg)
00331 REAL, POINTER, DIMENSION(:)    :: XP_BSLAI_NITRO! biomass/LAI ratio from nitrogen 
00332 !$OMP THREADPRIVATE(XP_BSLAI_NITRO)
00333 !                                                      ! decline theory                        (kg/m2)
00334 !
00335 ! - soil: primary parameters
00336 !
00337 REAL, POINTER, DIMENSION(:)      :: XP_RUNOFFB     ! sub-grid surface runoff slope parameter (-)
00338 !$OMP THREADPRIVATE(XP_RUNOFFB)
00339 REAL, POINTER, DIMENSION(:)      :: XP_WDRAIN      ! continuous drainage parameter           (-)
00340 !$OMP THREADPRIVATE(XP_WDRAIN)
00341 REAL, POINTER, DIMENSION(:)      :: XP_TAUICE      ! soil freezing characteristic timescale  (s)
00342 !$OMP THREADPRIVATE(XP_TAUICE)
00343 REAL, POINTER, DIMENSION(:)      :: XP_GAMMAT      ! 'Force-Restore' timescale when using a
00344 !$OMP THREADPRIVATE(XP_GAMMAT)
00345 !                                                      ! prescribed lower boundary temperature   (1/days)
00346 REAL, POINTER, DIMENSION(:,:)    :: XP_DG              ! soil layer depth                  (m)
00347 !$OMP THREADPRIVATE(XP_DG)
00348 !                                                      ! NOTE: in Force-Restore mode, the 
00349 !                                                      ! uppermost layer thickness is superficial
00350 !                                                      ! and is only explicitly used for soil 
00351 !                                                      ! water phase changes                     (m)
00352 REAL, POINTER, DIMENSION(:,:)    :: XP_DZG             ! soil layer thicknesses                  (m)
00353 !$OMP THREADPRIVATE(XP_DZG)
00354 REAL, POINTER, DIMENSION(:,:)    :: XP_DZDIF           ! distance between consecuative layer mid-points(m)
00355 !$OMP THREADPRIVATE(XP_DZDIF)
00356 INTEGER, POINTER, DIMENSION(:)   :: NK_WG_LAYER        ! Number of soil moisture layers for DIF
00357 !$OMP THREADPRIVATE(NK_WG_LAYER)
00358 
00359 REAL, POINTER, DIMENSION(:)      :: XP_RUNOFFD       ! depth over which sub-grid runoff is
00360 !$OMP THREADPRIVATE(XP_RUNOFFD)
00361 !                                                      ! computed: in Force-Restore this is the
00362 !                                                      ! total soil column ('2-L'), or root zone
00363 !                                                      ! ('3-L'). For the 'DIF' option, it can
00364 !                                                      ! be any depth within soil column         (m)
00365 !
00366 REAL, POINTER, DIMENSION(:,:)  :: XP_SOILWGHT      ! ISBA-DIF: weights for vertical
00367 !$OMP THREADPRIVATE(XP_SOILWGHT)
00368 !                                                  ! integration of soil water and properties
00369 !
00370 ! - soil: Secondary parameters: hydrology
00371 !
00372 REAL, POINTER, DIMENSION(:)    :: XP_C1SAT       ! 'Force-Restore' C1 coefficient at 
00373 !$OMP THREADPRIVATE(XP_C1SAT)
00374 !                                                    ! saturation                              (-)
00375 REAL, POINTER, DIMENSION(:)    :: XP_C2REF       ! 'Force-Restore' reference value of C2   (-)
00376 !$OMP THREADPRIVATE(XP_C2REF)
00377 REAL, POINTER, DIMENSION(:,:)  :: XP_C3          ! 'Force-Restore' C3 drainage coefficient (m)
00378 !$OMP THREADPRIVATE(XP_C3)
00379 REAL, POINTER, DIMENSION(:)    :: XP_C4B         ! 'Force-Restore' sub-surface vertical 
00380 !$OMP THREADPRIVATE(XP_C4B)
00381 !                                                    ! diffusion coefficient (slope parameter) (-)
00382 REAL, POINTER, DIMENSION(:)    :: XP_C4REF       ! 'Force-Restore' sub-surface vertical 
00383 !$OMP THREADPRIVATE(XP_C4REF)
00384 !                                                    ! diffusion coefficient                   (-)
00385 REAL, POINTER, DIMENSION(:)    :: XP_ACOEF       ! 'Force-Restore' surface vertical 
00386 !$OMP THREADPRIVATE(XP_ACOEF)
00387 !                                                    ! diffusion coefficient                   (-)
00388 REAL, POINTER, DIMENSION(:)    :: XP_PCOEF       ! 'Force-Restore' surface vertical 
00389 !$OMP THREADPRIVATE(XP_PCOEF)
00390 !                                                    ! diffusion coefficient                   (-)
00391 REAL, POINTER, DIMENSION(:,:)  :: XP_WFC         ! field capacity volumetric water content
00392 !$OMP THREADPRIVATE(XP_WFC)
00393 !                                                    ! profile                                 (m3/m3)
00394 
00395 REAL, POINTER, DIMENSION(:,:)  :: XP_WWILT       ! wilting point volumetric water content 
00396 !$OMP THREADPRIVATE(XP_WWILT)
00397 !                                                    ! profile                                 (m3/m3)
00398 REAL, POINTER, DIMENSION(:,:)  :: XP_WSAT        ! porosity profile                        (m3/m3) 
00399 !$OMP THREADPRIVATE(XP_WSAT)
00400 REAL, POINTER, DIMENSION(:,:)  :: XP_BCOEF       ! soil water CH78 b-parameter             (-)
00401 !$OMP THREADPRIVATE(XP_BCOEF)
00402 REAL, POINTER, DIMENSION(:,:)  :: XP_CONDSAT     ! hydraulic conductivity at saturation    (m/s)
00403 !$OMP THREADPRIVATE(XP_CONDSAT)
00404 REAL, POINTER, DIMENSION(:,:)  :: XP_MPOTSAT     ! matric potential at saturation          (m)
00405 !$OMP THREADPRIVATE(XP_MPOTSAT)
00406 !
00407 ! - soil: Secondary parameters: thermal 
00408 !
00409 REAL, POINTER, DIMENSION(:)    :: XP_CGSAT       ! soil thermal inertia coefficient at 
00410 !$OMP THREADPRIVATE(XP_CGSAT)
00411 !                                                    ! saturation                              (K m2/J)
00412 REAL, POINTER, DIMENSION(:,:)  :: XP_HCAPSOIL    ! soil heat capacity                      (J/K/m3)
00413 !$OMP THREADPRIVATE(XP_HCAPSOIL)
00414 REAL, POINTER, DIMENSION(:,:)  :: XP_CONDDRY     ! soil dry thermal conductivity           (W/m/K)
00415 !$OMP THREADPRIVATE(XP_CONDDRY)
00416 REAL, POINTER, DIMENSION(:,:)  :: XP_CONDSLD     ! soil solids thermal conductivity        (W/m/K)
00417 !$OMP THREADPRIVATE(XP_CONDSLD)
00418 REAL, POINTER, DIMENSION(:)    :: XP_TDEEP       ! prescribed deep soil temperature 
00419 !$OMP THREADPRIVATE(XP_TDEEP)
00420 !                                                    ! (optional)                              (K)
00421 ! Prognostic variables:
00422 !
00423 ! - Snow Cover:
00424 !
00425 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWSWE     ! snow (& liq. water) content             (kg/m2)
00426 !$OMP THREADPRIVATE(XP_SNOWSWE)
00427 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWHEAT    ! heat content                            (J/m2)
00428 !$OMP THREADPRIVATE(XP_SNOWHEAT)
00429 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWRHO     ! density                                 (kg m-3)
00430 !$OMP THREADPRIVATE(XP_SNOWRHO)
00431 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWGRAN1   ! grain parameter 1                       (-)
00432 !$OMP THREADPRIVATE(XP_SNOWGRAN1)
00433 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWGRAN2   ! grain parameter 2                       (-)
00434 !$OMP THREADPRIVATE(XP_SNOWGRAN2)
00435 REAL,  POINTER, DIMENSION(:,:) :: XP_SNOWHIST    ! historical parameter                    (-)
00436 !$OMP THREADPRIVATE(XP_SNOWHIST)
00437 REAL, POINTER, DIMENSION(:,:)  :: XP_SNOWAGE     ! Snow grain age                          (days)
00438 !$OMP THREADPRIVATE(XP_SNOWAGE)
00439 REAL,  POINTER, DIMENSION(:)   :: XP_SNOWALB     ! albedo                                  (-)
00440 !$OMP THREADPRIVATE(XP_SNOWALB)
00441 REAL,  POINTER, DIMENSION(:)   :: XP_SNOWEMIS    ! snow emissivity (ISBA-ES:3-L)           (-)
00442 !$OMP THREADPRIVATE(XP_SNOWEMIS)
00443 !
00444 REAL,  POINTER, DIMENSION(:)   :: XP_ICE_STO
00445 !$OMP THREADPRIVATE(XP_ICE_STO)
00446 !
00447 ! - Soil and vegetation heat and water:
00448 !
00449 REAL, POINTER, DIMENSION(:)     :: XP_WR         ! liquid water retained on the
00450 !$OMP THREADPRIVATE(XP_WR)
00451 !                                                    ! foliage of the vegetation
00452 !                                                    ! canopy                                  (kg/m2)
00453 REAL, POINTER, DIMENSION(:,:)   :: XP_TG         ! surface and sub-surface soil 
00454 !$OMP THREADPRIVATE(XP_TG)
00455 !                                                    ! temperature profile                     (K)
00456 REAL, POINTER, DIMENSION(:,:)   :: XP_WG         ! soil volumetric water content profile   (m3/m3)
00457 !$OMP THREADPRIVATE(XP_WG)
00458 REAL, POINTER, DIMENSION(:,:)   :: XP_WGI        ! soil liquid water equivalent volumetric 
00459 !$OMP THREADPRIVATE(XP_WGI)
00460 !                                                    ! ice content profile                     (m3/m3)
00461 REAL, POINTER, DIMENSION(:)     :: XP_RESA       ! aerodynamic resistance                  (s/m)
00462 !$OMP THREADPRIVATE(XP_RESA)
00463 !
00464 ! - Vegetation: Ags Prognostic (YPHOTO = 'LAI', 'LST', 'NIT', 'NCB') or prescribed (YPHOTO = 'NON', 'AGS', 'AST')
00465 !
00466 REAL, POINTER, DIMENSION(:)     :: XP_LAI        ! Leaf Area Index                         (m2/m2)
00467 !$OMP THREADPRIVATE(XP_LAI)
00468 !
00469 ! - Vegetation: Ags Prognostic (YPHOTO = 'AGS', 'LAI', 'AST', 'LST', 'NIT', 'NCB')
00470 !
00471 REAL, POINTER, DIMENSION(:)     :: XP_AN         ! net CO2 assimilation                    (mg/m2/s)
00472 !$OMP THREADPRIVATE(XP_AN)
00473 REAL, POINTER, DIMENSION(:)     :: XP_ANDAY      ! daily net CO2 assimilation              (mg/m2)
00474 !$OMP THREADPRIVATE(XP_ANDAY)
00475 REAL, POINTER, DIMENSION(:)     :: XP_ANFM       ! maximum leaf assimilation               (mg/m2/s)
00476 !$OMP THREADPRIVATE(XP_ANFM)
00477 REAL, POINTER, DIMENSION(:)     :: XP_LE         ! evapotranspiration                      (W/m2)
00478 !$OMP THREADPRIVATE(XP_LE)
00479 REAL, POINTER, DIMENSION(:)     :: XP_LEI        ! sublimation                             (W/m2)
00480 !$OMP THREADPRIVATE(XP_LEI)
00481 REAL, POINTER, DIMENSION(:)     :: XP_FAPARC     ! FAPAR of vegetation (cumul)
00482 !$OMP THREADPRIVATE(XP_FAPARC)
00483 REAL, POINTER, DIMENSION(:)     :: XP_FAPIRC     ! FAPIR of vegetation (cumul)
00484 !$OMP THREADPRIVATE(XP_FAPIRC)
00485 REAL, POINTER, DIMENSION(:)     :: XP_LAI_EFFC   ! effective LAI (cumul)
00486 !$OMP THREADPRIVATE(XP_LAI_EFFC)
00487 REAL, POINTER, DIMENSION(:)     :: XP_MUS        ! 
00488 !$OMP THREADPRIVATE(XP_MUS)
00489 !
00490 ! - Vegetation: Ags Prognostic (YPHOTO = 'NIT', 'NCB')
00491 !
00492 REAL, POINTER, DIMENSION(:,:)   :: XP_RESP_BIOMASS    ! daily cumulated respiration of 
00493 !$OMP THREADPRIVATE(XP_RESP_BIOMASS)
00494 !                                                         ! biomass                            (kg/m2/s)
00495 REAL, POINTER, DIMENSION(:,:)   :: XP_BIOMASS         ! biomass of previous day            (kg/m2) 
00496 !$OMP THREADPRIVATE(XP_BIOMASS)
00497 REAL, POINTER, DIMENSION(:,:)   :: XP_INCREASE        ! biomass increase                   (kg/m2/day)
00498 !$OMP THREADPRIVATE(XP_INCREASE)
00499 !
00500 ! - Soil carbon (ISBA-CC, YRESPSL = 'CNT')
00501 !
00502 REAL, POINTER, DIMENSION(:,:,:)   :: XP_LITTER            ! litter pools                       (gC/m2)
00503 !$OMP THREADPRIVATE(XP_LITTER)
00504 REAL, POINTER, DIMENSION(:,:)     :: XP_SOILCARB          ! soil carbon pools                  (gC/m2) 
00505 !$OMP THREADPRIVATE(XP_SOILCARB)
00506 REAL, POINTER, DIMENSION(:,:)     :: XP_LIGNIN_STRUC      ! ratio Lignin/Carbon in structural
00507 !$OMP THREADPRIVATE(XP_LIGNIN_STRUC)
00508 !                                                         litter                               (gC/m2)
00509 !
00510 REAL, POINTER, DIMENSION(:,:)   :: XP_TURNOVER        ! turnover rates from biomass to litter (gC/m2/s)
00511 !$OMP THREADPRIVATE(XP_TURNOVER)
00512 !
00513 ! - Irrigation
00514 !
00515 LOGICAL, POINTER, DIMENSION(:)     :: XP_LIRRIGATE    ! high level switch for irrigation
00516 !$OMP THREADPRIVATE(XP_LIRRIGATE)
00517 LOGICAL, POINTER, DIMENSION(:)     :: XP_LIRRIDAY     ! flag used for daily irrigation stage
00518 !$OMP THREADPRIVATE(XP_LIRRIDAY)
00519 REAL, POINTER, DIMENSION(:)        :: XP_THRESHOLD    ! threshold for stages
00520 !$OMP THREADPRIVATE(XP_THRESHOLD)
00521 REAL, POINTER, DIMENSION(:)        :: XP_WATSUP       ! water supply
00522 !$OMP THREADPRIVATE(XP_WATSUP)
00523 REAL, POINTER, DIMENSION(:)        :: XP_IRRIG        ! fraction of irrigated vegetation
00524 !$OMP THREADPRIVATE(XP_IRRIG)
00525 TYPE(DATE_TIME), DIMENSION(:), POINTER :: TP_SEED         ! seeding date
00526 !$OMP THREADPRIVATE(TP_SEED)
00527 TYPE(DATE_TIME), DIMENSION(:), POINTER :: TP_REAP         ! reaping date
00528 !$OMP THREADPRIVATE(TP_REAP)
00529 !                                                         ! previous day                         (kg/m2)
00530 ! - SGH scheme
00531 !
00532 REAL, POINTER, DIMENSION(:)        :: XP_D_ICE     !depth of the soil column for the calculation
00533 !$OMP THREADPRIVATE(XP_D_ICE)
00534 !                                                       of the frozen soil fraction (m)
00535 REAL, POINTER, DIMENSION(:)        :: XP_KSAT_ICE  !hydraulic conductivity at saturation
00536 !$OMP THREADPRIVATE(XP_KSAT_ICE)
00537 !                                                       over frozen area (m s-1)
00538 REAL, POINTER, DIMENSION(:)        :: XP_FSAT      !Topmodel saturated fraction
00539 !$OMP THREADPRIVATE(XP_FSAT)
00540 REAL, POINTER, DIMENSION(:)        :: XP_MUF       !Rainfall surface fraction 
00541 !$OMP THREADPRIVATE(XP_MUF)
00542 !                                                         ! previous day                         (kg/m2)
00543 ! - Courant time step properties
00544 !
00545 REAL, POINTER, DIMENSION(:)        :: XP_PSN       ! fraction of the grid covered by snow          (-)
00546 !$OMP THREADPRIVATE(XP_PSN)
00547 REAL, POINTER, DIMENSION(:)        :: XP_PSNG      ! fraction of the the bare ground covered by snow (-)
00548 !$OMP THREADPRIVATE(XP_PSNG)
00549 REAL, POINTER, DIMENSION(:)        :: XP_PSNV      ! fraction of the the vegetation covered by snow(-)
00550 !$OMP THREADPRIVATE(XP_PSNV)
00551 REAL, POINTER, DIMENSION(:)        :: XP_PSNV_A    ! fraction of the the vegetation covered by snow for EBA scheme(-)
00552 !$OMP THREADPRIVATE(XP_PSNV_A)
00553 REAL, POINTER, DIMENSION(:,:)      :: XP_DIR_ALB_WITH_SNOW ! Total direct albedo
00554 !$OMP THREADPRIVATE(XP_DIR_ALB_WITH_SNOW)
00555 REAL, POINTER, DIMENSION(:,:)      :: XP_SCA_ALB_WITH_SNOW ! Total diffuse albedo
00556 !$OMP THREADPRIVATE(XP_SCA_ALB_WITH_SNOW)
00557 !
00558 ! - Flood scheme
00559 !
00560 REAL, POINTER, DIMENSION(:)        :: XP_ALBF
00561 !$OMP THREADPRIVATE(XP_ALBF)
00562 REAL, POINTER, DIMENSION(:)        :: XP_EMISF
00563 !$OMP THREADPRIVATE(XP_EMISF)
00564 !
00565 REAL, POINTER, DIMENSION(:)        :: XP_FF        ! flood fraction over the surface
00566 !$OMP THREADPRIVATE(XP_FF)
00567 REAL, POINTER, DIMENSION(:)        :: XP_FFG       ! flood fraction over the ground
00568 !$OMP THREADPRIVATE(XP_FFG)
00569 REAL, POINTER, DIMENSION(:)        :: XP_FFV       ! flood fraction over the vegetation
00570 !$OMP THREADPRIVATE(XP_FFV)
00571 REAL, POINTER, DIMENSION(:)        :: XP_FFROZEN   ! fraction of frozen flood
00572 !$OMP THREADPRIVATE(XP_FFROZEN)
00573 REAL, POINTER, DIMENSION(:)        :: XP_FFLOOD  ! Grdi-cell flood fraction           (-)
00574 !$OMP THREADPRIVATE(XP_FFLOOD)
00575 REAL, POINTER, DIMENSION(:)        :: XP_PIFLOOD ! Floodplains potential infiltration (kg/m2/s)
00576 !$OMP THREADPRIVATE(XP_PIFLOOD)
00577 REAL, POINTER, DIMENSION(:)        :: XP_Z0FLOOD ! Floodplains roughness length
00578 !$OMP THREADPRIVATE(XP_Z0FLOOD)
00579 !
00580 REAL, POINTER, DIMENSION(:)        :: XP_CPS, XP_LVTT, XP_LSTT
00581 !$OMP THREADPRIVATE(XP_CPS, XP_LVTT, XP_LSTT)
00582 !
00583 END MODULE MODD_PACK_ISBA