LMDZ
VARySV.F90
Go to the documentation of this file.
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 
25  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: albssv ! Soil Albedo [-]
26 !$OMP THREADPRIVATE(albssv)
27  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: socasv ! Canopy Absorbed Solar Radiat.
28 !$OMP THREADPRIVATE(SoCasv)
29  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sososv !? Surface Absorbed Solar Radiat.
30 !$OMP THREADPRIVATE(SoSosv)
31  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: irv_sv ! Vegetation IR Flux [W/m2]
32 !$OMP THREADPRIVATE(IRv_sv)
33  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: evg_sv ! Emissivity of Vegetation+Snow
34 !$OMP THREADPRIVATE(Evg_sv)
35  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: eso_sv !? Emissivity of Soil+Snow
36 !$OMP THREADPRIVATE(Eso_sv)
37  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: tau_sv ! Transmited Radiation Fraction
38 !$OMP THREADPRIVATE(tau_sv)
39  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: rrmxsv ! Canopy Maximum Intercepted Rain
40 !$OMP THREADPRIVATE(rrMxsv)
41  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: laiesv ! effective LAI for transpirati.
42 !$OMP THREADPRIVATE(LAIesv)
43  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: lai_sv ! corrected LAI in case of snow
44 !$OMP THREADPRIVATE(LAI_sv)
45  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: glf_sv ! Green Leaf Fraction
46 !$OMP THREADPRIVATE(glf_sv)
47  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sigmsv ! Canopy Ventilation Factor
48 !$OMP THREADPRIVATE(Sigmsv)
49  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: hsv_sv ! Sensible Heat Flux [W/m2]
50 !$OMP THREADPRIVATE(HSv_sv)
51  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: hlv_sv ! Latent Heat Flux [W/m2]
52 !$OMP THREADPRIVATE(HLv_sv)
53  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: hss_sv !? Sensible Heat Flux (t)
54 !$OMP THREADPRIVATE(HSs_sv)
55  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: hls_sv !? Latent Heat Flux (t)
56 !$OMP THREADPRIVATE(HLs_sv)
57  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sqrcm0 ! in Neutral Drag Coef.Moment.
58 !$OMP THREADPRIVATE(sqrCm0)
59  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: sqrch0 ! in Neutral Drag Coef.Heat
60 !$OMP THREADPRIVATE(sqrCh0)
61  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: lx_h2o ! Latent Heat of Vaporiz./Sublim.
62 !$OMP THREADPRIVATE(Lx_H2O)
63  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: ram_sv ! Aerodyn.Resistance (Moment.)
64 !$OMP THREADPRIVATE(ram_sv)
65  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: rah_sv ! Aerodyn.Resistance (Heat)
66 !$OMP THREADPRIVATE(rah_sv)
67  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: fh__sv ! Stability Function
68 !$OMP THREADPRIVATE(Fh__sv)
69  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: dfh_sv ! Stability Function (Deriv.)
70 !$OMP THREADPRIVATE(dFh_sv)
71  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: evp_sv !x Evaporation [kg/m2]
72 !$OMP THREADPRIVATE(Evp_sv)
73  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: evt_sv !x Evapotranspiration [kg/m2]
74 !$OMP THREADPRIVATE(EvT_sv)
75  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: lsdzsv ! Land/Sea Vert. Discretiz. Fact.
76 !$OMP THREADPRIVATE(LSdzsv)
77  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: tsrfsv ! Surface Temperature
78 !$OMP THREADPRIVATE(Tsrfsv)
79  REAL,SAVE,ALLOCATABLE :: sex_sv(:,:) ! Verticaly Integr.Extinct.Coef.
80 !$OMP THREADPRIVATE(sEX_sv)
81  REAL,SAVE,ALLOCATABLE :: zzsnsv(:,:) ! Snow Pack Thickness [m]
82 !$OMP THREADPRIVATE(zzsnsv)
83  REAL,SAVE,ALLOCATABLE :: psi_sv(:,:) ! Soil Water Potential
84 !$OMP THREADPRIVATE(psi_sv)
85  REAL,SAVE,ALLOCATABLE :: khydsv(:,:) ! Soil Hydraulic Conductiv.
86 !$OMP THREADPRIVATE(Khydsv)
87  REAL,SAVE,ALLOCATABLE :: rootsv(:,:) ! Root Water Pump [kg/m2/s]
88 !$OMP THREADPRIVATE(Rootsv)
89  REAL, DIMENSION(:),SAVE,ALLOCATABLE :: eexcsv ! Energy in Excess, current
90 !$OMP THREADPRIVATE(EExcsv)
91 
92 CONTAINS
93  SUBROUTINE init_varysv
94  IMPLICIT NONE
95  INTEGER :: ikl
96 
97  ALLOCATE(nlaysv(klonv)) ! New Snow Layer Switch
98  ALLOCATE(i_thin(klonv)) ! Index of the thinest Layer
99  ALLOCATE(lindsv(klonv)) ! Contiguous Layer relative Index
100  ALLOCATE(albisv(klonv)) ! Integrated Surface Albedo
101  !hj prelim
102  ALLOCATE(alb1sv(klonv)) ! Surface Albedo VIS
103  ALLOCATE(alb2sv(klonv)) ! Surface Albedo NIR
104  ALLOCATE(alb3sv(klonv)) ! Surface Albedo FIR
105 
106  !
107  ALLOCATE(albssv(klonv)) ! Soil Albedo [-]
108  ALLOCATE(socasv(klonv)) ! Canopy Absorbed Solar Radiat.
109  ALLOCATE(sososv(klonv)) !? Surface Absorbed Solar Radiat.
110  ALLOCATE(irv_sv(klonv)) ! Vegetation IR Flux [W/m2]
111  ALLOCATE(evg_sv(klonv)) ! Emissivity of Vegetation+Snow
112  ALLOCATE(eso_sv(klonv)) !? Emissivity of Soil+Snow
113  ALLOCATE(tau_sv(klonv)) ! Transmited Radiation Fraction
114  ALLOCATE(rrmxsv(klonv)) ! Canopy Maximum Intercepted Rain
115  ALLOCATE(laiesv(klonv)) ! effective LAI for transpirati.
116  ALLOCATE(lai_sv(klonv)) ! corrected LAI in case of snow
117  ALLOCATE(glf_sv(klonv)) ! Green Leaf Fraction
118  ALLOCATE(sigmsv(klonv)) ! Canopy Ventilation Factor
119  ALLOCATE(hsv_sv(klonv)) ! Sensible Heat Flux [W/m2]
120  ALLOCATE(hlv_sv(klonv)) ! Latent Heat Flux [W/m2]
121  ALLOCATE(hss_sv(klonv)) !? Sensible Heat Flux (t)
122  ALLOCATE(hls_sv(klonv)) !? Latent Heat Flux (t)
123  ALLOCATE(sqrcm0(klonv)) ! in Neutral Drag Coef.Moment.
124  ALLOCATE(sqrch0(klonv)) ! in Neutral Drag Coef.Heat
125  ALLOCATE(lx_h2o(klonv)) ! Latent Heat of Vaporiz./Sublim.
126  ALLOCATE(ram_sv(klonv)) ! Aerodyn.Resistance (Moment.)
127  ALLOCATE(rah_sv(klonv)) ! Aerodyn.Resistance (Heat)
128  ALLOCATE(fh__sv(klonv)) ! Stability Function
129  ALLOCATE(dfh_sv(klonv)) ! Stability Function (Deriv.)
130  ALLOCATE(evp_sv(klonv)) !x Evaporation [kg/m2]
131  ALLOCATE(evt_sv(klonv)) !x Evapotranspiration [kg/m2]
132  ALLOCATE(lsdzsv(klonv)) ! Land/Sea Vert. Discretiz. Fact.
133  ALLOCATE(tsrfsv(klonv)) ! Surface Temperature
134  ALLOCATE(sex_sv(klonv,-nsol:nsno+1)) ! Verticaly Integr.Extinct.Coef.
135  ALLOCATE(zzsnsv(klonv, 0:nsno)) ! Snow Pack Thickness [m]
136  ALLOCATE(psi_sv(klonv,-nsol:0 )) ! Soil Water Potential
137  ALLOCATE(khydsv(klonv,-nsol:0 )) ! Soil Hydraulic Conductiv.
138  ALLOCATE(rootsv(klonv,-nsol:0)) ! Root Water Pump [kg/m2/s]
139  ALLOCATE(eexcsv(klonv)) ! Energy in Excess, current
140 
141  DO ikl=1,klonv
142  nlaysv(ikl) = 0
143  i_thin(ikl) = 0
144  lindsv(ikl) = 0
145  END DO
146 
147  END SUBROUTINE init_varysv
148 
149 END MODULE varysv
150 
real, dimension(:), allocatable, save fh__sv
Definition: VARySV.F90:67
real, dimension(:), allocatable, save sqrcm0
Definition: VARySV.F90:57
real, dimension(:), allocatable, save lx_h2o
Definition: VARySV.F90:61
real, dimension(:), allocatable, save tau_sv
Definition: VARySV.F90:37
real, dimension(:), allocatable, save irv_sv
Definition: VARySV.F90:31
real, dimension(:), allocatable, save rrmxsv
Definition: VARySV.F90:39
Definition: VARySV.F90:1
real, dimension(:), allocatable, save socasv
Definition: VARySV.F90:27
real, dimension(:,:), allocatable, save sex_sv
Definition: VARySV.F90:79
integer, dimension(:), allocatable, save lindsv
Definition: VARySV.F90:13
real, dimension(:,:), allocatable, save rootsv
Definition: VARySV.F90:87
real, dimension(:), allocatable, save evp_sv
Definition: VARySV.F90:71
real, dimension(:), allocatable, save eexcsv
Definition: VARySV.F90:89
real, dimension(:), allocatable, save evt_sv
Definition: VARySV.F90:73
real, dimension(:), allocatable, save dfh_sv
Definition: VARySV.F90:69
real, dimension(:), allocatable, save tsrfsv
Definition: VARySV.F90:77
Definition: VAR_SV.F90:1
real, dimension(:), allocatable, save hlv_sv
Definition: VARySV.F90:51
real, dimension(:), allocatable, save lsdzsv
Definition: VARySV.F90:75
real, dimension(:), allocatable, save lai_sv
Definition: VARySV.F90:43
integer, dimension(:), allocatable, save i_thin
Definition: VARySV.F90:11
real, dimension(:), allocatable, save rah_sv
Definition: VARySV.F90:65
integer, parameter nsno
Definition: VAR_SV.F90:11
real, dimension(:), allocatable, save hss_sv
Definition: VARySV.F90:53
real, dimension(:), allocatable, save sososv
Definition: VARySV.F90:29
real, dimension(:), allocatable, save sqrch0
Definition: VARySV.F90:59
real, dimension(:,:), allocatable, save psi_sv
Definition: VARySV.F90:83
real, dimension(:), allocatable, save laiesv
Definition: VARySV.F90:41
integer, parameter nsol
Definition: VAR_SV.F90:10
real, dimension(:), allocatable, save hsv_sv
Definition: VARySV.F90:49
integer, save klonv
Definition: VAR_SV.F90:13
real, dimension(:), allocatable, save alb2sv
Definition: VARySV.F90:20
real, dimension(:), allocatable, save glf_sv
Definition: VARySV.F90:45
real, dimension(:), allocatable, save sigmsv
Definition: VARySV.F90:47
real, dimension(:), allocatable, save albisv
Definition: VARySV.F90:15
subroutine init_varysv
Definition: VARySV.F90:94
real, dimension(:), allocatable, save evg_sv
Definition: VARySV.F90:33
real, dimension(:), allocatable, save eso_sv
Definition: VARySV.F90:35
real, dimension(:,:), allocatable, save khydsv
Definition: VARySV.F90:85
real, dimension(:,:), allocatable, save zzsnsv
Definition: VARySV.F90:81
real, dimension(:), allocatable, save alb1sv
Definition: VARySV.F90:18
real, dimension(:), allocatable, save alb3sv
Definition: VARySV.F90:22
real, dimension(:), allocatable, save albssv
Definition: VARySV.F90:25
real, dimension(:), allocatable, save hls_sv
Definition: VARySV.F90:55
real, dimension(:), allocatable, save ram_sv
Definition: VARySV.F90:63
integer, dimension(:), allocatable, save nlaysv
Definition: VARySV.F90:9