1 | SUBROUTINE SUECOZO (PYTIME) |
---|
2 | |
---|
3 | !**** *SUECOZO* - FOR THE YEARLY CYCLE OF THE OZONE DISTIBUTION. |
---|
4 | |
---|
5 | ! J.F.GELEYN E.C.M.W.F. 03/06/82. |
---|
6 | |
---|
7 | ! J.-J. MORCRETTE 93/03/22 ADAPTATION TO I.F.S. |
---|
8 | |
---|
9 | ! PURPOSE. |
---|
10 | ! -------- |
---|
11 | |
---|
12 | ! THIS ROUTINE COMPUTES INSTANTANEOUS VALUES OF A T5 SPETRAL |
---|
13 | ! DISTRIBUTION FOR TWO OZONE PARAMETERS (TOTAL QUANTITY AND PRESSURE |
---|
14 | ! AT THE MAXIMUM OF CONCENTRATION,BOTH IN *PASCAL) FROM THE TIME |
---|
15 | ! OF THE YEAR (SEE *UPDTIER*). |
---|
16 | |
---|
17 | !** INTERFACE. |
---|
18 | ! ---------- |
---|
19 | |
---|
20 | ! *OZONE* IS CALLED FROM *PHYSC* AT THE FIRST LATITUDE ROW AT |
---|
21 | ! THE TIME OF A FULL RADIATION COMPUTATION. |
---|
22 | ! THERE ARE FIVE DUMMY ARGUMENTS: *PYTIME* IS THE TIME OF THE |
---|
23 | ! YEAR (IN RADIANS). |
---|
24 | ! *POZQC*, *POZQS*, *POZHC* AND |
---|
25 | ! *POZHS* ARE ARRAYS FOR THE T5 DISTRIBUTIONS (*Q FOR QUANTITY, *H |
---|
26 | ! FOR HEIGHT, *C FOR COSINE AND *S FOR SINE). |
---|
27 | |
---|
28 | ! METHOD. |
---|
29 | ! ------- |
---|
30 | |
---|
31 | ! STAIGHTFORWARD, A SECOND ORDER *FOURIER DEVELOPMENT FOR THE |
---|
32 | ! TIME OF THE YEAR. |
---|
33 | |
---|
34 | ! EXTERNALS. |
---|
35 | ! ---------- |
---|
36 | |
---|
37 | ! NONE. |
---|
38 | |
---|
39 | ! REFERENCE. |
---|
40 | ! ---------- |
---|
41 | |
---|
42 | ! NONE. |
---|
43 | |
---|
44 | ! ------------------------------------------------------------------ |
---|
45 | |
---|
46 | #include "tsmbkind.h" |
---|
47 | |
---|
48 | USE YOEOZOC , ONLY : COZQC ,COZQS ,COZHC ,COZHS |
---|
49 | |
---|
50 | |
---|
51 | IMPLICIT NONE |
---|
52 | |
---|
53 | |
---|
54 | ! DUMMY REAL SCALARS |
---|
55 | REAL_B :: PYTIME |
---|
56 | |
---|
57 | |
---|
58 | ! ------------------------------------------------------------------ |
---|
59 | |
---|
60 | !* DATA STATEMENTS. |
---|
61 | ! ---- ----------- |
---|
62 | |
---|
63 | ! *ZOZ Q/H C/S N* (N=0,4) CORRESPONDS TO THE *POZ Q/H C/S* |
---|
64 | ! (SEE ABOVE) AND TO THE FIVE TERMS OF THE *FOURIER DEVELOPMENT. |
---|
65 | |
---|
66 | REAL_B ,DIMENSION(21) :: ZOZQC0=(/& |
---|
67 | &+.6012E-01_JPRB,+.1887E-02_JPRB,+.7410E-02_JPRB,+.9950E-03_JPRB,-.1426E-02_JPRB,-.2072E-03_JPRB,& |
---|
68 | &-.4954E-03_JPRB,+.7955E-05_JPRB,-.3701E-03_JPRB,+.4116E-04_JPRB,-.4163E-04_JPRB,& |
---|
69 | &-.2933E-03_JPRB,+.2154E-04_JPRB,-.2849E-03_JPRB,-.1604E-03_JPRB,& |
---|
70 | &-.1054E-03_JPRB,+.4974E-03_JPRB,+.1047E-03_JPRB,& |
---|
71 | &+.8323E-04_JPRB,+.2874E-03_JPRB,& |
---|
72 | &+.1333E-03_JPRB/) |
---|
73 | REAL_B ,DIMENSION(15) :: ZOZQS0=(/& |
---|
74 | &+.4210E-03_JPRB,-.9591E-03_JPRB,+.2811E-03_JPRB,-.2257E-03_JPRB,-.1713E-03_JPRB,& |
---|
75 | &-.3538E-03_JPRB,+.1095E-03_JPRB,-.4390E-03_JPRB,-.5605E-05_JPRB,& |
---|
76 | &+.1478E-03_JPRB,+.2849E-03_JPRB,+.3430E-03_JPRB,& |
---|
77 | &+.8248E-04_JPRB,+.1442E-03_JPRB,& |
---|
78 | &-.1375E-04_JPRB/) |
---|
79 | REAL_B ,DIMENSION(21) :: ZOZHC0=(/& |
---|
80 | &+.3166E+04_JPRB,+.8663E+02_JPRB,+.9401E+03_JPRB,+.1999E+02_JPRB,-.3530E+03_JPRB,-.3311E+02_JPRB,& |
---|
81 | &-.4903E+02_JPRB,-.4015E+00_JPRB,-.1333E+02_JPRB,+.5675E+01_JPRB,+.7221E+01_JPRB,& |
---|
82 | &-.3001E+02_JPRB,+.7570E+01_JPRB,-.1142E+02_JPRB,-.1365E+02_JPRB,& |
---|
83 | &-.1502E+02_JPRB,+.4911E+02_JPRB,+.1425E+02_JPRB,& |
---|
84 | &+.8983E+01_JPRB,+.3064E+02_JPRB,& |
---|
85 | &+.1693E+02_JPRB/) |
---|
86 | REAL_B ,DIMENSION(15) :: ZOZHS0=(/& |
---|
87 | &+.4231E+02_JPRB,-.7391E+02_JPRB,+.1273E+02_JPRB,+.2086E+02_JPRB,-.1597E+02_JPRB,& |
---|
88 | &-.3591E+02_JPRB,+.1059E+02_JPRB,-.2779E+02_JPRB,-.6923E+01_JPRB,& |
---|
89 | &+.1397E+02_JPRB,+.2387E+02_JPRB,+.2883E+02_JPRB,& |
---|
90 | &+.8626E+01_JPRB,+.1607E+02_JPRB,& |
---|
91 | &-.2676E+01_JPRB/) |
---|
92 | REAL_B ,DIMENSION(21) :: ZOZQC1=(/& |
---|
93 | &+.7090E-04_JPRB,+.4930E-05_JPRB,+.6829E-03_JPRB,+.1897E-03_JPRB,+.7226E-04_JPRB,-.2807E-03_JPRB,& |
---|
94 | &+.4970E-04_JPRB,-.1753E-03_JPRB,-.7843E-04_JPRB,-.1649E-03_JPRB,-.1037E-03_JPRB,& |
---|
95 | &-.4830E-04_JPRB,-.6304E-04_JPRB,-.1100E-03_JPRB,-.7952E-04_JPRB,& |
---|
96 | &+.1326E-04_JPRB,+.2599E-04_JPRB,+.9926E-05_JPRB,& |
---|
97 | &-.9247E-05_JPRB,-.3521E-05_JPRB,& |
---|
98 | &-.1780E-04_JPRB/) |
---|
99 | REAL_B ,DIMENSION(15) :: ZOZQS1=(/& |
---|
100 | &+.6333E-04_JPRB,+.1145E-03_JPRB,+.1192E-03_JPRB,+.4934E-04_JPRB,+.2699E-04_JPRB,& |
---|
101 | &+.3684E-04_JPRB,-.2395E-05_JPRB,+.2045E-04_JPRB,-.8684E-04_JPRB,& |
---|
102 | &+.5301E-04_JPRB,-.4176E-05_JPRB,+.4103E-04_JPRB,& |
---|
103 | &+.2783E-04_JPRB,+.1754E-04_JPRB,& |
---|
104 | &+.1116E-04_JPRB/) |
---|
105 | REAL_B ,DIMENSION(21) :: ZOZHC1=(/& |
---|
106 | &-.3450E+02_JPRB,+.2148E+03_JPRB,+.3376E+02_JPRB,+.6535E+02_JPRB,-.1564E+02_JPRB,-.4273E+02_JPRB,& |
---|
107 | &+.9553E+01_JPRB,-.4647E+01_JPRB,-.6129E+01_JPRB,-.6727E+01_JPRB,-.6761E+01_JPRB,& |
---|
108 | &-.2467E+01_JPRB,-.2181E+01_JPRB,-.5361E+01_JPRB,-.2395E+01_JPRB,& |
---|
109 | &+.5952E+00_JPRB,+.2106E+01_JPRB,-.1367E+01_JPRB,& |
---|
110 | &-.2349E+01_JPRB,+.3532E+00_JPRB,& |
---|
111 | &-.3169E+01_JPRB/) |
---|
112 | REAL_B ,DIMENSION(15) :: ZOZHS1=(/& |
---|
113 | &+.3977E+01_JPRB,+.5032E+01_JPRB,+.6226E+01_JPRB,-.3625E+00_JPRB,-.1373E+01_JPRB,& |
---|
114 | &+.4600E+01_JPRB,+.4312E+01_JPRB,+.2882E+01_JPRB,-.6351E+01_JPRB,& |
---|
115 | &+.5731E+01_JPRB,-.2574E+01_JPRB,+.3235E+00_JPRB,& |
---|
116 | &+.2806E+01_JPRB,+.8133E+00_JPRB,& |
---|
117 | &+.2032E+01_JPRB/) |
---|
118 | REAL_B ,DIMENSION(21) :: ZOZQC2=(/& |
---|
119 | &+.8571E-03_JPRB,+.3086E-02_JPRB,+.9287E-03_JPRB,+.2787E-03_JPRB,+.1826E-03_JPRB,-.1006E-03_JPRB,& |
---|
120 | &+.1092E-03_JPRB,-.1266E-03_JPRB,+.5372E-04_JPRB,-.1188E-03_JPRB,-.3285E-04_JPRB,& |
---|
121 | &-.1783E-04_JPRB,-.3018E-05_JPRB,-.8709E-04_JPRB,-.8707E-04_JPRB,& |
---|
122 | &+.8633E-04_JPRB,+.3530E-04_JPRB,+.4863E-04_JPRB,& |
---|
123 | &+.3917E-05_JPRB,-.3252E-04_JPRB,& |
---|
124 | &-.1936E-06_JPRB/) |
---|
125 | REAL_B ,DIMENSION(15) :: ZOZQS2=(/& |
---|
126 | &-.8822E-04_JPRB,+.1341E-03_JPRB,+.3095E-04_JPRB,+.8230E-04_JPRB,+.2735E-04_JPRB,& |
---|
127 | &+.1714E-04_JPRB,-.9406E-04_JPRB,+.1912E-04_JPRB,-.5402E-04_JPRB,& |
---|
128 | &+.3571E-04_JPRB,+.3897E-04_JPRB,+.4487E-04_JPRB,& |
---|
129 | &+.3079E-04_JPRB,+.3196E-04_JPRB,& |
---|
130 | &-.2391E-05_JPRB/) |
---|
131 | REAL_B ,DIMENSION(21) :: ZOZHC2=(/& |
---|
132 | &+.5216E+02_JPRB,+.1613E+03_JPRB,+.3284E+02_JPRB,-.7670E+02_JPRB,-.9548E+01_JPRB,+.1608E+02_JPRB,& |
---|
133 | &+.1023E+02_JPRB,-.1090E+02_JPRB,+.2748E+01_JPRB,-.3846E+01_JPRB,-.4135E+01_JPRB,& |
---|
134 | &+.1255E+01_JPRB,-.3301E-01_JPRB,-.5273E+01_JPRB,-.7247E+01_JPRB,& |
---|
135 | &+.1387E+02_JPRB,+.4184E+01_JPRB,+.6495E+01_JPRB,& |
---|
136 | &+.2944E+01_JPRB,-.1947E+01_JPRB,& |
---|
137 | &+.1132E+01_JPRB/) |
---|
138 | REAL_B ,DIMENSION(15) :: ZOZHS2=(/& |
---|
139 | &-.1968E+02_JPRB,+.1192E+02_JPRB,-.1194E+01_JPRB,+.1084E+01_JPRB,+.2946E+01_JPRB,& |
---|
140 | &+.2630E+01_JPRB,-.1256E+02_JPRB,+.1395E+01_JPRB,-.2222E+01_JPRB,& |
---|
141 | &+.4864E+01_JPRB,+.6450E+01_JPRB,+.5568E+01_JPRB,& |
---|
142 | &+.5292E+01_JPRB,+.4876E+01_JPRB,& |
---|
143 | &-.7579E+00_JPRB/) |
---|
144 | REAL_B ,DIMENSION(21) :: ZOZQC3=(/& |
---|
145 | &-.2759E-03_JPRB,-.2781E-03_JPRB,-.1087E-03_JPRB,-.1633E-03_JPRB,-.3627E-04_JPRB,-.4242E-04_JPRB,& |
---|
146 | &+.6045E-05_JPRB,-.1703E-04_JPRB,+.4562E-04_JPRB,-.1009E-04_JPRB,+.2663E-04_JPRB,& |
---|
147 | &-.1786E-04_JPRB,+.1550E-04_JPRB,-.9135E-06_JPRB,+.2372E-04_JPRB,& |
---|
148 | &+.1100E-05_JPRB,+.2299E-04_JPRB,+.4659E-05_JPRB,& |
---|
149 | &+.2423E-05_JPRB,+.7321E-05_JPRB,& |
---|
150 | &+.8852E-05_JPRB/) |
---|
151 | REAL_B ,DIMENSION(15) :: ZOZQS3=(/& |
---|
152 | &-.3678E-04_JPRB,-.2219E-04_JPRB,-.3911E-04_JPRB,-.4398E-04_JPRB,-.1142E-04_JPRB,& |
---|
153 | &-.9121E-05_JPRB,-.2011E-04_JPRB,+.4711E-06_JPRB,-.3775E-05_JPRB,& |
---|
154 | &+.3866E-05_JPRB,+.2400E-04_JPRB,+.2043E-04_JPRB,& |
---|
155 | &-.1824E-05_JPRB,-.5550E-05_JPRB,& |
---|
156 | &+.2506E-05_JPRB/) |
---|
157 | REAL_B ,DIMENSION(21) :: ZOZHC3=(/& |
---|
158 | &-.1534E+03_JPRB,-.2095E+02_JPRB,-.1006E+03_JPRB,-.7385E+01_JPRB,+.5203E+01_JPRB,+.9434E+00_JPRB,& |
---|
159 | &-.3814E+00_JPRB,-.3175E+01_JPRB,+.3366E+01_JPRB,+.3378E+00_JPRB,+.2740E+00_JPRB,& |
---|
160 | &-.2669E+01_JPRB,+.8452E+00_JPRB,+.3498E+00_JPRB,+.2192E+01_JPRB,& |
---|
161 | &-.4024E+00_JPRB,+.1544E+01_JPRB,-.4588E+00_JPRB,& |
---|
162 | &+.6998E+00_JPRB,+.6263E+00_JPRB,& |
---|
163 | &+.1228E+01_JPRB/) |
---|
164 | REAL_B ,DIMENSION(15) :: ZOZHS3=(/& |
---|
165 | &-.3588E+01_JPRB,+.2076E+00_JPRB,-.2088E+01_JPRB,-.4159E+01_JPRB,+.2244E+00_JPRB,& |
---|
166 | &-.7751E+00_JPRB,-.2749E+01_JPRB,+.7234E+00_JPRB,+.4390E+00_JPRB,& |
---|
167 | &-.1646E+00_JPRB,+.1700E+01_JPRB,+.1046E+01_JPRB,& |
---|
168 | &-.7856E+00_JPRB,-.1644E+01_JPRB,& |
---|
169 | &+.2648E+00_JPRB/) |
---|
170 | REAL_B ,DIMENSION(21) :: ZOZQC4=(/& |
---|
171 | &-.1460E-03_JPRB,+.3422E-03_JPRB,-.3529E-04_JPRB,+.1791E-03_JPRB,-.1917E-03_JPRB,-.2558E-04_JPRB,& |
---|
172 | &+.6547E-04_JPRB,+.6401E-04_JPRB,+.4823E-04_JPRB,+.7084E-05_JPRB,+.2895E-04_JPRB,& |
---|
173 | &-.1561E-04_JPRB,+.8179E-06_JPRB,+.1028E-04_JPRB,-.7667E-05_JPRB,& |
---|
174 | &-.4347E-05_JPRB,+.7293E-05_JPRB,-.5735E-05_JPRB,& |
---|
175 | &+.7838E-05_JPRB,-.2933E-05_JPRB,& |
---|
176 | &+.3686E-05_JPRB/) |
---|
177 | REAL_B ,DIMENSION(15) :: ZOZQS4=(/& |
---|
178 | &-.4560E-05_JPRB,-.5292E-04_JPRB,-.1252E-04_JPRB,+.1850E-04_JPRB,-.2273E-04_JPRB,& |
---|
179 | &+.6552E-05_JPRB,+.1422E-04_JPRB,-.6545E-05_JPRB,+.7998E-06_JPRB,& |
---|
180 | &+.2845E-04_JPRB,+.2497E-04_JPRB,+.2844E-04_JPRB,& |
---|
181 | &+.3855E-06_JPRB,-.1487E-04_JPRB,& |
---|
182 | &+.1954E-05_JPRB/) |
---|
183 | REAL_B ,DIMENSION(21) :: ZOZHC4=(/& |
---|
184 | &+.9260E+01_JPRB,-.9055E+01_JPRB,+.5460E+01_JPRB,-.7603E+01_JPRB,-.3329E+02_JPRB,-.1048E+02_JPRB,& |
---|
185 | &+.9328E+01_JPRB,+.4597E+01_JPRB,+.3827E+01_JPRB,-.3201E+01_JPRB,+.1708E+01_JPRB,& |
---|
186 | &-.1548E+01_JPRB,-.5323E+00_JPRB,+.3039E+01_JPRB,+.5740E+00_JPRB,& |
---|
187 | &+.1353E+00_JPRB,-.2354E+01_JPRB,+.2818E+00_JPRB,& |
---|
188 | &+.1113E+01_JPRB,-.1891E+01_JPRB,& |
---|
189 | &-.3074E+00_JPRB/) |
---|
190 | REAL_B ,DIMENSION(15) :: ZOZHS4=(/& |
---|
191 | &-.2446E+01_JPRB,+.4199E+01_JPRB,-.2571E+01_JPRB,+.8194E+01_JPRB,+.4206E+00_JPRB,& |
---|
192 | &+.3856E+01_JPRB,+.1159E+01_JPRB,+.2547E+01_JPRB,-.1314E+01_JPRB,& |
---|
193 | &+.2331E+01_JPRB,+.1144E+01_JPRB,-.4408E+00_JPRB,& |
---|
194 | &-.6797E+00_JPRB,-.2598E+01_JPRB,& |
---|
195 | &+.8953E+00_JPRB/) |
---|
196 | |
---|
197 | ! LOCAL INTEGER SCALARS |
---|
198 | INTEGER_M :: JMN |
---|
199 | |
---|
200 | ! LOCAL REAL SCALARS |
---|
201 | REAL_B :: ZC1YT, ZC2YT, ZS1YT, ZS2YT, ZYTIME |
---|
202 | |
---|
203 | |
---|
204 | ! ------------------------------------------------------------------ |
---|
205 | |
---|
206 | !* 1. PRELIMINARY SETTING. |
---|
207 | ! ----------- -------- |
---|
208 | |
---|
209 | |
---|
210 | ZYTIME=PYTIME |
---|
211 | |
---|
212 | ! ------------------------------------------------------------------ |
---|
213 | |
---|
214 | !* 2. COMPUTATIONS. |
---|
215 | ! ------------- |
---|
216 | |
---|
217 | |
---|
218 | ZC1YT=COS(ZYTIME) |
---|
219 | ZS1YT=SIN(ZYTIME) |
---|
220 | ZC2YT=ZC1YT**2-ZS1YT**2 |
---|
221 | ZS2YT=_TWO_*ZS1YT*ZC1YT |
---|
222 | DO JMN=1,21 |
---|
223 | COZQC(JMN)=ZOZQC0(JMN)+_TWO_*(ZOZQC1(JMN)*ZC1YT+ZOZQC2(JMN)*ZS1YT & |
---|
224 | &+ZOZQC3(JMN)*ZC2YT+ZOZQC4(JMN)*ZS2YT) |
---|
225 | COZHC(JMN)=ZOZHC0(JMN)+_TWO_*(ZOZHC1(JMN)*ZC1YT+ZOZHC2(JMN)*ZS1YT & |
---|
226 | &+ZOZHC3(JMN)*ZC2YT+ZOZHC4(JMN)*ZS2YT) |
---|
227 | ENDDO |
---|
228 | DO JMN=1,15 |
---|
229 | COZQS(JMN)=ZOZQS0(JMN)+_TWO_*(ZOZQS1(JMN)*ZC1YT+ZOZQS2(JMN)*ZS1YT & |
---|
230 | &+ZOZQS3(JMN)*ZC2YT+ZOZQS4(JMN)*ZS2YT) |
---|
231 | COZHS(JMN)=ZOZHS0(JMN)+_TWO_*(ZOZHS1(JMN)*ZC1YT+ZOZHS2(JMN)*ZS1YT & |
---|
232 | &+ZOZHS3(JMN)*ZC2YT+ZOZHS4(JMN)*ZS2YT) |
---|
233 | ENDDO |
---|
234 | ! ------------------------------------------------------------------ |
---|
235 | |
---|
236 | |
---|
237 | |
---|
238 | RETURN |
---|
239 | END SUBROUTINE SUECOZO |
---|