SURFEX v8.1
General documentation of Surfex
modd_snow_metamo.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 ! ajoutEB
6 ! correction de l'erreur interversion de XVTANG2 et XVTANG3
7 !######################
9 ! ######################
10 !
11 !!**** *MODD_SNOW_METAMO* - declaration of parameters related
12 !! to snow metamorphism!!
13 !! PURPOSE
14 !! -------
15 ! The purpose of this declarative module is to specify the
16 ! parameters related to the metamorphism parameterization of snow.
17 !
18 !!
19 !!** IMPLICIT ARGUMENTS
20 !! ------------------
21 !! None
22 !!
23 !! REFERENCE
24 !! ---------
25 !!
26 !!
27 !! AUTHOR
28 !! ------
29 !! V. Vionnet *Meteo France*
30 !!
31 !! MODIFICATIONS
32 !! -------------
33 !! Original 02/2008
34 !-------------------------------------------------------------------------------
35 !
36 !* 0. DECLARATIONS
37 ! ------------
38 !
39 IMPLICIT NONE
40 !
41 !-------------------------------------------------------------------------------
42 !
43 ! minimum snow layer thickness for thermal calculations.
44 ! Used to prevent numerical problems as snow becomes vanishingly thin.
45 REAL, PARAMETER :: xsnowdzmin = 0.0001
46 !
47 ! Optical diameter properties
48 REAL, PARAMETER :: xdiaet = 1.e-4
49 REAL, PARAMETER :: xdiagf = 3.e-4
50 REAL, PARAMETER :: xdiafp = 4.e-4
51 !
52 ! Compaction/Settling Coefficients from Crocus v2.4
53 !
54 REAL, PARAMETER :: xvvisc1 = 7.62237e6 ! pre-exponential viscosity factor (UNIT : N m-2 s)
55 REAL, PARAMETER :: xvvisc3 = 0.023 ! density adjustement in the exponential correction for viscosity (UNIT : m3 kg-1)
56 REAL, PARAMETER :: xvvisc4 = .1 ! temperature adjustement in the exponential correction for viscosity (UNIT : K-1)
57 REAL, PARAMETER :: xvvisc5 = 1. ! factor for viscosity adjustement to grain type - to be checked
58 REAL, PARAMETER :: xvvisc6 = 60. ! factor for viscosity adjustement to grain type - to be checked
59 ! (especially this one ; inconsistency with Crocus v2.4)
60 REAL, PARAMETER :: xvvisc7 = 10. ! factor for viscosity adjustement to grain type - to be checked
61 REAL, PARAMETER :: xvro11 = 250. ! normalization term for density dependence of the viscosity calculation (UNIT : kg m-3)
62 !
63 ! Maximum value for TPSNOW%GRAN2
64 REAL, PARAMETER :: xvgran1 = 99.
65 REAL, PARAMETER :: xgran = 99.
66 !
67 INTEGER, PARAMETER :: nvhis1 = 1
68 INTEGER, PARAMETER :: nvhis2 = 2
69 INTEGER, PARAMETER :: nvhis3 = 3
70 INTEGER, PARAMETER :: nvhis4 = 4
71 INTEGER, PARAMETER :: nvhis5 = 5
72 !
73 ! Properties of fresh snow
74 REAL, PARAMETER :: xnden1 = 17.12
75 REAL, PARAMETER :: xnden2 = 128.
76 REAL, PARAMETER :: xnden3 = -20.
77 REAL, PARAMETER :: xnsph1 = 7.87
78 REAL, PARAMETER :: xnsph2 = 38.
79 REAL, PARAMETER :: xnsph3 = 50.
80 REAL, PARAMETER :: xnsph4 = 90.
81 !
82 REAL, PARAMETER :: xuepsi = 1.e-8
83 REAL, PARAMETER :: xepsi = 1.e-8
84 REAL, PARAMETER :: xupourc = 100.
85 !
86 ! Parameters for Marbouty's function
87 !
88 REAL, PARAMETER :: xvtang1 = 40.
89 REAL, PARAMETER :: xvtang2 = 6.
90 REAL, PARAMETER :: xvtang3 = 22.
91 REAL, PARAMETER :: xvtang4 = .7
92 REAL, PARAMETER :: xvtang5 = .3
93 REAL, PARAMETER :: xvtang6 = 6.
94 REAL, PARAMETER :: xvtang7 = 1.
95 REAL, PARAMETER :: xvtang8 = .8
96 REAL, PARAMETER :: xvtang9 = 16.
97 REAL, PARAMETER :: xvtanga = .2
98 REAL, PARAMETER :: xvtangb = .2
99 REAL, PARAMETER :: xvtangc = 18.
100 REAL, PARAMETER :: xvrang1 = 400.
101 REAL, PARAMETER :: xvrang2 = 150.
102 REAL, PARAMETER :: xvgang1 = 70.
103 REAL, PARAMETER :: xvgang2 = 25.
104 REAL, PARAMETER :: xvgang3 = 40.
105 REAL, PARAMETER :: xvgang4 = 50.
106 REAL, PARAMETER :: xvgang5 = .1
107 REAL, PARAMETER :: xvgang6 = 15.
108 REAL, PARAMETER :: xvgang7 = .1
109 REAL, PARAMETER :: xvgang8 = .55
110 REAL, PARAMETER :: xvgang9 = .65
111 REAL, PARAMETER :: xvganga = .2
112 REAL, PARAMETER :: xvgangb = .85
113 REAL, PARAMETER :: xvgangc = .15
114 !
115 ! Parameters for snow metamorphism
116 !
117 REAL, PARAMETER :: xvdent1 = 2314.81481
118 REAL, PARAMETER :: xvdent2 = 7.2338e-7
119 REAL, PARAMETER :: xvgran6 = 51.
120 REAL, PARAMETER :: xvvap1 = -6000.
121 REAL, PARAMETER :: xvvap2 = .4
122 REAL, PARAMETER :: xvdiam1 = 4.e-4
123 REAL, PARAMETER :: xvdiam2 = 5.e-4
124 REAL, PARAMETER :: xvdiam3 = 3.e-4
125 REAL, PARAMETER :: xvdiam4 = 2.e-4
126 REAL, PARAMETER :: xvdiam5 = 1.e-4
127 REAL, PARAMETER :: xvdiam6 = 1.e-4
128 REAL, PARAMETER :: xvsphe1 = 1.
129 REAL, PARAMETER :: xvsphe2 = 11574.074
130 REAL, PARAMETER :: xvsphe3 = .5
131 REAL, PARAMETER :: xvsphe4 = .1
132 REAL, PARAMETER :: xvtail1 = 1.28e-17
133 REAL, PARAMETER :: xvtail2 = 4.22e-19
134 REAL, PARAMETER :: xvgrat1 = 5.
135 REAL, PARAMETER :: xvgrat2 = 15.
136 REAL, PARAMETER :: xvfi = 1.0417e-9
137 REAL, PARAMETER :: xvtelv1 = 0.005
138 !
139 INTEGER,PARAMETER :: nvdent1 = 3
140 !
141 INTEGER :: nvardims !number of dimensions of netcdf input variable
143 INTEGER :: nid_var ! Netcdf IDs for variable
144 !
145 INTEGER :: nid_file
146 REAL, DIMENSION(:,:,:), POINTER :: xdrdt0,xtau,xkappa ! field read
147 !
148 END MODULE modd_snow_metamo
149 
150 
151 
real, parameter xvtang7
real, parameter xvfi
real, parameter xvtangc
real, parameter xdiagf
real, parameter xvvap1
real, parameter xdiaet
real, parameter xvgang4
real, parameter xvsphe2
real, parameter xsnowdzmin
real, parameter xvtang2
real, parameter xuepsi
real, parameter xvvisc5
real, parameter xnden1
real, parameter xvgang9
real, parameter xvgang6
integer, parameter nvdent1
real, parameter xvganga
real, parameter xvgran1
real, parameter xvdent1
integer, parameter nvhis5
real, parameter xvsphe3
real, parameter xvvap2
real, parameter xvgran6
real, parameter xvtail2
real, parameter xvvisc4
integer, parameter nvhis4
real, parameter xnden3
real, dimension(:,:,:), pointer xdrdt0
real, parameter xvtang8
real, parameter xvtang3
real, parameter xepsi
real, parameter xnsph2
real, parameter xvgang2
real, dimension(:,:,:), pointer xkappa
real, parameter xvdiam1
real, parameter xdiafp
real, parameter xvgang3
real, parameter xvsphe4
real, parameter xvgrat2
real, parameter xvtanga
real, parameter xgran
real, parameter xvdiam5
real, parameter xvtangb
real, parameter xvgrat1
integer, parameter nvhis2
real, parameter xvtail1
real, parameter xvrang2
real, parameter xvsphe1
real, parameter xvdiam2
real, parameter xnden2
real, parameter xvdiam6
real, parameter xvrang1
real, parameter xvvisc3
real, parameter xvgang7
real, parameter xnsph4
real, parameter xvtang5
integer, parameter nvhis3
real, parameter xupourc
real, parameter xvtang9
integer, parameter nvhis1
real, parameter xvvisc7
real, parameter xvgang8
real, parameter xvgang1
real, dimension(:,:,:), pointer xtau
real, parameter xvvisc6
real, parameter xvdiam4
real, parameter xvvisc1
real, parameter xnsph1
real, parameter xvdent2
real, parameter xvro11
real, parameter xvgangc
real, parameter xvtang6
real, parameter xvtelv1
real, parameter xvtang4
real, parameter xnsph3
real, parameter xvtang1
real, parameter xvgang5
real, parameter xvdiam3
real, parameter xvgangb