LMDZ
susw15.F90
Go to the documentation of this file.
1 !OPTIONS XOPT(NOEVAL)
2 SUBROUTINE susw15
3 
4 !**** *SUSW15* - INITIALIZE COMMON YOMSW15
5 !**** FROZEN VERSION (CYCLE 15) OF SUSW
6 
7 ! PURPOSE.
8 ! --------
9 ! INITIALIZE YOMSW15, THE COMMON THAT CONTAINS COEFFICIENTS
10 ! NEEDED TO RUN THE SHORTWAVE RADIATION SUBROUTINES
11 
12 !** INTERFACE.
13 ! ----------
14 ! *CALL* *SUSW15
15 
16 ! EXPLICIT ARGUMENTS :
17 ! --------------------
18 ! NONE
19 
20 ! IMPLICIT ARGUMENTS :
21 ! --------------------
22 ! COMMON YOMSW15
23 
24 ! METHOD.
25 ! -------
26 ! SEE DOCUMENTATION
27 
28 ! EXTERNALS.
29 ! ----------
30 
31 ! REFERENCE.
32 ! ----------
33 ! ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS
34 
35 ! AUTHOR.
36 ! -------
37 ! 96-11: Ph. Dandin. Meteo-France
38 ! ORIGINAL : 88-12-15 BY JEAN-JACQUES MORCRETTE *ECMWF*
39 
40 ! MODIFICATIONS.
41 ! --------------
42 ! M.Hamrud 01-Oct-2003 CY28 Cleaning
43 
44 ! ------------------------------------------------------------------
45 
46 USE parkind1 ,ONLY : jpim ,jprb
47 USE yomhook ,ONLY : lhook, dr_hook
48 
49 USE yomcst , ONLY : rg
50 USE yomsw15 , ONLY : apad15 ,bpad15 ,rray15 ,rsun15 ,&
53 
54 ! ----------------------------------------------------------------
55 
56 !* 1. SET VALUES.
57 ! -----------
58 
59 IMPLICIT NONE
60 REAL(KIND=JPRB) :: ZPDH2O=0.8_jprb
61 REAL(KIND=JPRB) :: ZPDUMG=0.75_jprb
62 REAL(KIND=JPRB) :: ZPRH2O=30000._jprb
63 REAL(KIND=JPRB) :: ZPRUMG=30000._jprb
64 
65 !$OMP THREADPRIVATE(zpdh2o,zpdumg,zprh2o,zprumg)
66 
67 REAL(KIND=JPRB) :: ZH2O, ZUMG
68 REAL(KIND=JPRB) :: ZHOOK_HANDLE
69 
70 IF (lhook) CALL dr_hook('SUSW15',0,zhook_handle)
71 rpdh115=zpdh2o+1.0_jprb
72 rpdu115=zpdumg+1.0_jprb
73 zh2o=1.0_jprb/( 10._jprb* rg * rpdh115 )
74 zumg=1.0_jprb/( 10._jprb* rg * rpdu115 )
75 rpnu15 = zumg/(zprumg**zpdumg)
76 rpnh15 = zh2o/(zprh2o**zpdh2o)
77 
78 rswcp15=0.002_jprb*rswce15
79 
80 rtdh2o15 = 0.40_jprb
81 rtdumg15 = 0.375_jprb
82 rth2o15 = 240._jprb
83 rtumg15 = 240._jprb
84 rswce15 = 0._jprb
85 rswcp15 = 0._jprb
86 
87 rsun15(1) = 0.441676_jprb
88 d15(1,:) = (/ 0.00_jprb, 0.00_jprb, 0.00_jprb /)
89 !* DERIVED FROM HITRAN APRIL 1991
90 ! H2O: Pref=300 hPa, Tref=240K, Pdep=0.8
91 ! O3 : unchanged
92 
93 apad15(1,1:3,1:7) = reshape((/&
94  & 0.912418292e+05_jprb, 0.000000000e-00_jprb, 0.925887084e-04_jprb,&
95  & 0.723613782e+05_jprb, 0.000000000e-00_jprb, 0.129353723e-01_jprb,&
96  & 0.596037057e+04_jprb, 0.000000000e-00_jprb, 0.800821928e+00_jprb,&
97  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.242715973e+02_jprb,&
98  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.878331486e+02_jprb,&
99  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.191559725e+02_jprb,&
100  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.000000000e+00_jprb /)&
101  & ,(/3,7/))
102 
103 bpad15(1,1:3,1:7) = reshape((/&
104  & 0.912418292e+05_jprb, 0.000000000e-00_jprb, 0.925887084e-04_jprb,&
105  & 0.724555318e+05_jprb, 0.000000000e-00_jprb, 0.131812683e-01_jprb,&
106  & 0.602593328e+04_jprb, 0.000000000e-00_jprb, 0.812706117e+00_jprb,&
107  & 0.100000000e+01_jprb, 0.000000000e-00_jprb, 0.249863591e+02_jprb,&
108  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.931071925e+02_jprb,&
109  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.252233437e+02_jprb,&
110  & 0.000000000e-00_jprb, 0.000000000e-00_jprb, 0.100000000e+01_jprb /)&
111  & ,(/3,7/))
112 
113 rray15(1,1:6) = (/&
114  & .428937e-01_jprb, .890743e+00_jprb,-.288555e+01_jprb,&
115  & .522744e+01_jprb,-.469173e+01_jprb, .161645e+01_jprb/)
116 
117 rsun15(2) = 0.558324_jprb
118 
119 d15(2,1:3) = (/ 0.000000000_jprb, 0.000000000_jprb, 0.800000000_jprb /)
120 
121 !* INTERVAL 2: 0.68 - 4.00 MICRONS
122 !* DERIVED FROM HITRAN APRIL 1991
123 ! H2O: Pref=300 hPa, Tref=240K, Pdep=0.80
124 ! UMG: Pref=300 hPa, Tref=240K, Pdep=0.75 (CO2+O2+CH4+N2O+CO)
125 ! O3 : unchanged
126 
127 apad15(2,1:3,1:7) = reshape((/&
128  & 0.376655383e-08_jprb, 0.739646016e-08_jprb, 0.410177786e+03_jprb,&
129  & 0.978576773e-04_jprb, 0.131849595e-03_jprb, 0.672595424e+02_jprb,&
130  & 0.387714006e+00_jprb, 0.437772681e+00_jprb, 0.000000000e-00_jprb,&
131  & 0.118461660e+03_jprb, 0.151345118e+03_jprb, 0.000000000e-00_jprb,&
132  & 0.119079797e+04_jprb, 0.233628890e+04_jprb, 0.000000000e-00_jprb,&
133  & 0.293353397e+03_jprb, 0.797219934e+03_jprb, 0.000000000e-00_jprb,&
134  & 0.000000000e+00_jprb, 0.000000000e+00_jprb, 0.000000000e+00_jprb /)&
135  & ,(/3,7/))
136 
137 bpad15(2,1:3,1:7) = reshape((/&
138  & 0.376655383e-08_jprb, 0.739646016e-08_jprb, 0.410177786e+03_jprb,&
139  & 0.979023421e-04_jprb, 0.131861712e-03_jprb, 0.731185438e+02_jprb,&
140  & 0.388611139e+00_jprb, 0.437949001e+00_jprb, 0.100000000e+01_jprb,&
141  & 0.120291383e+03_jprb, 0.151692730e+03_jprb, 0.000000000e+00_jprb,&
142  & 0.130531005e+04_jprb, 0.237071130e+04_jprb, 0.000000000e+00_jprb,&
143  & 0.415049409e+03_jprb, 0.867914360e+03_jprb, 0.000000000e+00_jprb,&
144  & 0.100000000e+01_jprb, 0.100000000e+01_jprb, 0.000000000e+00_jprb /)&
145  & ,(/3,7/))
146 
147 rray15(2,1:6) = (/&
148  & .697200e-02_jprb, .173297e-01_jprb,-.850903e-01_jprb,&
149  & .248261e+00_jprb,-.302031e+00_jprb, .129662e+00_jprb/)
150 IF (lhook) CALL dr_hook('SUSW15',1,zhook_handle)
151 END SUBROUTINE susw15
real(kind=jprb) rpdu115
Definition: yomsw15.F90:19
real(kind=jprb) rth2o15
Definition: yomsw15.F90:26
real(kind=jprb), dimension(2) rsun15
Definition: yomsw15.F90:17
real(kind=jprb), dimension(2, 6) rray15
Definition: yomsw15.F90:16
real(kind=jprb) rtumg15
Definition: yomsw15.F90:27
real(kind=jprb) rg
Definition: yomcst.F90:29
real(kind=jprb) rpnu15
Definition: yomsw15.F90:21
real(kind=jprb) rswce15
Definition: yomsw15.F90:22
real(kind=jprb), dimension(2, 3, 7) bpad15
Definition: yomsw15.F90:15
integer, parameter jprb
Definition: parkind1.F90:31
real(kind=jprb), dimension(2, 3) d15
Definition: yomsw15.F90:28
subroutine susw15
Definition: susw15.F90:3
real(kind=jprb) rtdh2o15
Definition: yomsw15.F90:24
real(kind=jprb), dimension(2, 3, 7) apad15
Definition: yomsw15.F90:14
logical lhook
Definition: yomhook.F90:12
real(kind=jprb) rpnh15
Definition: yomsw15.F90:20
real(kind=jprb) rpdh115
Definition: yomsw15.F90:18
real(kind=jprb) rtdumg15
Definition: yomsw15.F90:25
subroutine dr_hook(CDNAME, KSWITCH, PKEY)
Definition: yomhook.F90:17
integer, parameter jpim
Definition: parkind1.F90:13
Definition: yomcst.F90:1
real(kind=jprb) rswcp15
Definition: yomsw15.F90:23