SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
ini_assim.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! #########
6  SUBROUTINE ini_assim
7 ! ####################
8 !
9 !!**** *INI_ASSIM * - routine to initialize the module MODD_ASSIM
10 !!
11 !! PURPOSE
12 !! -------
13 ! The purpose of this routine is to initialize variables in module MODD_ASSIM.
14 !
15 !
16 !!** METHOD
17 !! ------
18 !! The various constants are set to their numerical values
19 !!
20 !!
21 !! IMPLICIT ARGUMENTS
22 !! ------------------
23 !! Module MODD_ASSIM : contains constants for soil assimilation
24 !!
25 !!
26 !! AUTHOR
27 !! ------
28 !! J.-F. Mahfouf * Meteo France *
29 !!
30 !! MODIFICATIONS
31 !! -------------
32 !! Original 21/05/09
33 !!
34 !-------------------------------------------------------------------------------
35 !
36 !* 0. DECLARATIONS
37 ! ------------
38 !
39 USE modd_assim, ONLY : lfgel, lclim, xsodelx, ntvgla, xrd1, xrtiner, xwcrin, &
40  xwpmx, xwsmx, xtmergl, xrzhz0g, nseaice, xrwpia, &
41  xrwpib, xrsnsa, xrsnsb, xsalbm, xsalbb, xsemim, xsemib, &
42  xszz0b, lhumid, lldhmt, lissew, nlissew, nmindj, nnebul, &
43  nneigt, nneigw, xanebul, xrclimn, xrclimtp, xrclimts, &
44  xrclimv, xrclimwp, xrclimws, xscoefh, xscoeft, xsevap, &
45  xsice, xsneigt, xsneigw, xsprecip, xswfc, xv10mx, xsmu0, &
46  l_sm_wp, nr_sm_wp, xra_sm_wp, xsighp1, xsigt2mr, xsigh2mr, &
47  xrsabr, xrargr, xgwfc, xewfc, xgwwilt, xewwilt, xg1wsat, &
48  xg2wsat, xadwr, xreps1, xreps2, xreps3, nidj, xrepsm, &
49  xrcdtr
50 !
51 USE modd_csts, ONLY : xpi
52 !
53 !
54 USE yomhook ,ONLY : lhook, dr_hook
55 USE parkind1 ,ONLY : jprb
56 !
57 IMPLICIT NONE
58 INTEGER :: j
59 REAL(KIND=JPRB) :: zhook_handle
60 !
61 !**-----------------------------------------------------------------------
62 !** - 1 - Initialisations, diagnostics.
63 !** ----------------------------
64 
65 !* 1.1 Constantes
66 !
67 ! NECHGU : ECHEANCE DU GUESS EN HEURES (0 A 30).
68 !
69 IF (lhook) CALL dr_hook('INI_ASSIM',0,zhook_handle)
70 !
71 !LFGEL : CLE D'APPEL DU GEL DE L'EAU DU SOL AVEC ISBA (LSOLV)
72 ! : KEY FOR SOIL FREEZING WITH ISBA (LSOLV)
73 ! ( ACSOL, ACDROV)
74 lfgel = .true.
75 lclim = .true.
76 !
77 ! Characteristics of ice and sea
78 !SODELX(0:9): DISCRETISATION VERTICALE DU SOL (MAXI 10 COUCHES)
79 ! : SOIL VERTICAL DISCRETIZATION (MAX 10 LAYERS)
80 !GCONV : FACTEUR DE CHANGEMENT D'UNITE (MASSE VOL. DE L'EAU LIQUIDE)
81 !RD1 : EPAISSEUR DU RESERVOIR SUPERFICIEL.
82 ! : UPPER RESERVOIR DEPTH.
83 !RTINER : RAPPORT DES INERTIES THERMIQUES PROFONDEUR/SURFACE.
84 ! : RATIO OF THE DEEP/SURFACE THERMAL INERTIAS.
85 !WCRIN : QUANTITE CRITIQUE POUR LA NEIGE MI-COUVRANTE.
86 ! : CRITICAL TRANSITION VALUE FOR SNOW DEPTH (HALF-COVER).
87 !WPMX : VALEUR MAXIMUN POUR LE CONTENU EN EAU EN PROFONDEUR.
88 ! : MAXIMUM VALUE FOR DEEP SOIL WATER CONTENT.
89 !WSMX : VALEUR MAXIMUN POUR LE CONTENU EN EAU DE SURFACE.
90 ! : MAXIMUM VALUE FOR SURFACE SOIL WATER CONTENT.
91 !NTVGLA : INDICE DE VEGETATION SUR GLACE.
92 !TMERGL : TEMPERATURE DE FONTE DE LA GLACE DE MER.
93 ! : MELTING TEMPERATURE OF FLOATING ICE.
94 !RZHZ0G : RAPPORT LONGUEUR DE RUGOSITE THERMIQUE SUR LONGUEUR
95 ! RUGOSITE DYNAMIQUE DE LA BANQUISE
96 xsodelx(0) = 1.0/sqrt(1.0+2.0*xpi)
97 DO j=1,9
98  xsodelx(j) = xsodelx(j-1)*2.0*xpi
99 ENDDO
100 !
101 ntvgla = 2
102 !
103 xrd1 = 1.e-2
104 xrtiner = 5.
105 xwcrin = 10.
106 xwpmx = 100.
107 xwsmx = 20.
108 xtmergl = 271.23
109 xrzhz0g = 1.0
110 !
111 !nactex, canali
112 ! NSEAICE : utilsation limite glace SSM/I (et nb de jours de retard possible)
113 ! RSNSA : Coefficient pour l'analyse de neige
114 ! RSNSB : Coefficient pour l'analyse de neige
115 ! RWPIA : Coefficient pour l'analyse de l'eau gelee
116 ! RWPIB : Coefficient pour l'analyse de l'eau gelee
117 !
118 nseaice = 0
119 !
120 xrwpia = 0.025
121 xrwpib = 2.
122 xrsnsa = 0.025
123 xrsnsb = 1.0
124 !
125 !yomcli
126 ! SALBN,SALBX,SALBM,SALBG,SALBB,SALBD : albedo
127 ! SEMIN,SEMIX,SEMIM,SEMIG,SEMIB,SEMID : emissivity
128 ! (minimum,maximum,sea,ice,sea ice,desert)
129 ! SZZ0N,SZZ0M,SZZ0B,SZZ0U,SZZ0D : roughness length
130 ! (minimum,sea,sea-ice,urban areas,desert)
131 !
132 xsalbm = 0.07
133 xsalbb = 0.65
134 xsemim = 0.96
135 xsemib = 0.97
136 xszz0b = 0.001
137 !
138 ! ecarts-type d'erreurs d'observation
139 ! T2m -> SIGT2MO
140 ! Hu2m -> SIGH2MO
141 ! LSGOBS : activee si l'une des valeurs ci-dessus differe de la reference
142 !
143 ! seuils sur la force du vent a 10m , la duree du jour , les precipitations,
144 ! ws/wfc, evaporation en (mm/jour), presence de glace
145 ! V10MX , MINDJ , SPRECIP , SWFC , SEVAP , SICE , SMU0
146 !
147 ! cles et coefficients de reglage
148 ! LHUMID : activation de la clef LIMVEG ou du seuil SWFC limitee
149 ! LISSEW : activation du lissage des increments de wp (si NLISSEW=3)
150 ! NLISSEW: nombre de reseaux anterieurs utilisables pour le lissage
151 ! ANEBUL , NNEBUL : dependance par rapport a la nebulosite
152 ! SNEIGT , NNEIGT : dependance par rapport a la neige (T)
153 ! SNEIGW , NNEIGW : dependance par rapport a la neige (w)
154 ! coefficients pour le retrait du biais de T2m et Hu2m
155 ! SCOEFT , SCOEFH : =0. pas de retrait / =1. increment mis a zero
156 
157 ! champs d'increments pour le lissage (transfert dans GPPBUF de RINCW)
158 ! RINCW(jrof,j) j=1/2/3 pour reseau courant - 06h/12h/18h
159 ! CINCW(j) : nom des champs d'increments dans les fichiers ARPEGE
160 !
161 ! biais moyen
162 ! RBIAT(jrof) : biais moyen de temperature } tableaux supprimes et mis dans
163 ! RBIAH(jrof) : biais moyen d'humidite } GPPBUF (adresse: MCANRI0)
164 !
165 ! reglage du rappel clim
166 ! RCLIMTS : coef. multiplicateur de RCLIMCA pour Ts
167 ! RCLIMTP : coef. multiplicateur de RCLIMCA pour Tp
168 ! RCLIMWS : coef. multiplicateur de RCLIMCA pour Ws
169 ! RCLIMWP : coef. multiplicateur de RCLIMCA pour Wp
170 ! RCLIMN : impact de la fraction de neige
171 ! RCLIMV : coef. multiplicateur sur desert pour Ws, Wp
172 !
173 !NACVEG
174 !
175 !***
176 !*** conditions d'analyse
177 !*** MINDJ : duree du jour minimale (heure)
178 !*** V10MX : seuil sur le module du vent (analyse) a 10m
179 !*** SPRECIP : seuil sur les precipitations (prevues) en mm
180 !*** SEVAP : seuil l'evaporation inst. en (mm/jour)
181 !*** SICE : seuil sur la quantite totale de glace (Kg/m2)
182 !*** SMU0 : seuil utilisant l'angle zenithal solaire
183 !*** SWFC : seuil sur ws/wfc (pas d'analyse de ws si ws > SWFC*wfc)
184 !*** ponderations
185 !*** LHUMID : humidification seulement si wp < veg*wwilt
186 !*** : assechement seulement si ws > SWFC*wfc (pour ws)
187 !*** LISSEW : lissage des increments de wp (moyenne glissante sur 24h)
188 !*** ANEBUL : reduction maximale par la nebulosite
189 !*** NNEBUL : puissance de la nebulosite prise en compte
190 !*** nebulosite moyenne neb <--> poids 1-ANEBUL*neb**NNEBUL
191 !*** SNEIGT : seuil sur la fraction de la maille recouverte de neige (T)
192 !*** NNEIGT : coefficient de ponderation (T)
193 !*** SNEIGW : seuil sur la fraction de la maille recouverte de neige (w)
194 !*** NNEIGW : coefficient de ponderation (w)
195 !*** retrait du biais sur T2m et Hu2m
196 !*** SCOEFT : coefficient pour le retrait du biais de temperature
197 !*** SCOEFH : coefficient pour le retrait du biais d'humidite
198 !*** =0 pas de retrait. =1 increment mis a zero
199 !*** reglage du rappel clim
200 !*** RCLIMTS : coef. multiplicateur de RCLIMCA pour Ts
201 !*** RCLIMTP : coef. multiplicateur de RCLIMCA pour Tp
202 !*** RCLIMWS : coef. multiplicateur de RCLIMCA pour Ws
203 !*** RCLIMWP : coef. multiplicateur de RCLIMCA pour Wp
204 !*** RCLIMN : impact de la fraction de neige
205 !*** RCLIMV : coef. multiplicateur sur desert pour Ws, Wp
206 !*** lissage spatial du SWI et modification de Wp a partir du SWI lisse
207 !*** L_SM_WP : lissage spatial du SWI (Soil Wetness Index) et modif Wp
208 !*** NR_SM_WP: nombre d'appel de la routine de lissage spatial du SWI
209 !*** RA_SM_WP: distance caracteristique du lissage spatial (en metres)
210 !***
211 !***---------------------------------------------------------------------
212 !
213 lhumid = .true.
214 lldhmt = .false.
215 lissew = .false.
216 !
217 nlissew = 0
218 nmindj = 6
219 nnebul = 1
220 nneigt = 0
221 nneigw = 1
222 !
223 xanebul = 0.75
224 xrclimn = 0.
225 xrclimtp = 0.
226 xrclimts = 0.
227 xrclimv = 1.
228 xrclimwp = 0.1
229 xrclimws = 0.
230 xscoefh = 0.
231 xscoeft = 0.
232 xsevap = 0.
233 xsice = 5
234 xsneigt = 1.
235 xsneigw = 0.
236 xsprecip = .3
237 xswfc = 1.0
238 xv10mx = 10.
239 xsmu0 = 7.
240 !
241 ! PARAMETERS TO SWITCH ON CASMSWI - SPATIAL SMOOTHING OF SWI (SOIL WETNESS INDEX)
242 ! THEN CHANGING OF Wp ( TOTAL SOIL WATER CONTENT) IN CANARI OI.
243 ! CASMSWI IS CALLED BY CANARI
244 !
245 l_sm_wp = .false.
246 !
247 nr_sm_wp = 1
248 !
249 xra_sm_wp = 5000.0
250 !
251 ! Standard deviation of background error
252 !
253 xsighp1 = 15.e-2
254 !
255 ! Standard deviation of observation errors (referencce)
256 !
257 xsigt2mr = 1.0
258 xsigh2mr = 10.e-2
259 !
260 ! Soil textural properties (reference = loam)
261 !
262 xrsabr = 43.
263 xrargr = 18.
264 xgwfc = 89.0467e-3
265 xewfc = 0.35
266 xgwwilt = 37.1342e-3
267 xewwilt = 0.5
268 xg1wsat = -1.08e-3
269 xg2wsat = 494.31e-3
270 !
271 xadwr = xgwfc*(xrargr**xewfc) - xgwwilt*(xrargr**xewwilt)
272 !
273 ! Low threshold values
274 !
275 xreps1 = 1.e-3
276 xreps2 = 1.e-1
277 xreps3 = 1.e-13
278 !
279 ! Astronomical and time constants
280 !
281 nidj = 12 ! day duration
282 !
283 xrepsm = 0.409093 ! obliquity
284 xrcdtr = 24./360.
285 ! ITRAD (half assimilation window in sec) --> dependant from NECHGU --> set in OI_MAIN
286 !
287 IF (lhook) CALL dr_hook('INI_ASSIM',1,zhook_handle)
288 !
289 !-------------------------------------------------------------------------------
290 !
291 END SUBROUTINE ini_assim
subroutine ini_assim
Definition: ini_assim.F90:6