[947] | 1 | ! ================================================================================================================================= |
---|
[1475] | 2 | ! MODULE : constantes_soil_var |
---|
[947] | 3 | ! |
---|
[4470] | 4 | ! CONTACT : orchidee-help _at_ listes.ipsl.fr |
---|
[947] | 5 | ! |
---|
| 6 | ! LICENCE : IPSL (2006) |
---|
| 7 | ! This software is governed by the CeCILL licence see ORCHIDEE/ORCHIDEE_CeCILL.LIC |
---|
| 8 | ! |
---|
[1475] | 9 | !>\BRIEF "constantes_soil_var" module contains the parameters related to soil and hydrology. |
---|
[947] | 10 | !! |
---|
| 11 | !!\n DESCRIPTION : The non saturated hydraulic properties are defined from the |
---|
| 12 | !! formulations of van Genuchten (1980) and Mualem (1976), combined as |
---|
| 13 | !! explained in d'Orgeval (2006). \n |
---|
[3476] | 14 | !! The related parameters for main soil textures (coarse, medium and fine if "fao", |
---|
| 15 | !! 12 USDA testures if "usda") come from Carsel and Parrish (1988). |
---|
[947] | 16 | !! |
---|
[5454] | 17 | !! RECENT CHANGE(S): AD: mcw and mcf depend now on soil texture, based on Van Genuchten equations |
---|
[3476] | 18 | !! and classical matric potential values, and pcent is adapted |
---|
[6954] | 19 | !! November 2020 by Salma Tafasca and Agnes Ducharne : we introduce a new texture class |
---|
| 20 | !! for clay oxisols (cf. Tafasca, 2020, PhD thesis; Tafasca et al., in prep for GRL). |
---|
| 21 | !! It makes no change if we read a soil texture map with only 12 USDA classes. |
---|
[7337] | 22 | !! Lookup tables for Zobler replaces by pointer to read the corresponding values in the |
---|
| 23 | !! 13-value USDA tables |
---|
[947] | 24 | !! |
---|
| 25 | !! REFERENCE(S) : |
---|
| 26 | !!- Roger A.Pielke, (2002), Mesoscale meteorological modeling, Academic Press Inc. |
---|
| 27 | !!- Polcher, J., Laval, K., DÃŒmenil, L., Lean, J., et Rowntree, P. R. (1996). |
---|
| 28 | !! Comparing three land surface schemes used in general circulation models. Journal of Hydrology, 180(1-4), 373--394. |
---|
| 29 | !!- Ducharne, A., Laval, K., et Polcher, J. (1998). Sensitivity of the hydrological cycle |
---|
| 30 | !! to the parametrization of soil hydrology in a GCM. Climate Dynamics, 14, 307--327. |
---|
| 31 | !!- Rosnay, P. de et Polcher, J. (1999). Modelling root water uptake in a complex land surface |
---|
| 32 | !! scheme coupled to a GCM. Hydrol. Earth Syst. Sci., 2(2/3), 239--255. |
---|
| 33 | !!- d'Orgeval, T. et Polcher, J. (2008). Impacts of precipitation events and land-use changes |
---|
| 34 | !! on West African river discharges during the years 1951--2000. Climate Dynamics, 31(2), 249--262. |
---|
| 35 | !!- Carsel, R. and Parrish, R.: Developing joint probability distributions of soil water |
---|
| 36 | !! retention characteristics, Water Resour. Res.,24, 755â769, 1988. |
---|
[6954] | 37 | !!- Mualem Y (1976). A new model for predicting the hydraulic conductivity |
---|
[947] | 38 | !! of unsaturated porous media. Water Resources Research 12(3):513-522 |
---|
[6954] | 39 | !!- Van Genuchten M (1980). A closed-form equation for predicting the |
---|
[947] | 40 | !! hydraulic conductivity of unsaturated soils. Soil Sci Soc Am J, 44(5):892-898 |
---|
[6954] | 41 | !!- Tafasca S. (2020). Evaluation de lâimpact des propriétés du sol sur lâhydrologie simulee dans le |
---|
| 42 | !! modÚle ORCHIDEE, PhD thesis, Sorbonne Universite. |
---|
| 43 | !!- Tafasca S., Ducharne A. and Valentin C. Accounting for soil structure in pedo-transfer functions: |
---|
| 44 | !! swelling vs non swelling clays. In prep for GRL. |
---|
[947] | 45 | !! |
---|
| 46 | !! SVN : |
---|
| 47 | !! $HeadURL: $ |
---|
| 48 | !! $Date: $ |
---|
| 49 | !! $Revision: $ |
---|
| 50 | !! \n |
---|
| 51 | !_ ================================================================================================================================ |
---|
| 52 | |
---|
[1475] | 53 | MODULE constantes_soil_var |
---|
[947] | 54 | |
---|
[1475] | 55 | USE defprec |
---|
[2928] | 56 | USE vertical_soil_var |
---|
[1082] | 57 | |
---|
[947] | 58 | IMPLICIT NONE |
---|
[1082] | 59 | |
---|
[5506] | 60 | LOGICAL, SAVE :: check_cwrr !! Calculate diagnostics to check the water balance in hydrol (true/false) |
---|
[3402] | 61 | !$OMP THREADPRIVATE(check_cwrr) |
---|
[947] | 62 | |
---|
[1082] | 63 | !! Number of soil classes |
---|
[947] | 64 | |
---|
[1082] | 65 | INTEGER(i_std), PARAMETER :: ntext=3 !! Number of soil textures (Silt, Sand, Clay) |
---|
| 66 | INTEGER(i_std), PARAMETER :: nstm=3 !! Number of soil tiles (unitless) |
---|
| 67 | CHARACTER(LEN=30) :: soil_classif !! Type of classification used for the map of soil types. |
---|
| 68 | !! It must be consistent with soil file given by |
---|
| 69 | !! SOILCLASS_FILE parameter. |
---|
[3812] | 70 | !$OMP THREADPRIVATE(soil_classif) |
---|
[1082] | 71 | INTEGER(i_std), PARAMETER :: nscm_fao=3 !! For FAO Classification (unitless) |
---|
[6954] | 72 | INTEGER(i_std), PARAMETER :: nscm_usda=13 !! For USDA Classification (unitless) |
---|
[7375] | 73 | INTEGER(i_std), SAVE :: nscm=nscm_usda !! Default value for nscm |
---|
[1078] | 74 | !$OMP THREADPRIVATE(nscm) |
---|
[947] | 75 | |
---|
[1082] | 76 | !! Parameters for soil thermodynamics |
---|
[947] | 77 | |
---|
[1082] | 78 | REAL(r_std), SAVE :: so_capa_dry = 1.80e+6 !! Dry soil Heat capacity of soils |
---|
| 79 | !! @tex $(J.m^{-3}.K^{-1})$ @endtex |
---|
| 80 | !$OMP THREADPRIVATE(so_capa_dry) |
---|
| 81 | REAL(r_std), SAVE :: so_cond_dry = 0.40 !! Dry soil Thermal Conductivity of soils |
---|
| 82 | !! @tex $(W.m^{-2}.K^{-1})$ @endtex |
---|
| 83 | !$OMP THREADPRIVATE(so_cond_dry) |
---|
| 84 | REAL(r_std), SAVE :: sn_cond = 0.3 !! Thermal Conductivity of snow |
---|
| 85 | !! @tex $(W.m^{-2}.K^{-1})$ @endtex |
---|
| 86 | !$OMP THREADPRIVATE(sn_cond) |
---|
| 87 | REAL(r_std), SAVE :: sn_dens = 330.0 !! Snow density for the soil thermodynamics |
---|
[1955] | 88 | !! (kg/m3) |
---|
[1082] | 89 | !$OMP THREADPRIVATE(sn_dens) |
---|
| 90 | REAL(r_std), SAVE :: sn_capa !! Heat capacity for snow |
---|
| 91 | !! @tex $(J.m^{-3}.K^{-1})$ @endtex |
---|
| 92 | !$OMP THREADPRIVATE(sn_capa) |
---|
[2922] | 93 | REAL(r_std), SAVE :: water_capa = 4.18e+6 !! Water heat capacity |
---|
| 94 | !! @tex $(J.m^{-3}.K^{-1})$ @endtex |
---|
| 95 | !$OMP THREADPRIVATE(water_capa) |
---|
| 96 | REAL(r_std), SAVE :: brk_capa = 2.0e+6 !! Heat capacity of generic rock |
---|
| 97 | !! @tex $(J.m^{-3}.K^{-1})$ @endtex |
---|
| 98 | !$OMP THREADPRIVATE(brk_capa) |
---|
| 99 | REAL(r_std), SAVE :: brk_cond = 3.0 !! Thermal conductivity of saturated granitic rock |
---|
| 100 | !! @tex $(W.m^{-1}.K^{-1})$ @endtex |
---|
| 101 | !$OMP THREADPRIVATE(brk_cond) |
---|
[947] | 102 | |
---|
[5034] | 103 | REAL(r_std), SAVE :: qsintcst = 0.02 !! Transforms leaf area index into size of interception reservoir |
---|
[1082] | 104 | !! (unitless) |
---|
[1078] | 105 | !$OMP THREADPRIVATE(qsintcst) |
---|
[1082] | 106 | REAL(r_std), SAVE :: mx_eau_nobio = 150. !! Volumetric available soil water capacity in nobio fractions |
---|
| 107 | !! @tex $(kg.m^{-3} of soil)$ @endtex |
---|
| 108 | !$OMP THREADPRIVATE(mx_eau_nobio) |
---|
[947] | 109 | |
---|
[1082] | 110 | !! Parameters specific for the CWRR hydrology. |
---|
[947] | 111 | |
---|
[7337] | 112 | !! 1. Parameters for FAO-Zobler Map |
---|
[947] | 113 | |
---|
[7337] | 114 | INTEGER(i_std), PARAMETER,DIMENSION(nscm_fao) :: fao2usda = (/ 3,6,9 /) !! To find the values of Coarse, Medium, Fine in Zobler map |
---|
[7338] | 115 | !! from the USDA lookup tables |
---|
[7337] | 116 | |
---|
[1082] | 117 | !! 2. Parameters for USDA Classification |
---|
| 118 | |
---|
| 119 | !! Parameters for soil type distribution : |
---|
| 120 | !! Sand, Loamy Sand, Sandy Loam, Silt Loam, Silt, Loam, Sandy Clay Loam, Silty Clay Loam, Clay Loam, Sandy Clay, Silty Clay, Clay |
---|
| 121 | |
---|
[7432] | 122 | INTEGER(i_std), SAVE :: usda_default = 6 !! Default USDA texture class if no value found from map |
---|
| 123 | !$OMP THREADPRIVATE(usda_default) |
---|
[7338] | 124 | |
---|
[7432] | 125 | REAL(r_std), PARAMETER, DIMENSION(nscm_usda) :: soilclass_default = (/0.0, & |
---|
| 126 | 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, & !! Areal fraction of the 13 soil USDA textures; |
---|
| 127 | 0.0, 0.0, 0.0, 0.0, 0.0, 0.0/) !! the dominant one will selected |
---|
[7337] | 128 | |
---|
[2589] | 129 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: nvan_usda = & !! Van Genuchten coefficient n (unitless) |
---|
| 130 | & (/ 2.68_r_std, 2.28_r_std, 1.89_r_std, 1.41_r_std, & ! RK: 1/n=1-m |
---|
[947] | 131 | & 1.37_r_std, 1.56_r_std, 1.48_r_std, 1.23_r_std, & |
---|
[6954] | 132 | & 1.31_r_std, 1.23_r_std, 1.09_r_std, 1.09_r_std, & |
---|
| 133 | & 1.552_r_std /) ! oxisols |
---|
[1082] | 134 | |
---|
[2589] | 135 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: avan_usda = & !! Van Genuchten coefficient a |
---|
| 136 | & (/ 0.0145_r_std, 0.0124_r_std, 0.0075_r_std, 0.0020_r_std, & !! @tex $(mm^{-1})$ @endtex |
---|
[947] | 137 | & 0.0016_r_std, 0.0036_r_std, 0.0059_r_std, 0.0010_r_std, & |
---|
[6954] | 138 | & 0.0019_r_std, 0.0027_r_std, 0.0005_r_std, 0.0008_r_std, & |
---|
| 139 | & 0.0132_r_std /) ! oxisols |
---|
[1082] | 140 | |
---|
[2589] | 141 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mcr_usda = & !! Residual volumetric water content |
---|
| 142 | & (/ 0.045_r_std, 0.057_r_std, 0.065_r_std, 0.067_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
[947] | 143 | & 0.034_r_std, 0.078_r_std, 0.100_r_std, 0.089_r_std, & |
---|
[6954] | 144 | & 0.095_r_std, 0.100_r_std, 0.070_r_std, 0.068_r_std, & |
---|
| 145 | & 0.068_r_std /) ! oxisols |
---|
[1082] | 146 | |
---|
[2589] | 147 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mcs_usda = & !! Saturated volumetric water content |
---|
| 148 | & (/ 0.43_r_std, 0.41_r_std, 0.41_r_std, 0.45_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
[947] | 149 | & 0.46_r_std, 0.43_r_std, 0.39_r_std, 0.43_r_std, & |
---|
[6954] | 150 | & 0.41_r_std, 0.38_r_std, 0.36_r_std, 0.38_r_std, & |
---|
| 151 | & 0.503_r_std /) ! oxisols |
---|
[1082] | 152 | |
---|
[2589] | 153 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: ks_usda = & !! Hydraulic conductivity at saturation |
---|
| 154 | & (/ 7128.0_r_std, 3501.6_r_std, 1060.8_r_std, 108.0_r_std, & !! @tex $(mm d^{-1})$ @endtex |
---|
[947] | 155 | & 60.0_r_std, 249.6_r_std, 314.4_r_std, 16.8_r_std, & |
---|
[6954] | 156 | & 62.4_r_std, 28.8_r_std, 4.8_r_std, 48.0_r_std, & |
---|
| 157 | & 6131.4_r_std /) ! oxisols |
---|
[1082] | 158 | |
---|
[7337] | 159 | ! The max available water content is smaller when mcw and mcf depend on texture, |
---|
| 160 | ! so we increase pcent to a classical value of 80% |
---|
[2589] | 161 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: pcent_usda = & !! Fraction of saturated volumetric soil moisture |
---|
[3476] | 162 | & (/ 0.8_r_std, 0.8_r_std, 0.8_r_std, 0.8_r_std, & !! above which transpir is max (0-1, unitless) |
---|
| 163 | & 0.8_r_std, 0.8_r_std, 0.8_r_std, 0.8_r_std, & |
---|
[6954] | 164 | & 0.8_r_std, 0.8_r_std, 0.8_r_std, 0.8_r_std, & |
---|
| 165 | & 0.8_r_std /) ! oxisols |
---|
[1082] | 166 | |
---|
[2589] | 167 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: free_drain_max_usda = & !! Max=default value of the permeability coeff |
---|
| 168 | & (/ 1.0_r_std, 1.0_r_std, 1.0_r_std, 1.0_r_std, & !! at the bottom of the soil (0-1, unitless) |
---|
| 169 | & 1.0_r_std, 1.0_r_std, 1.0_r_std, 1.0_r_std, & |
---|
[6954] | 170 | & 1.0_r_std, 1.0_r_std, 1.0_r_std, 1.0_r_std, & |
---|
| 171 | & 1.0_r_std /) |
---|
[7337] | 172 | |
---|
| 173 | !! We use the VG relationships to derive mcw and mcf depending on soil texture |
---|
| 174 | !! assuming that the matric potential for wilting point and field capacity is |
---|
| 175 | !! -150m (permanent WP) and -3.3m respectively |
---|
| 176 | !! (-1m for FC for the three sandy soils following Richards, L.A. and Weaver, L.R. (1944) |
---|
| 177 | !! Note that mcw GE mcr |
---|
[2589] | 178 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mcf_usda = & !! Volumetric water content at field capacity |
---|
[3476] | 179 | & (/ 0.0493_r_std, 0.0710_r_std, 0.1218_r_std, 0.2402_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
| 180 | 0.2582_r_std, 0.1654_r_std, 0.1695_r_std, 0.3383_r_std, & |
---|
[6954] | 181 | 0.2697_r_std, 0.2672_r_std, 0.3370_r_std, 0.3469_r_std, & |
---|
| 182 | 0.172_r_std /) ! oxisols |
---|
[3476] | 183 | |
---|
[2589] | 184 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mcw_usda = & !! Volumetric water content at wilting point |
---|
[3476] | 185 | & (/ 0.0450_r_std, 0.0570_r_std, 0.0657_r_std, 0.1039_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
| 186 | 0.0901_r_std, 0.0884_r_std, 0.1112_r_std, 0.1967_r_std, & |
---|
[6954] | 187 | 0.1496_r_std, 0.1704_r_std, 0.2665_r_std, 0.2707_r_std, & |
---|
| 188 | 0.075_r_std /) ! oxisols |
---|
[1082] | 189 | |
---|
| 190 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mc_awet_usda = & !! Vol. wat. cont. above which albedo is cst |
---|
[2589] | 191 | & (/ 0.25_r_std, 0.25_r_std, 0.25_r_std, 0.25_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
[947] | 192 | & 0.25_r_std, 0.25_r_std, 0.25_r_std, 0.25_r_std, & |
---|
[6954] | 193 | & 0.25_r_std, 0.25_r_std, 0.25_r_std, 0.25_r_std, & |
---|
| 194 | & 0.25_r_std /) |
---|
[1082] | 195 | |
---|
| 196 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: mc_adry_usda = & !! Vol. wat. cont. below which albedo is cst |
---|
[2589] | 197 | & (/ 0.1_r_std, 0.1_r_std, 0.1_r_std, 0.1_r_std, & !! @tex $(m^{3} m^{-3})$ @endtex |
---|
[947] | 198 | & 0.1_r_std, 0.1_r_std, 0.1_r_std, 0.1_r_std, & |
---|
[6954] | 199 | & 0.1_r_std, 0.1_r_std, 0.1_r_std, 0.1_r_std, & |
---|
| 200 | & 0.1_r_std /) ! oxisols |
---|
[2922] | 201 | |
---|
| 202 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: QZ_usda = & !! QUARTZ CONTENT (SOIL TYPE DEPENDENT) |
---|
[6954] | 203 | & (/ 0.92_r_std, 0.82_r_std, 0.60_r_std, 0.25_r_std, & !! Peters et al [1998] |
---|
[2922] | 204 | & 0.10_r_std, 0.40_r_std, 0.60_r_std, 0.10_r_std, & |
---|
[6954] | 205 | & 0.35_r_std, 0.52_r_std, 0.10_r_std, 0.25_r_std, & |
---|
| 206 | & 0.25_r_std /) ! oxisols |
---|
[2922] | 207 | |
---|
| 208 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: so_capa_dry_ns_usda = & !! Dry soil Heat capacity of soils,J.m^{-3}.K^{-1} |
---|
[6954] | 209 | & (/ 1.47e+6_r_std, 1.41e+6_r_std, 1.34e+6_r_std, 1.27e+6_r_std, & !! Pielke [2002, 2013] |
---|
[2922] | 210 | & 1.21e+6_r_std, 1.21e+6_r_std, 1.18e+6_r_std, 1.32e+6_r_std, & |
---|
[6954] | 211 | & 1.23e+6_r_std, 1.18e+6_r_std, 1.15e+6_r_std, 1.09e+6_r_std, & |
---|
[7432] | 212 | & 1.09e+6_r_std /) ! oxisols |
---|
| 213 | |
---|
| 214 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: clayfrac_usda = & !! % clay particles in the 13 USDA texture classes |
---|
| 215 | (/ 0.03_r_std, 0.06_r_std, 0.11_r_std, 0.19_r_std , & !! values taken from get_soilcorr_usda in slowproc |
---|
| 216 | 0.10_r_std, 0.20_r_std, 0.27_r_std, 0.33_r_std, & |
---|
| 217 | 0.33_r_std, 0.41_r_std, 0.46_r_std, 0.55_r_std, & |
---|
| 218 | 0.55_r_std /) ! oxisols |
---|
| 219 | |
---|
| 220 | REAL(r_std),PARAMETER,DIMENSION(nscm_usda) :: sandfrac_usda = & !! % sand particles in the 13 USDA texture classes |
---|
| 221 | (/ 0.93_r_std, 0.81_r_std, 0.63_r_std, 0.17_r_std, & !! values taken from get_soilcorr_usda in slowproc |
---|
| 222 | 0.06_r_std, 0.40_r_std, 0.54_r_std, 0.08_r_std, & |
---|
| 223 | 0.30_r_std, 0.48_r_std, 0.06_r_std, 0.15_r_std, & |
---|
| 224 | 0.15_r_std /) ! oxisols |
---|
| 225 | |
---|
[1082] | 226 | !! Parameters for the numerical scheme used by CWRR |
---|
| 227 | |
---|
[2589] | 228 | INTEGER(i_std), PARAMETER :: imin = 1 !! Start for CWRR linearisation (unitless) |
---|
| 229 | INTEGER(i_std), PARAMETER :: nbint = 50 !! Number of interval for CWRR linearisation (unitless) |
---|
| 230 | INTEGER(i_std), PARAMETER :: imax = nbint+1 !! Number of points for CWRR linearisation (unitless) |
---|
| 231 | REAL(r_std), PARAMETER :: w_time = 1.0_r_std !! Time weighting for CWRR numerical integration (unitless) |
---|
[1082] | 232 | |
---|
| 233 | |
---|
[2222] | 234 | !! Variables related to soil freezing, in thermosoil : |
---|
| 235 | LOGICAL, SAVE :: ok_Ecorr !! Flag for energy conservation correction |
---|
[5539] | 236 | !$OMP THREADPRIVATE(ok_Ecorr) |
---|
[2222] | 237 | LOGICAL, SAVE :: ok_freeze_thermix !! Flag to activate thermal part of the soil freezing scheme |
---|
[5539] | 238 | !$OMP THREADPRIVATE(ok_freeze_thermix) |
---|
[5150] | 239 | LOGICAL, SAVE :: ok_freeze_thaw_latent_heat !! Flag to activate latent heat part of the soil freezing scheme |
---|
[5539] | 240 | !$OMP THREADPRIVATE(ok_freeze_thaw_latent_heat) |
---|
[2222] | 241 | LOGICAL, SAVE :: read_reftemp !! Flag to initialize soil temperature using climatological temperature |
---|
[5539] | 242 | !$OMP THREADPRIVATE(read_reftemp) |
---|
[2222] | 243 | REAL(r_std), SAVE :: fr_dT !! Freezing window (K) |
---|
[5539] | 244 | !$OMP THREADPRIVATE(fr_dT) |
---|
[1082] | 245 | |
---|
[2222] | 246 | !! Variables related to soil freezing, in hydrol : |
---|
| 247 | LOGICAL, SAVE :: ok_freeze_cwrr !! CWRR freezing scheme by I. Gouttevin |
---|
[5539] | 248 | !$OMP THREADPRIVATE(ok_freeze_cwrr) |
---|
[2222] | 249 | LOGICAL, SAVE :: ok_thermodynamical_freezing !! Calculate frozen fraction thermodynamically |
---|
[5539] | 250 | !$OMP THREADPRIVATE(ok_thermodynamical_freezing) |
---|
[2222] | 251 | |
---|
| 252 | |
---|
| 253 | END MODULE constantes_soil_var |
---|