SURFEX v7.3
General documentation of Surfex
|
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