1 | MODULE VARySV |
---|
2 | |
---|
3 | USE VAR_SV, ONLY: klonv, nsol, nsno |
---|
4 | |
---|
5 | |
---|
6 | IMPLICIT NONE |
---|
7 | |
---|
8 | ! + |
---|
9 | INTEGER, DIMENSION(:),SAVE,ALLOCATABLE :: NLaysv ! New Snow Layer Switch |
---|
10 | !$OMP THREADPRIVATE(NLaysv) |
---|
11 | INTEGER, DIMENSION(:),SAVE,ALLOCATABLE :: i_thin ! Index of the thinest Layer |
---|
12 | !$OMP THREADPRIVATE(i_thin) |
---|
13 | INTEGER, DIMENSION(:),SAVE,ALLOCATABLE :: LIndsv ! Contiguous Layer relative Index |
---|
14 | !$OMP THREADPRIVATE(LIndsv) |
---|
15 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: albisv ! Integrated Surface Albedo |
---|
16 | !$OMP THREADPRIVATE(albisv) |
---|
17 | !hj prelim |
---|
18 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: alb1sv ! Surface Albedo VIS |
---|
19 | !$OMP THREADPRIVATE(alb1sv) |
---|
20 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: alb2sv ! Surface Albedo NIR |
---|
21 | !$OMP THREADPRIVATE(alb2sv) |
---|
22 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: alb3sv ! Surface Albedo FIR |
---|
23 | !$OMP THREADPRIVATE(alb3sv) |
---|
24 | REAL, DIMENSION(:,:),SAVE,ALLOCATABLE :: alb6sv ! 6 band-albedo |
---|
25 | !$OMP THREADPRIVATE(alb6sv) |
---|
26 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: albssv ! Soil Albedo [-] |
---|
27 | !$OMP THREADPRIVATE(albssv) |
---|
28 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: SoSosv !? Surface Absorbed Solar Radiat. |
---|
29 | !$OMP THREADPRIVATE(SoSosv) |
---|
30 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: Eso_sv !? Emissivity of Soil+Snow |
---|
31 | !$OMP THREADPRIVATE(Eso_sv) |
---|
32 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: HSv_sv ! Sensible Heat Flux [W/m2] |
---|
33 | !$OMP THREADPRIVATE(HSv_sv) |
---|
34 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: HLv_sv ! Latent Heat Flux [W/m2] |
---|
35 | !$OMP THREADPRIVATE(HLv_sv) |
---|
36 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: HSs_sv !? Sensible Heat Flux (t) |
---|
37 | !$OMP THREADPRIVATE(HSs_sv) |
---|
38 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: HLs_sv !? Latent Heat Flux (t) |
---|
39 | !$OMP THREADPRIVATE(HLs_sv) |
---|
40 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sqrCm0 ! in Neutral Drag Coef.Moment. |
---|
41 | !$OMP THREADPRIVATE(sqrCm0) |
---|
42 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sqrCh0 ! in Neutral Drag Coef.Heat |
---|
43 | !$OMP THREADPRIVATE(sqrCh0) |
---|
44 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: Lx_H2O ! Latent Heat of Vaporiz./Sublim. |
---|
45 | !$OMP THREADPRIVATE(Lx_H2O) |
---|
46 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: ram_sv ! Aerodyn.Resistance (Moment.) |
---|
47 | !$OMP THREADPRIVATE(ram_sv) |
---|
48 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: rah_sv ! Aerodyn.Resistance (Heat) |
---|
49 | !$OMP THREADPRIVATE(rah_sv) |
---|
50 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: Fh__sv ! Stability Function |
---|
51 | !$OMP THREADPRIVATE(Fh__sv) |
---|
52 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: dFh_sv ! Stability Function (Deriv.) |
---|
53 | !$OMP THREADPRIVATE(dFh_sv) |
---|
54 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: Evp_sv !x Evaporation [kg/m2] |
---|
55 | !$OMP THREADPRIVATE(Evp_sv) |
---|
56 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: EvT_sv !x Evapotranspiration [kg/m2] |
---|
57 | !$OMP THREADPRIVATE(EvT_sv) |
---|
58 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: LSdzsv ! Land/Sea Vert. Discretiz. Fact. |
---|
59 | !$OMP THREADPRIVATE(LSdzsv) |
---|
60 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: Tsrfsv ! Surface Temperature |
---|
61 | !$OMP THREADPRIVATE(Tsrfsv) |
---|
62 | REAL,SAVE,ALLOCATABLE :: sEX_sv(:,:) ! Verticaly Integr.Extinct.Coef. |
---|
63 | !$OMP THREADPRIVATE(sEX_sv) |
---|
64 | REAL,SAVE,ALLOCATABLE :: zzsnsv(:,:) ! Snow Pack Thickness [m] |
---|
65 | !$OMP THREADPRIVATE(zzsnsv) |
---|
66 | REAL,SAVE,ALLOCATABLE :: psi_sv(:,:) ! Soil Water Potential |
---|
67 | !$OMP THREADPRIVATE(psi_sv) |
---|
68 | REAL,SAVE,ALLOCATABLE :: Khydsv(:,:) ! Soil Hydraulic Conductiv. |
---|
69 | !$OMP THREADPRIVATE(Khydsv) |
---|
70 | REAL, DIMENSION(:),SAVE,ALLOCATABLE :: EExcsv ! Energy in Excess, current |
---|
71 | !$OMP THREADPRIVATE(EExcsv) |
---|
72 | |
---|
73 | CONTAINS |
---|
74 | SUBROUTINE INIT_VARySV |
---|
75 | IMPLICIT NONE |
---|
76 | INTEGER :: ikl |
---|
77 | |
---|
78 | ALLOCATE(NLaysv(klonv)) ! New Snow Layer Switch |
---|
79 | ALLOCATE(i_thin(klonv)) ! Index of the thinest Layer |
---|
80 | ALLOCATE(LIndsv(klonv)) ! Contiguous Layer relative Index |
---|
81 | ALLOCATE(albisv(klonv)) ! Integrated Surface Albedo |
---|
82 | !hj prelim |
---|
83 | ALLOCATE(alb1sv(klonv)) ! Surface Albedo VIS |
---|
84 | ALLOCATE(alb2sv(klonv)) ! Surface Albedo NIR |
---|
85 | ALLOCATE(alb3sv(klonv)) ! Surface Albedo FIR |
---|
86 | ALLOCATE(alb6sv(klonv,6))! 6-band Albedo |
---|
87 | |
---|
88 | ALLOCATE(albssv(klonv)) ! Soil Albedo [-] |
---|
89 | ALLOCATE(SoSosv(klonv)) !? Surface Absorbed Solar Radiat. |
---|
90 | ALLOCATE(Eso_sv(klonv)) !? Emissivity of Soil+Snow |
---|
91 | ALLOCATE(HSv_sv(klonv)) ! Sensible Heat Flux [W/m2] |
---|
92 | ALLOCATE(HLv_sv(klonv)) ! Latent Heat Flux [W/m2] |
---|
93 | ALLOCATE(HSs_sv(klonv)) !? Sensible Heat Flux (t) |
---|
94 | ALLOCATE(HLs_sv(klonv)) !? Latent Heat Flux (t) |
---|
95 | ALLOCATE(sqrCm0(klonv)) ! in Neutral Drag Coef.Moment. |
---|
96 | ALLOCATE(sqrCh0(klonv)) ! in Neutral Drag Coef.Heat |
---|
97 | ALLOCATE(Lx_H2O(klonv)) ! Latent Heat of Vaporiz./Sublim. |
---|
98 | ALLOCATE(ram_sv(klonv)) ! Aerodyn.Resistance (Moment.) |
---|
99 | ALLOCATE(rah_sv(klonv)) ! Aerodyn.Resistance (Heat) |
---|
100 | ALLOCATE(Fh__sv(klonv)) ! Stability Function |
---|
101 | ALLOCATE(dFh_sv(klonv)) ! Stability Function (Deriv.) |
---|
102 | ALLOCATE(Evp_sv(klonv)) !x Evaporation [kg/m2] |
---|
103 | ALLOCATE(EvT_sv(klonv)) !x Evapotranspiration [kg/m2] |
---|
104 | ALLOCATE(LSdzsv(klonv)) ! Land/Sea Vert. Discretiz. Fact. |
---|
105 | ALLOCATE(Tsrfsv(klonv)) ! Surface Temperature |
---|
106 | ALLOCATE(sEX_sv(klonv,-nsol:nsno+1)) ! Verticaly Integr.Extinct.Coef. |
---|
107 | ALLOCATE(zzsnsv(klonv, 0:nsno)) ! Snow Pack Thickness [m] |
---|
108 | ALLOCATE(psi_sv(klonv,-nsol:0 )) ! Soil Water Potential |
---|
109 | ALLOCATE(Khydsv(klonv,-nsol:0 )) ! Soil Hydraulic Conductiv. |
---|
110 | ALLOCATE(EExcsv(klonv)) ! Energy in Excess, current |
---|
111 | |
---|
112 | DO ikl=1,klonv |
---|
113 | |
---|
114 | NLaysv(ikl) =0. |
---|
115 | i_thin(ikl) =0. |
---|
116 | LIndsv(ikl) =0. |
---|
117 | albisv(ikl) =0. |
---|
118 | alb1sv(ikl) =0. |
---|
119 | alb2sv(ikl) =0. |
---|
120 | alb3sv(ikl) =0. |
---|
121 | alb6sv(ikl,:)=0. |
---|
122 | albssv(ikl) =0. |
---|
123 | SoSosv(ikl) =0. |
---|
124 | Eso_sv(ikl) =0. |
---|
125 | HSv_sv(ikl) =0. |
---|
126 | HLv_sv(ikl) =0. |
---|
127 | HSs_sv(ikl) =0. |
---|
128 | HLs_sv(ikl) =0. |
---|
129 | sqrCm0(ikl) =0. |
---|
130 | sqrCh0(ikl) =0. |
---|
131 | Lx_H2O(ikl) =0. |
---|
132 | ram_sv(ikl) =0. |
---|
133 | rah_sv(ikl) =0. |
---|
134 | Fh__sv(ikl) =0. |
---|
135 | dFh_sv(ikl) =0. |
---|
136 | Evp_sv(ikl) =0. |
---|
137 | EvT_sv(ikl) =0. |
---|
138 | LSdzsv(ikl) =0. |
---|
139 | Tsrfsv(ikl) =0. |
---|
140 | sEX_sv(ikl,:) =0. |
---|
141 | zzsnsv(ikl,:) =0. |
---|
142 | psi_sv(ikl,:) =0. |
---|
143 | Khydsv(ikl,:) =0. |
---|
144 | EExcsv(ikl) =0. |
---|
145 | |
---|
146 | |
---|
147 | END DO |
---|
148 | |
---|
149 | END SUBROUTINE INIT_VARySV |
---|
150 | |
---|
151 | END MODULE VARySV |
---|
152 | |
---|