source: LMDZ5/branches/IPSLCM6.0.8/libf/phymar/Mod_SISVAT_dat.f90 @ 5434

Last change on this file since 5434 was 2160, checked in by Laurent Fairhead, 10 years ago

Merged trunk changes -r2070:2158 into testing branch. Compilation problems introduced by revision r2155 have been corrected by hand

File size: 14.9 KB
Line 
1      module Mod_SISVAT_dat
2
3
4!--------------------------------------------------------------------------+
5!                                                     Sun 30-Jun-2013  MAR |
6!     module Mod_SISVAT_dat contains the constants of the                  |
7!                Soil/Ice Snow Vegetation Atmosphere Transfer Scheme       |
8!                                                                          |
9!                                                                          |
10!   CAUTION: Soil Hydraulic Parameters: Please VERIFY ICE DATA             |
11!   ^^^^^^^                                                                |
12!                                                                          |
13!                                                                          |
14!     Preprocessing  Option:                                               |
15!     ^^^^^^^^^^^^^^^^^^^^^                                                |
16!     #fb: Fractions of total Solar Irradiance (Feagle and Businger 1981)  |
17!                                                                          |
18!                                                                          |
19!     version 3.p.4.1 created by H. Gallee,           Wed 30-Jan-2013      |
20!                    modified by H. Gallee,           30-Jun-May-2013      |
21!                                                                          |
22!--------------------------------------------------------------------------+
23
24
25! Global   Variables
26! ==================
27
28      use Mod_Real
29      use Mod_SISVAT_dim
30
31
32      IMPLICIT NONE
33
34
35
36! Internal Variables
37! ==================
38
39      integer, SAVE                 ::   ivg,iso
40
41
42
43! SISVAT Global Variables
44! =======================
45
46      real(kind=real8), SAVE        ::   eps_21 = 1.e-21         ! Arbitrary  very small value
47
48      real(kind=real8), SAVE        ::   slop1d = 0.00           ! Local Slope (1-d simulations)
49      real(kind=real8), SAVE        ::   Adz0dt                  ! Decay of Angle(Wind,Sastrugi) Influence on z0
50
51      real(kind=real8), SAVE        ::   WatIsv =  273.16        ! used in Evaluation of Saturation Specific Humidity over Ice (see Dudhia)
52      real(kind=real8), SAVE        ::   ExpIsv = 6150.00        ! used in Evaluation of Saturation Specific Humidity over Ice (see Dudhia)
53
54
55
56! Snow
57! ----
58
59      integer, SAVE, dimension(5)   ::   istdSV                  ! Snow History
60      data                        (istdSV(iso),iso=1,5) /1,2,3,4,5/
61                                                           ! 1:             faceted cristal
62                                                           ! 2: liq.watr/no faceted cristal befor
63                                                           ! 3: liq.watr/   faceted cristal befor
64
65      real(kind=real8), SAVE   ::         Cn_dSV = 2105.         ! Snow Heat Capacity          [J/kg/K]
66                                                           ! Loth et al. 1993, JGR 98 D6
67      real(kind=real8), SAVE   ::         SMndSV =    1.00       ! New Snow Layer Min.Thickn. [mm w.e.]
68      real(kind=real8), SAVE   ::         G1_dSV =   99.00       ! Conversion 0/99-->0/1
69                                                           ! Sphericity/Dendricity
70
71                                                           ! Optical Diameter of:
72      real(kind=real8), SAVE   ::         DDcdSV =    1.00       ! Dendritic     Crystals    [0.0001 m]
73      real(kind=real8), SAVE   ::         DFcdSV =    4.00       ! Young Faceted Crystals    [0.0001 m]
74      real(kind=real8), SAVE   ::         DScdSV =    3.00       ! Small         Crystals    [0.0001 m]
75
76                                                           ! Actual  Diameter of:
77      real(kind=real8), SAVE   ::         ADSdSV =    4.00       ! Small         Crystals    [0.0001 m]
78
79
80! Fractions of total Solar Irradiance  in 3 spectral Intervals
81! (see Feagle and Businger 1981, Int.Geoph.Ser. 25, p.215-222)
82! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
83! #fb real(kind=real8), SAVE   ::         So1dSV =    0.606      !                 0.3--0.8mim Interval
84! #fb real(kind=real8), SAVE   ::         So2dSV =    0.301      !                 0.8--1.5mim Interval
85! #fb real(kind=real8), SAVE   ::         So3dSV =    0.093      !                 1.5--2.8mim Interval
86
87      real(kind=real8), SAVE   ::         So1dSV =    0.580      ! Tuning ETH camp 0.3--0.8mim Interval
88      real(kind=real8), SAVE   ::         So2dSV =    0.320      ! Tuning ETH camp 0.8--1.5mim Interval
89      real(kind=real8), SAVE   ::         So3dSV =    0.100      ! Tuning ETH camp 1.5--2.8mim Interval
90
91      real(kind=real8), SAVE   ::         aI1dSV =    0.40       ! Minimum bare ICE albedo          [-]
92      real(kind=real8), SAVE   ::         aI2dSV =    0.45       ! Maximum bare ICE albedo          [-]
93      real(kind=real8), SAVE   ::         aI3dSV =    0.65       ! ICE lense albedo at 800 kg/m3    [-]
94                                                           ! and minimum pure snow albedo
95
96! Water in Snow
97! -------------
98      real(kind=real8), SAVE   ::         ws0dSV =    0.07       ! Irreducible Water Saturation in Snow
99                                                           ! Coleou et al., 1998, A.Gla.26, 64-68
100      real(kind=real8), SAVE   ::         roCdSV =  800.00       ! Pore Hole Close OFF Density  [kg/m3]
101                                                           ! Greuell & Konzelmann (1994)
102                                                           ! Glob.Plan.Change 9, 4.5 p.100
103      real(kind=real8), SAVE   ::         ru_dSV =  200.00       ! Surficial Water Scale Factor [kg/m2]
104
105
106! Ice
107! ---
108
109      real(kind=real8), SAVE   ::         CdidSV =    2.10       ! Conductivity of pure  Ice    [W/m/K]
110
111
112
113! Vegetation                (SVAT Classification)
114! -----------------------------------------------
115
116      real(kind=real8), SAVE   ::         DH_dSV(0:nvgt)         ! Displacement            Height   [m]
117      real(kind=real8), SAVE   ::         Z0mdSV(0:nvgt)         ! Roughness  Length for Momentum   [m]
118      real(kind=real8), SAVE   ::         StodSV(0:nvgt)         ! Minimum    Stomatal Resistance [s/m]
119      real(kind=real8), SAVE   ::         PR_dSV(0:nvgt)         ! Internal Plant      Resistance   [s]
120      real(kind=real8), SAVE   ::         rbtdSV(0:nvgt)         ! Root Fraction Beta Coefficient   [-]
121
122      data     (DH_dSV(ivg),                              &! Displacement            Height   [m]
123     &                 Z0mdSV(ivg),                       &! Roughness  Length for Momentum   [m]
124     &                        StodSV(ivg),                &! Minimum    Stomatal Resistance [s/m]
125     &                               PR_dSV(ivg),         &! Internal Plant      Resistance   [s]
126     &                                      rbtdSV(ivg),  &! Root beta coeffient              [-]
127     &                                              ivg=0,nvgt) &
128     &         /0.00,  0.01,5000.,   0.0,   0.000,        &!  0 NO     VEGETATION
129     &          0.07,  0.01,  50.,   0.5e9, 0.961,        &!  1 CROPS      LOW
130     &          0.21,  0.03,  50.,   0.5e9, 0.961,        &!  2 CROPS      MEDIUM
131     &          0.70,  0.10,  50.,   0.5e9, 0.961,        &!  3 CROPS      HIGH
132     &          0.07,  0.01,  50.,   0.5e9, 0.943,        &!  4 GRASS      LOW
133     &          0.21,  0.03,  50.,   0.5e9, 0.964,        &!  5 GRASS      MEDIUM
134     &          0.70,  0.10,  50.,   0.5e9, 0.972,        &!  6 GRASS      HIGH
135     &          1.40,  0.20,  10.,   1.0e9, 0.968,        &!  7 BROADLEAF  LOW
136     &          5.60,  0.80,  10.,   1.0e9, 0.962,        &!  8 BROADLEAF  MEDIUM
137     &         14.00,  2.00,  10.,   1.0e9, 0.962,        &!  9 BROADLEAF  HIGH
138     &          1.40,  0.20,  10.,   1.0e9, 0.971,        &! 10 NEEDLELEAF LOW
139     &          5.60,  0.80,  10.,   1.0e9, 0.976,        &! 11 NEEDLELEAF MEDIUM
140     &         14.00,  2.00,  10.,   1.0e9, 0.976/         ! 12 NEEDLELEAF HIGH
141
142
143      real(kind=real8), SAVE   ::         pscdSV =  250.         ! Critical Leaf Water Potential    [m]
144      real(kind=real8), SAVE   ::         StxdSV = 5000.         ! maXimum  Stomatal   Resistance [s/m]
145      real(kind=real8), SAVE   ::         LAIdSV =    4.         ! maximum  LAI
146
147
148      real(kind=real8), SAVE   ::         f__ust(0:nvgt)         !
149
150      data          (f__ust(ivg),      ivg=0,nvgt)        &!
151     &              /1.00,                                &!  0 NO     VEGETATION
152     &               1.20,                                &!  1 CROPS      LOW
153     &               5.00,                                &!  2 CROPS      MEDIUM
154     &              10.00,                                &!  3 CROPS      HIGH
155     &               1.20,                                &!  4 GRASS      LOW
156     &               5.00,                                &!  5 GRASS      MEDIUM
157     &              10.00,                                &!  6 GRASS      HIGH
158     &               5.00,                                &!  7 BROADLEAF  LOW
159     &              10.00,                                &!  8 BROADLEAF  MEDIUM
160     &              12.00,                                &!  9 BROADLEAF  HIGH
161     &              10.00,                                &! 10 NEEDLELEAF LOW
162     &              12.00,                                &! 11 NEEDLELEAF MEDIUM
163     &              50.00                               /  ! 12 NEEDLELEAF HIGH
164
165
166! Soil
167! ----
168
169      real(kind=real8), SAVE   ::         rcwdSV = 4.180e+6      ! Density * Water Specific Heat
170
171! Soil Vertical Discretization
172! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
173      real(kind=real8), SAVE   ::         dz_dSV(-nsol:0)        ! Vertical  Discretization
174      data                         (dz_dSV(iso),iso=-4,0) &!
175     &                     /0.72,0.20,0.060,0.019,0.001/   ! Layer's Thickness
176
177      real(kind=real8), SAVE   ::         zz_dSV                 ! Soil      Thickness
178
179! Soil Hydraulic Parameters (USDA Classification)
180! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
181      integer,       parameter ::         nsot   =   12
182
183      real(kind=real8), SAVE   ::         etadSV(0:nsot)         ! Water Content at Saturation  [kg/kg]
184      real(kind=real8), SAVE   ::         psidSV(0:nsot)         ! Water Succion at Saturation      [m]
185      real(kind=real8), SAVE   ::         Ks_dSV(0:nsot)         ! Hydraulic Conductivity
186                                                                 !               at Saturation    [m/s]
187      real(kind=real8), SAVE   ::         bCHdSV(0:nsot)         ! Clapp-Hornberger Coefficient b   [-]
188
189      data         (etadSV(iso),                                     &
190     &                        psidSV(iso),                           &
191     &                                  Ks_dSV(iso),                 &
192     &                                            bCHdSV(iso),       &
193     &                                                   iso=0,nsot) &
194     &             / 1.000,    1.000,   0.0e00,     1.00, &!  0 WATER
195     &               0.395,    0.121, 176.0e-6,     4.05, &!  1 SAND
196     &               0.410,    0.090, 156.3e-6,     4.38, &!  2 LOAMY      SAND
197     &               0.435,    0.218,  34.1e-6,     4.90, &!  3 SANDY      LOAM
198     &               0.485,    0.786,   7.2e-6,     5.30, &!  4 SILT       LOAM
199     &               0.451,    0.478,   7.0e-6,     5.39, &!  5            LOAM
200     &               0.420,    0.299,   6.3e-6,     7.12, &!  6 SANDY CLAY LOAM
201     &               0.477,    0.356,   1.7e-6,     7.75, &!  7 SILTY CLAY LOAM
202     &               0.476,    0.630,   2.5e-6,     8.52, &!  8       CLAY LOAM
203     &               0.426,    0.153,   2.2e-6,    10.40, &!  9 SANDY CLAY
204     &               0.492,    0.490,   1.0e-6,    10.40, &! 10 SILTY CLAY
205     &               0.482,    0.405,   1.3e-6,    11.40, &! 11       CLAY
206     &               0.001,    0.001,   0.0e00,     0.02/  ! 12       ICE
207
208
209      real(kind=real8), SAVE  ::          ustdmn(0:nsot)
210      real(kind=real8), SAVE  ::          claypc(0:nsot)
211
212      data         (ustdmn(iso),                                     &
213     &                        claypc(iso),                           &
214     &                                                   iso=0,nsot) &
215     &             /10.000,  0.0000, &!  0 WATER           !
216     &               0.300,  0.0000, &!  1 SAND            !
217     &               0.300,  0.0920, &!  2 LOAMY      SAND ! Fal99, Table 2
218     &               0.300,  0.1420, &!  3 SANDY      LOAM ! Fal99, Table 2
219     &               0.300,  0.1630, &!  4 SILT       LOAM ! Guess (Interpol.)
220     &               0.300,  0.1840, &!  5            LOAM ! Fal99, Table 2
221     &               0.300,  0.2280, &!  6 SANDY CLAY LOAM ! Guess (Interpol.)
222     &               0.300,  0.2720, &!  7 SILTY CLAY LOAM ! Guess (Interpol.)
223     &               0.300,  0.3160, &!  8       CLAY LOAM ! Fal99, Table 2
224     &               0.300,  0.3750, &!  9 SANDY CLAY      ! Guess (Interpol.)
225     &               0.300,  0.4340, &! 10 SILTY CLAY      ! Guess (Interpol.)
226     &               0.300,  0.4920, &! 11       CLAY      ! Fal99, Table 2
227     &              10.000,  0.0000/  ! 12       ICE       !
228
229
230
231! Water Bodies
232! ------------
233
234      real(kind=real8), SAVE   ::         vK_dSV = 1000.         ! Diffusivity in Water          [m2/s]
235      real(kind=real8), SAVE   ::         SIcMIN =    0.1        ! Sea-Ice Layer Min Thickness      [m]
236      real(kind=real8), SAVE   ::         dzSIce(4)              ! Sea-Ice Vertical  Discretisation [m]
237      data                          dzSIce /0.5,0.05,0.001,0.0/
238      real(kind=real8), SAVE   ::         SIc_OK(2)              ! Sea-Ice Switch
239      data                          SIc_OK /1.0,0.00/
240      real(kind=real8), SAVE   ::         TSIdSV =    0.50       ! Sea-Ice Fraction: SST Scale      [K]
241      real(kind=real8), SAVE   ::         OcnMin =    0.05       ! Open Water Min Fraction (S.Hem.) [-]
242      real(kind=real8), SAVE   ::         TocnSI =  270.70       ! Ocn Temp. for Full Sea-Ice Cover [K]
243      real(kind=real8), SAVE   ::         TOF_SV                 ! Ocn Grid Cell Freez.Temperature  [K]
244      real(kind=real8), SAVE   ::         VarSST                 ! Variable (0.) / Fixed    (1.)
245      real(kind=real8), SAVE   ::         FixSST                 ! Fixed    (1.) / Variable (0.) SST
246      real(kind=real8), SAVE   ::         SSTnud                 ! SST Nudging Parameter
247
248
249! Auxiliary Variables
250! -------------------
251
252      integer,       parameter ::  nkhy=50
253
254      real(kind=real8), SAVE   ::  rocsSV( 0:nsot)               ! Soil Contribution to (ro c)_s
255      real(kind=real8), SAVE   ::  etamSV( 0:nsot)               ! Soil Minimum Humidity
256      real(kind=real8), SAVE   ::  s1__SV( 0:nsot)               ! ... X eta**( b+2), DR97(3.36)
257      real(kind=real8), SAVE   ::  s2__SV( 0:nsot)               ! ... X eta**(2b+3), DR97(3.35)
258      real(kind=real8), SAVE   ::  aKdtSV( 0:nsot, 0:nkhy)       ! Khyd=a*eta+b: a * dt
259      real(kind=real8), SAVE   ::  bKdtSV( 0:nsot, 0:nkhy)       ! Khyd=a*eta+b: b * dt
260
261
262
263      end module Mod_SISVAT_dat
Note: See TracBrowser for help on using the repository browser.