source: LMDZ6/branches/Optimisation_LMDZ/libf/phymar/PHY_SISVAT_INP.f90 @ 5304

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

Inclusion de la physique de MAR


Integration of MAR physics

File size: 27.4 KB
Line 
1      subroutine PHY_SISVAT_INP(FlagSV_SBC,TsHOST,kcolq)
2
3!------------------------------------------------------------------------------+
4!                                                         Mon  1-Jul-2013  MAR |
5!     SubRoutine PHY_SISVAT_INP initializes                                    |
6!                    SISVAT    (Soil                                           |
7!                               Ice                                            |
8!                               Snow                                           |
9!                               Vegetation                                     |
10!                               Atmosphere                                     |
11!                               Transfer   Scheme)                             |
12!                                                                              |
13!                               USING DATA                                     |
14!                                                                              |
15!     Here DATA are academic                                                   |
16!                                                                              |
17!     version 3.p.4.1 created by H. Gallee,               Wed  1-May-2013      |
18!           Last Modification by H. Gallee,               Mon  1-Jul-2013      |
19!                                                                              |
20!------------------------------------------------------------------------------+
21
22
23! Global  Variables
24! =================
25
26      use Mod_Real
27      use Mod_PHY____grd
28      use Mod_PHY____dat
29      use Mod_SISVAT_dat
30      use Mod_SISVAT_grd
31      use Mod_SISVAT_kkl
32      use Mod_SISVAT_gpt
33
34
35      IMPLICIT NONE
36
37
38      logical                                               ::  FlagSV_SBC         !  DATA     Surface   Flag
39      integer                                               ::  kcolq              !
40      real(kind=real8), dimension(kcolq)                    ::  TsHOST             ! (Initial) Surface   Temperature                          [K]
41     
42
43
44
45! Local   Variables
46! =================
47
48! FOR INPUT
49! ---------
50
51!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  Mask___xyn  ! Land(1)-Sea(0) Mask         (Mosaic)         [-]
52!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Frac___xyn  ! Grid Cell Fraction          (Mosaic)         [-]
53!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  iVgT___xyn  ! Vegetat. Type               (Mosaic)         [-]
54!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  iSoT___xyn  !     Soil Type               (Mosaic)         [-]
55!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  iDra___xyn  !     Soil Drainage Switch    (Mosaic)         [-]
56!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Albs___xyn  ! Dry Soil Albedo             (Mosaic)         [-]
57!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  LAI____xyn  ! Leaf Area Index             (Mosaic)     [m2/m2]
58!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  GLF____xyn  ! Green Leaf Fraction         (Mosaic)         [-]
59
60
61
62! FOR INPUT/OUTPUT (RESTART)
63! ----------------
64
65!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  FSbz___xyn  ! Fallen Snow Buffer          (Mosaic)   [mm w.e.]
66!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Tveg___xyn  ! Vegetation      Temperature (Mosaic)         [K]
67!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Sveg___xyn  ! Canopy intercepted Snow     (Mosaic)   [mm w.e.]
68!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Rveg___xyn  ! Canopy intercepted Rain     (Mosaic)   [mm w.e.]
69!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  pveg___xyn  ! Vegetation Water Potential  (Mosaic)         [m]
70
71!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  z0_____xyn  ! Roughness Length Momentum   (Mosaic)         [m]
72!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  z0ro___xyn  ! Orographic Roughness Length (Mosaic)         [m]
73!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  r0_____xyn  ! Roughness Length Scalars    (Mosaic)         [m]
74!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  uss____xyn  ! Blown    Snow   Flux Turbulent Scale [kg/kg m/s]
75!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  uds____xyn  ! Blown    Dust   Flux Turbulent Scale [kg/kg m/s]
76!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  BSbz___xyn  ! Eroded Snow Buffer          (Mosaic)   [mm w.e.]
77! #AE real(kind=real8),ALLOCATABLE ,dimension(:,:)    ::  usth___xyn  ! Friction Velocity Saltation Threshold      [m/s]
78
79!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Alb____xyn  ! Surface  Albedo             (Mosaic)         [-]
80!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  SNnb___xyn  ! Nb of  Snow Layers          (Mosaic)         [-]
81!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  SInb___xyn  ! Nb of S.Ice Layers          (Mosaic)         [-]
82!     integer         ,ALLOCATABLE ,dimension(:,:,:)  ::  ICnb___xyn  ! Nb of   Ice Layers          (Mosaic)         [-]
83
84!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  SnWE___xyn  ! Snow  Pack  Thickness       (Mosaic)   [mm w.e.]
85
86!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  wes____xyn  ! Sublimation        Budget   (Mosaic)   [mm w.e.]
87!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  wer____xyn  ! Melting            Budget   (Mosaic)   [mm w.e.]
88!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  wem____xyn  ! Refreezing         Budget   (Mosaic)   [mm w.e.]
89!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  wee____xyn  ! Evapotranspiration Budget   (Mosaic)   [mm w.e.]
90
91!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  Tsis__dxyn  ! Soil-Ice-Snow   Temperature (Mosaic)         [K]
92!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  Qsis__dxyn  ! Soil-Ice-Snow   Humidity    (Mosaic)     [kg/kg]
93!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  SNdz__dxyn  ! Snow  Layer Thickness       (Mosaic)         [m]
94!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  SNro__dxyn  ! Snow  Layer Density         (Mosaic)     [kg/m3]
95!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  SNag__dxyn  ! Snow  Layer Age             (Mosaic)       [day]
96!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  SNg1__dxyn  ! Snow  Layer Property (d./s.)(Mosaic)         [-]
97!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:)::  SNg2__dxyn  ! Snow  Layer Property (s./s.)(Mosaic)         [-]
98!     integer         ,ALLOCATABLE ,dimension(:,:,:,:)::  SNhi__dxyn  ! Snow  Layer History         (Mosaic)         [-]
99
100!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  SWz____xyn  ! Surficial Water Mass        (Mosaic)   [mm w.e.]
101!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  SWx____xyn  ! Surficial Water Status      (Mosaic)   [0,1=m,f]
102!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  SWHy___xyn  ! Surficial Water: Normaliz.Decay (Mosaic)     [-]
103!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  ROdt___xyn  ! Run-Off  Intensity          (Mosaic) [mm w.e./s]
104!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  ROF____xyn  ! Cumulative Run-Off          (Mosaic)   [mm w.e.]
105
106
107! A-O Coupling
108! ------------
109
110!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  Alb_AO_xyn  ! Ocean COUPLING (Surface Albedo) n=2 sea-ice  [-]
111!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  s_T_AO_xyn  ! Ocean COUPLING (SST)            n=1 opn-watr [K]
112!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  dSdTAO_xyn  ! Ocean COUPLING (d(SH Flux) / dT)        [W/m2/K]
113!     real(kind=real8),ALLOCATABLE ,dimension(:,:,:)  ::  dLdTAO_xyn  ! Ocean COUPLING (d(LH Flux) / dT)        [W/m2/K]
114
115
116! Dummy
117! -----
118
119      integer  ::  i     ,j     ,n     ,l     ,nm    ,ikp
120
121
122
123
124
125
126!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
127!                                                                      !
128!     NON ACADEMIC INITIALIZATION                                      !
129!                                                                      !
130      IF (FlagSV_SBC)                                               THEN
131!                                                                      !
132!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
133
134
135
136
137! +++++++++++++++++++++++++++++++++++++++++++++++++++++
138! INITIALIZATION of a non-1D case, by using INPUT Files
139!                                    (HERE FROM NESTOR)
140
141! Martin CONTROL
142Print*,'mxpp=',mxpp
143Print*,'mypp=',mypp
144Print*,'ixp1=',ixp1
145Print*,'jyp1=',jyp1
146
147        IF   (mxpp-ixp1.GT.0 .OR. mypp-jyp1.GT.0)                   THEN
148! +++++++++++++++++++++++++++++++++++++++++++++++++++++
149
150
151
152
153! ================================
154! FIRST INITIALIZATION     (BEGIN)
155
156          IF       (it_EXP .LE. 1)                                  THEN
157! ================================
158
159
160! ================================
161          END IF ! (it_EXP .LE. 1)
162
163! FIRST INITIALIZATION       (END)
164! ================================
165
166
167
168
169! Update Sea-Ice    Fraction
170! ==========================
171
172! #IP     IF (             inpSBC                    )              THEN
173
174!                ******
175! #IP       call INIsic(newsicSI )  ! ATTENTION 2 premiers Arguments supprimés
176!                ******
177
178! #IP     END IF
179
180
181
182
183! Update LAI and/or Green Leaf Fraction
184! =====================================
185
186! #GP                                          glfFIX = .true.
187! #CM     IF (vegmod .AND. inpSBC .AND.  .NOT. glfFIX)              THEN
188
189!                ******
190! #CM       call INIglf(newglfSIS)  ! ATTENTION 2 premiers Arguments supprimés
191!                ******
192
193! #CM     END IF
194
195
196
197
198
199
200! +++++++++++++++++++++++++++++++++++++++++++++++++++++
201! INITIALIZATION of a     1D case, by prescribing INPUT
202
203        ELSE
204! +++++++++++++++++++++++++++++++++++++++++++++++++++++
205
206
207
208
209! ================================
210! FIRST INITIALIZATION     (BEGIN)
211
212          IF       (it_EXP .LE. 1)                                  THEN
213! ================================
214
215
216
217! ALLOCATION
218! ==========
219
220! FOR INPUT
221! ---------
222
223!         allocate  ( Mask___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Land(1)-Sea(0) Mask         (Mosaic)         [-]
224!         allocate  ( Frac___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Grid Cell Fraction          (Mosaic)         [-]
225!         allocate  ( iVgT___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Vegetat. Type               (Mosaic)         [-]
226!         allocate  ( iSoT___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !      Soil Type               (Mosaic)         [-]
227!         allocate  ( iDra___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !      Soil Drainage Switch    (Mosaic)         [-]
228!         allocate  ( Albs___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Dry Soil Albedo             (Mosaic)         [-]
229!         allocate  ( LAI____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Leaf Area Index             (Mosaic)     [m2/m2]
230!         allocate  ( GLF____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Green Leaf Fraction         (Mosaic)         [-]
231
232
233! FOR INPUT/OUTPUT (RESTART)
234! ----------------
235
236!         allocate  ( FSbz___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Fallen Snow Buffer          (Mosaic)   [mm w.e.]
237!         allocate  ( Tveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Vegetation      Temperature (Mosaic)         [K]
238!         allocate  ( Sveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Canopy intercepted Snow     (Mosaic)   [mm w.e.]
239!         allocate  ( Rveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Canopy intercepted Water    (Mosaic)   [mm w.e.]
240!         allocate  ( pveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Vegetation Water Potential  (Mosaic)         [m]
241
242!         allocate  ( z0_____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Roughness Length Momentum   (Mosaic)         [m]
243!         allocate  ( z0ro___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  z0(Orographic)                               [m]
244!         allocate  ( r0_____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Roughness Length Scalars    (Mosaic)         [m]
245!         allocate  ( uss____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Blown    Snow   Flux Turbulent Scale [kg/kg m/s]
246!         allocate  ( BSbz___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Eroded Snow Buffer          (Mosaic)   [mm w.e.]
247! #AE     allocate  ( usth___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Friction Velocity Saltation Threshold      [m/s]
248
249!         allocate  ( Alb____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Surface  Albedo             (Mosaic)         [-]
250!         allocate  ( SNnb___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Nb of  Snow Layers          (Mosaic)         [-]
251!         allocate  ( SInb___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Nb of S.Ice Layers          (Mosaic)         [-]
252!         allocate  ( ICnb___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Nb of   Ice Layers          (Mosaic)         [-]
253
254!         allocate  ( SnWE___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Snow  Pack  Thickness       (Mosaic)   [mm w.e.]
255
256!         allocate  ( wes____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Sublimation        Budget   (Mosaic)   [mm w.e.]
257!         allocate  ( wer____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Melting            Budget   (Mosaic)   [mm w.e.]
258!         allocate  ( wem____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Refreezing         Budget   (Mosaic)   [mm w.e.]
259!         allocate  ( wee____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Evapotranspiration Budget   (Mosaic)   [mm w.e.]
260
261!         allocate  ( Tsis__dxyn(ixp1:mxpp,jyp1:mypp,mwp,-nsoil:nsnow) )
262!                                                             !  Soil-Ice-Snow   Temperature (Mosaic)         [K]
263!         allocate  ( Qsis__dxyn(ixp1:mxpp,jyp1:mypp,mwp,-nsoil:nsnow) )
264!                                                             !  Soil-Ice-Snow   Humidity    (Mosaic)     [kg/kg]
265!         allocate  ( SNdz__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer Thickness       (Mosaic)         [m]
266!         allocate  ( SNro__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer Density         (Mosaic)     [kg/m3]
267!         allocate  ( SNag__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer Age             (Mosaic)       [day]
268!         allocate  ( SNg1__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer Property (d./s.)(Mosaic)         [-]
269!         allocate  ( SNg2__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer Property (s./s.)(Mosaic)         [-]
270!         allocate  ( SNhi__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) !  Snow  Layer History         (Mosaic)         [-]
271
272!         allocate  ( SWz____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Surficial Water Mass        (Mosaic)   [mm w.e.]
273!         allocate  ( SWx____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Surficial Water Status      (Mosaic)   [0,1=m,f]
274!         allocate  ( SWHy___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Normalized Decay of Surficial Water Content  [-]
275!         allocate  ( ROdt___xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Run-Off  Intensity          (Mosaic) [mm w.e./s]
276!         allocate  ( ROF____xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Cumulative Run-Off          (Mosaic)   [mm w.e.]
277
278
279! A-O Coupling
280! ------------
281
282!         allocate  ( Alb_AO_xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Ocean COUPLING (Surface Albedo) n=2 sea-ice  [-]
283!         allocate  ( Alb_AO_xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Ocean COUPLING (Surface Albedo) n=2 sea-ice  [-]
284!         allocate  ( dSdTAO_xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Ocean COUPLING (d(SH Flux) / dT)        [W/m2/K]
285!         allocate  ( dLdTAO_xyn(ixp1:mxpp,jyp1:mypp,mwp) )       !  Ocean COUPLING (d(LH Flux) / dT)        [W/m2/K]
286
287
288! Martin CONTROL
289PRINT*,'On initialise des paramètres en dur dans PHY_SISVAT_INP'
290
291! ------------------------------------------
292! From 2-D Horizontal to 1-D Horizontal Grid
293! ------------------------------------------
294
295          DO ikp=1,kcolp
296             i   = ii__AP(ikp)
297             j   = jj__AP(ikp)
298
299
300            !MaskSV_gpt(ikp)     = 1                     !  Land(1)-Sea(0) Mask         (Grid Cell)      [-]
301            ! Martin : aquaplanète
302             MaskSV_gpt(ikp)     = 0                     !  Land(1)-Sea(0) Mask         (Grid Cell)      [-]
303
304          DO n=1,mwp
305!           Mask___xyn(i,j,n)   = 1                     !  Land(1)-Sea(0) Mask         (Mosaic)         [-]
306            !LSmask    (ikp,n)   = 1                     !  Land(1)-Sea(0) Mask         (Mosaic)         [-]
307            LSmask    (ikp,n)   = 0                     !  Land(1)-Sea(0) Mask         (Mosaic)         [-]
308
309            SlopSV    (ikp,n)   = 0.0                   !  Assignation of Slope to a Particular Value
310
311!           Frac___xyn(i,j,n)   = 1.0/float(mwp)        !  Grid Cell Fraction          (Mosaic)         [-]
312            FracSV    (ikp,n)   = 1.0/float(mwp)        !  Grid Cell Fraction          (Mosaic)         [-]
313
314!           z0_____xyn(i,j,n)   = 1.e-6                 !  Roughness Length Momentum   (Mosaic)         [m]   
315            !z0__SV    (ikp,n)   = 1.e-6                 !  Roughness Length Momentum   (Mosaic)         [m]   
316            z0__SV    (ikp,n)   = 1.e-3                 !  Roughness Length Momentum   (Mosaic)         [m]   
317                                                      ! (Sensitive if non-zero Orographic Roughness)
318!           r0_____xyn(i,j,n)   = 1.e-6                 !  Roughness Length Scalars    (Mosaic)         [m]
319            !Z0h_SV    (ikp,n)   = 1.e-6                 !  Roughness Length Scalars    (Mosaic)         [m]
320            Z0h_SV    (ikp,n)   = 1.e-3                 !  Roughness Length Scalars    (Mosaic)         [m]
321
322
323! Soil and Vegetation
324! -------------------
325
326!           iVgT___xyn(i,j,n)   =   5                   !  Vegetat. Type               (Mosaic)         [-]   (Sensitive)
327            iVgTSV    (ikp,n)   =   0                   !  Vegetat. Type               (Mosaic)         [-]   (Sensitive)
328!           iSoT___xyn(i,j,n)   =   5                   !      Soil Type               (Mosaic)         [-]
329            iSoTSV    (ikp,n)   =   0                   !      Soil Type               (Mosaic)         [-]
330!           iDra___xyn(i,j,n)   =   1                   !      Soil Drainage Switch    (Mosaic)         [-] 
331            iWaFSV    (ikp,n)   =   1                   !      Soil Drainage Switch    (Mosaic)         [-] 
332!           Albs___xyn(i,j,n)   =   0.15                !  Dry Soil Albedo             (Mosaic)         [-]
333            alb0SV    (ikp,n)   =   0.15                !  Dry Soil Albedo             (Mosaic)         [-]
334!           LAI0SV    (ikp,n)   = LAI____xyn(i,j,n)     ! LAI
335!           glf0SV    (ikp,n)   = GLF____xyn(i,j,n)     ! Green Leaf Frac.
336
337
338! Snow Pack Initialization: NO Snow Pack
339! --------------------------------------
340
341!           SNnb___xyn(i,j,n)   = 0                     !  Nb of  Snow Layers          (Mosaic)         [-]   (Sensitive, maybe)
342            isnoSV    (ikp,n)   = 0                     !  Nb of  Snow Layers          (Mosaic)         [-]   (Sensitive, maybe)
343!           SInb___xyn(i,j,n)   = 0                     !  Nb of S.Ice Layers          (Mosaic)         [-]
344            ispiSV    (ikp,n)   = 0                     !  Nb of S.Ice Layers          (Mosaic)         [-]
345!           ICnb___xyn(i,j,n)   = 0                     !  Nb of   Ice Layers          (Mosaic)         [-]   (Sensitive, maybe)
346            iiceSV    (ikp,n)   = 0                     !  Nb of   Ice Layers          (Mosaic)         [-]   (Sensitive, maybe)
347
348          DO l=-nsol,0
349!           Tsis__dxyn(i,j,n,l) =     TsHOST(ikp)       !  Soil-Ice-Snow   Temperature (Mosaic)         [K]
350!           TsisSV    (ikp,n,l) = Tsis__dxyn(i,j,n,l)   !
351            TsisSV    (ikp,n,l) =     TsHOST(ikp)       !
352!           Qsis__dxyn(i,j,n,l) =                      &!                  Humidity    (Mosaic)     [kg/kg]
353!    &          etadSV(iVgTSV(ikp,n))                   ! (Saturation is   assumed)
354!           eta_SV    (ikp,n,l) = Qsis__dxyn(i,j,n,l)   !
355            eta_SV    (ikp,n,l) =                      &!
356     &          etadSV(iVgTSV(ikp,n))                   !
357          ENDDO
358
359          DO l=1,nsno
360!           Tsis__dxyn(i,j,n,l) = 273.15                !  Soil-Ice-Snow   Temperature (Mosaic)         [K]
361!           TsisSV    (ikp,n,l) = Tsis__dxyn(i,j,n,l)   !
362            TsisSV    (ikp,n,l) = 273.15                !
363!           Qsis__dxyn(i,j,n,l) =   0.00                !  Soil-Ice-Snow   Humidity    (Mosaic)     [kg/kg]
364!           eta_SV    (ikp,n,l) = Qsis__dxyn(i,j,n,l)   !
365            eta_SV    (ikp,n,l) =   0.00                !
366!           SNdz__dxyn(i,j,n,l) =   0.00                !  Snow  Layer Thickness       (Mosaic)         [m]
367!           dzsnSV    (ikp,n,l) = SNdz__dxyn(i,j,n,l)   !
368            dzsnSV    (ikp,n,l) =   0.00                !
369!           SNro__dxyn(i,j,n,l) =   0.00                !  Snow  Layer Density         (Mosaic)     [kg/m3]
370!           ro__SV    (ikp,n,l) = SNro__dxyn(i,j,n,l)   !
371            ro__SV    (ikp,n,l) =   0.00                !
372!           SNag__dxyn(i,j,n,l) =   0.00                !  Snow  Layer Age             (Mosaic)       [day]
373!           agsnSV    (ikp,n,l) = SNag__dxyn(i,j,n,l)   !
374            agsnSV    (ikp,n,l) =   0.00                !
375!           SNg1__dxyn(i,j,n,l) =   0.00                !  Snow  Layer Property (d./s.)(Mosaic)         [-]
376!           G1snSV    (ikp,n,l) = SNg1__dxyn(i,j,n,l)   !
377            G1snSV    (ikp,n,l) =   0.00                !
378!           SNg2__dxyn(i,j,n,l) =   0.00                !  Snow  Layer Property (s./s.)(Mosaic)         [-]
379!           G2snSV    (ikp,n,l) = SNg2__dxyn(i,j,n,l)   !
380            G2snSV    (ikp,n,l) =   0.00                !
381!           SNhi__dxyn(i,j,n,l) =   0                   !  Snow  Layer History         (Mosaic)
382!           istoSV    (ikp,n,l) = SNhi__dxyn(i,j,n,l)   !
383            istoSV    (ikp,n,l) =   0                   !
384          ENDDO
385
386          ENDDO
387          ENDDO
388
389
390! ================================
391          END IF ! (it_EXP .LE. 1)
392
393! FIRST INITIALIZATION       (END)
394! ================================
395
396
397
398
399! OUTPUT
400! ======
401
402!             dSdTAO_xyn(i,j,n) = dSdTSV(ikp,n)                         ! Sens.H.Flux T-Der.  (A-O Coupling)  [W/m2/K]
403!             dLdTAO_xyn(i,j,n) = dLdTSV(ikp,n)                         ! Latn.H.Flux T-Der.  (A-O Coupling)  [W/m2/K]
404!!#SN         SnWE___xyn(i,j,n) = zWE_SV(ikp,n)                         ! Current  *Thick.
405!             ROdt___xyn(i,j,n) = RnofSV(ikp,n)                         ! Run OFF Intensity
406
407
408
409
410! RESTART
411! =======
412
413!!#SN         BufsSV(ikp,n) = FSbz___xyn(i,j,n)                         ! Snow Buffer Lay.
414!!#SN         rusnSV(ikp,n) = SWz____xyn(i,j,n)                         ! Surficial Water
415!!#SN         SWS_SV(ikp,n) = SWx____xyn(i,j,n)                         ! Surficial Water Status
416!!#SN         SWf_SV(ikp,n) = SWHySV_xyn(i,j,n)                         ! Normalized Decay
417
418
419
420
421! +++++++++++++++++++++++++++++++++++++++++++++++++++++
422        END IF
423! +++++++++++++++++++++++++++++++++++++++++++++++++++++
424
425
426
427
428
429
430!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
431!                                                                      !
432!     ACADEMIC INITIALIZATION                                          !
433!                                                                      !
434      ELSE ! IF (.NOT.FlagSV_SBC)                                      !
435!                                                                      !
436!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
437
438
439! ==============================
440! FIRST INITIALIZATION   (BEGIN)
441        PRINT*, 'CONTROL PHY_SISVAT_INP'
442        PRINT*,'kcolq=',kcolq
443        PRINT*,'kcolp=',kcolp
444        PRINT*,'kmwp=',mwp
445
446        IF       (it_EXP .LE. 1)                                    THEN
447! ==============================
448
449            DO ikp=1,kcolp
450
451              MaskSV_gpt(ikp)      = 0                                  !   Land-Sea Mask
452
453            DO nm=1,mwp
454
455              !LSMask(ikp,nm)       = 1                                  !   Land-Sea Mask
456              ! Test aquaplanète (Martin):
457              LSMask(ikp,nm)       = 0                                  !   Land-Sea Mask
458              SlopSV(ikp,nm)       = 0.                                 !   Surface Slope
459              FracSV(ikp,nm)       = 1.      / float(mwp)               !   Mesh Fraction
460              z0__SV(ikp,nm)       = 1.                              !   z0   Momentum
461              z0h_SV(ikp,nm)       = 1.                            !   z0    Scalars
462              !z0__SV(ikp,nm)       = 0.1                              !   z0   Momentum
463              !z0h_SV(ikp,nm)       = 0.1                            !   z0    Scalars
464              !z0__SV(ikp,nm)       = 0.001                              !   z0   Momentum
465              !z0h_SV(ikp,nm)       = 0.00001                            !   z0    Scalars
466              isnoSV(ikp,nm)       = 0                                  !   NO Snow
467              ispiSV(ikp,nm)       = 0                                  !   NO Ice (Superimposed)
468              iiceSV(ikp,nm)       = 0                                  !   NO Ice
469
470             !iVgTSV(ikp,nm)       = 5                                  !   GRASS MEDIUM Vegetat. Type  (Mosaic)        [-] (see Mod_SISVAT_dat)
471              iVgTSV(ikp,nm)       = 0                                  !   GRASS MEDIUM Vegetat. Type  (Mosaic)        [-] (see Mod_SISVAT_dat)
472             !iSoTSV(ikp,nm)       = 5                                  !   LOAM  Soil            Type  (Mosaic)        [-] (see Mod_SISVAT_dat)
473              iSoTSV(ikp,nm)       = 0                                  !   LOAM  Soil            Type  (Mosaic)        [-] (see Mod_SISVAT_dat)
474              iWaFSV(ikp,nm)       = 1                                  !         Soil Drainage Switch  (Mosaic)(1=free)[-]
475              alb0SV(ikp,nm)       = 0.15                               !   Dry   Soil Albedo                           [-]
476
477            DO l=-nsol,0
478              TsisSV(ikp,nm,l)     = TsHOST(ikp)                        !   Soil-Ice-Snow   Temperature (Mosaic)        [K]
479              eta_SV(ikp,nm,l)     =                                   &!                   Humidity    (Mosaic)    [kg/kg]
480     &        etadSV(iVgTSV(ikp,nm))                                    !  (Saturation is   assumed)
481            ENDDO
482
483            DO l=1,nsno
484              TsisSV(ikp,nm,l)     = 273.15                             !  Soil-Ice-Snow   Temperature (Mosaic)         [K]
485              eta_SV(ikp,nm,l)     =   0.00                             !  Soil-Ice-Snow   Humidity    (Mosaic)     [kg/kg]
486              dzsnSV(ikp,nm,l)     =   0.00                             !  Snow  Layer Thickness       (Mosaic)         [m]
487              ro__SV(ikp,nm,l)     =   0.00                             !  Snow  Layer Density         (Mosaic)     [kg/m3]
488              agsnSV(ikp,nm,l)     =   0.00                             !  Snow  Layer Age             (Mosaic)       [day]
489              G1snSV(ikp,nm,l)     =   0.00                             !  Snow  Layer Property (d./s.)(Mosaic)         [-]
490              G2snSV(ikp,nm,l)     =   0.00                             !  Snow  Layer Property (s./s.)(Mosaic)         [-]
491              istoSV(ikp,nm,l)     =   0.00                             !  Snow  Layer History         (Mosaic)         [-]
492            ENDDO
493
494            ENDDO
495            ENDDO
496
497
498! ==============================
499        END IF ! (it_EXP .LE. 1)
500
501! FIRST INITIALIZATION     (END)
502! ==============================
503
504
505!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
506!
507      END IF !  (.NOT.FlagSV_SBC)
508!
509!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
510
511
512      end subroutine PHY_SISVAT_INP
Note: See TracBrowser for help on using the repository browser.