Page 1 Source Listing O3INT 2025-03-12 18:22 /tmp/ifortuoJCQU.i 1 # 1 "O3INT.F" 2 C&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 3 SUBROUTINE O3INT(PHALF) 4 # 1 "./sp.h" 1 5 # 4 6 7 # 4 "O3INT.F" 2 8 CFPP$ NOCONCUR R 9 C$$$ SUBPROGRAM DOCUMENTATION BLOCK 10 C . . . . 11 C SUBPROGRAM: O3INT COMPUTE ZONAL MEAN OZONE FOR ETA LYRS 12 C PRGMMR: KENNETH CAMPANA ORG: W/NMC23 DATE: 89-07-07 13 C MICHAEL BALDWIN ORG: W/NMC22 DATE: 92-06-08 14 C 15 C ABSTRACT: THIS CODE WRITTEN AT GFDL... 16 C CALCULATES SEASONAL ZONAL MEAN OZONE,EVERY 5 DEG OF LATITUDE, 17 C FOR CURRENT MODEL VERTICAL COORDINATE. OUTPUT DATA IN G/G * 1.E4 18 C CODE IS CALLED ONLY ONCE. 19 C 20 C PROGRAM HISTORY LOG: 21 C 84-01-01 FELS AND SCHWARZKOPF,GFDL. 22 C 89-07-07 K. CAMPANA - ADAPTED STAND-ALONE CODE FOR IN-LINE USE. 23 C 92-06-08 M. BALDWIN - UPDATE TO RUN IN ETA MODEL 24 C 25 C USAGE: CALL O3INT(O3,SIGL) OLD 26 C INPUT ARGUMENT LIST: 27 C PHALF - MID LAYER PRESSURE (K=LM+1 IS MODEL SURFACE) 28 C OUTPUT ARGUMENT LIST: 29 C DDUO3N - ZONAL MEAN OZONE DATA IN ALL MODEL LAYERS (G/G*1.E4) 30 C DDO3N2 DIMENSIONED(L,N),WHERE L(=37) IS LATITUDE BETWEEN 31 C DDO3N3 N AND S POLES,N=NUM OF VERTICAL LYRS(K=1 IS TOP LYR) 32 C DDO3N4 AND SEASON-WIN,SPR,SUM,FALL. 33 C IN COMMON 34 C 35 C OUTPUT FILES: 36 C OUTPUT - PRINT FILE. 37 C 38 C ATTRIBUTES: 39 C LANGUAGE: FORTRAN 200. 40 C 41 C$$$ 42 C.... PROGRAM O3INT FROM DAN SCHWARZKOPF-GETS ZONAL MEAN O3 43 C.. OUTPUT O3 IS WINTER,SPRING,SUMMER,FALL (NORTHERN HEMISPHERE) 44 C----------------------------------------------------------------------- 45 INCLUDE "parmeta" 46 C----------------------------------------------------------------------- 47 C ********************************************************* 71 PARAMETER (N=LM,NP=N+1,NP2=N+2,NM1=N-1) 72 C ********************************************************* 73 C----------------------------------------------------------------------- 74 C*** 75 C*** SEASONAL CLIMATOLOGIES OF O3 (OBTAINED FROM A PREVIOUSLY RUN 76 C*** CODE WHICH INTERPOLATES O3 TO USER VERTICAL COORDINATE). 77 C*** DEFINED AS 5 DEG LAT MEANS N.P.->S.P. 78 C*** 79 C O M M O N /SAVMEM/ 80 C ...WINTER.... ...SPRING.... ...SUMMER.... ....FALL..... Page 2 Source Listing O3INT 2025-03-12 18:22 O3INT.F 81 1 DDUO3N(37,LM), DDO3N2(37,LM), DDO3N3(37,LM), DDO3N4(37,LM) 82 C ..... K.CAMPANA OCTOBER 1988 83 CCCC DIMENSION T41(NP2,2),O3O3(37,N,4) 84 C DIMENSION SIGL(N) 85 C ********************************************************* 86 DIMENSION QI(82) 87 DIMENSION DDUO3(19,N),RO31(10,41),RO32(10,41),DUO3N(19,41) 88 DIMENSION TEMPN(19) 89 DIMENSION O3HI(10,25),O3LO1(10,16),O3LO2(10,16),O3LO3(10,16), 90 1 O3LO4(10,16) 91 DIMENSION O3HI1(10,16),O3HI2(10,9),PH1(45),PH2(37),P1(48),P2(33) 92 DIMENSION O35DEG(37,N) 93 DIMENSION RSTD(81),RO3(10,41),RO3M(10,40),RBAR(N),RDATA(81), 94 1 PHALF(NP),P(81),PH(82) 95 EQUIVALENCE (O3HI1(1,1),O3HI(1,1)),(O3HI2(1,1),O3HI(1,17)) 96 EQUIVALENCE (PH1(1),PH(1)),(PH2(1),PH(46)) 97 EQUIVALENCE (P1(1),P(1)),(P2(1),P(49)) 98 DATA PH1/ 0., 99 1 0.1027246E-04, 0.1239831E-04, 0.1491845E-04, 0.1788053E-04, 100 1 0.2135032E-04, 0.2540162E-04, 0.3011718E-04, 0.3558949E-04, 101 1 0.4192172E-04, 0.4922875E-04, 0.5763817E-04, 0.6729146E-04, 102 1 0.7834518E-04, 0.9097232E-04, 0.1053635E-03, 0.1217288E-03, 103 1 0.1402989E-03, 0.1613270E-03, 0.1850904E-03, 0.2119495E-03, 104 1 0.2423836E-03, 0.2768980E-03, 0.3160017E-03, 0.3602623E-03, 105 1 0.4103126E-03, 0.4668569E-03, 0.5306792E-03, 0.6026516E-03, 106 1 0.6839018E-03, 0.7759249E-03, 0.8803303E-03, 0.9987843E-03, 107 1 0.1133178E-02, 0.1285955E-02, 0.1460360E-02, 0.1660001E-02, 108 1 0.1888764E-02, 0.2151165E-02, 0.2452466E-02, 0.2798806E-02, 109 1 0.3197345E-02, 0.3656456E-02, 0.4185934E-02, 0.4797257E-02/ 110 DATA PH2/ 111 1 0.5503893E-02, 0.6321654E-02, 0.7269144E-02, 0.8368272E-02, 112 1 0.9644873E-02, 0.1112946E-01, 0.1285810E-01, 0.1487354E-01, 113 1 0.1722643E-01, 0.1997696E-01, 0.2319670E-01, 0.2697093E-01, 114 1 0.3140135E-01, 0.3660952E-01, 0.4274090E-01, 0.4996992E-01, 115 1 0.5848471E-01, 0.6847525E-01, 0.8017242E-01, 0.9386772E-01, 116 1 0.1099026E 00, 0.1286765E 00, 0.1506574E 00, 0.1763932E 00, 117 1 0.2065253E 00, 0.2415209E 00, 0.2814823E 00, 0.3266369E 00, 118 1 0.3774861E 00, 0.4345638E 00, 0.4984375E 00, 0.5697097E 00, 119 1 0.6490189E 00, 0.7370409E 00, 0.8344896E 00, 0.9421190E 00, 120 1 0.1000000E 01/ 121 DATA P1/ 122 1 0.9300000E-05, 0.1129521E-04, 0.1360915E-04, 0.1635370E-04, 123 1 0.1954990E-04, 0.2331653E-04, 0.2767314E-04, 0.3277707E-04, 124 1 0.3864321E-04, 0.4547839E-04, 0.5328839E-04, 0.6234301E-04, 125 1 0.7263268E-04, 0.8450696E-04, 0.9793231E-04, 0.1133587E-03, 126 1 0.1307170E-03, 0.1505832E-03, 0.1728373E-03, 0.1982122E-03, 127 1 0.2266389E-03, 0.2592220E-03, 0.2957792E-03, 0.3376068E-03, 128 1 0.3844381E-03, 0.4379281E-03, 0.4976965E-03, 0.5658476E-03, 129 1 0.6418494E-03, 0.7287094E-03, 0.8261995E-03, 0.9380076E-03, 130 1 0.1063498E-02, 0.1207423E-02, 0.1369594E-02, 0.1557141E-02, 131 1 0.1769657E-02, 0.2015887E-02, 0.2295520E-02, 0.2620143E-02, 132 1 0.2989651E-02, 0.3419469E-02, 0.3909867E-02, 0.4481491E-02, 133 1 0.5135272E-02, 0.5898971E-02, 0.6774619E-02, 0.7799763E-02/ 134 DATA P2/ 135 1 0.8978218E-02, 0.1036103E-01, 0.1195488E-01, 0.1382957E-01, 136 1 0.1599631E-01, 0.1855114E-01, 0.2151235E-01, 0.2501293E-01, 137 1 0.2908220E-01, 0.3390544E-01, 0.3952926E-01, 0.4621349E-01, Page 3 Source Listing O3INT 2025-03-12 18:22 O3INT.F 138 1 0.5403168E-01, 0.6330472E-01, 0.7406807E-01, 0.8677983E-01, 139 1 0.1015345E 00, 0.1189603E 00, 0.1391863E 00, 0.1630739E 00, 140 1 0.1908004E 00, 0.2235461E 00, 0.2609410E 00, 0.3036404E 00, 141 1 0.3513750E 00, 0.4055375E 00, 0.4656677E 00, 0.5335132E 00, 142 1 0.6083618E 00, 0.6923932E 00, 0.7845676E 00, 0.8875882E 00, 143 1 0.1000000E 01/ 144 DATA O3HI1/ 145 * .55,.50,.45,.45,.40,.35,.35,.30,.30,.30, 146 * .55,.51,.46,.47,.42,.38,.37,.36,.35,.35, 147 * .55,.53,.48,.49,.44,.42,.41,.40,.38,.38, 148 * .60,.55,.52,.52,.50,.47,.46,.44,.42,.41, 149 * .65,.60,.55,.56,.53,.52,.50,.48,.45,.45, 150 * .75,.65,.60,.60,.55,.55,.55,.50,.48,.47, 151 * .80,.75,.75,.75,.70,.70,.65,.63,.60,.60, 152 * .90,.85,.85,.80,.80,.75,.75,.74,.72,.71, 153 * 1.10,1.05,1.00,.90,.90,.90,.85,.83,.80,.80, 154 * 1.40,1.30,1.25,1.25,1.25,1.20,1.15,1.10,1.05,1.00, 155 * 1.7,1.7,1.6,1.6,1.6,1.6,1.6,1.6,1.5,1.5, 156 * 2.1,2.0,1.9,1.9,1.9,1.8,1.8,1.8,1.7,1.7, 157 * 2.4,2.3,2.2,2.2,2.2,2.1,2.1,2.1,2.0,2.0, 158 * 2.7,2.5,2.5,2.5,2.5,2.5,2.4,2.4,2.3,2.3, 159 * 2.9,2.8,2.7,2.7,2.7,2.7,2.7,2.7,2.6,2.6, 160 * 3.1,3.1,3.0,3.0,3.0,3.0,3.0,3.0,2.9,2.8/ 161 DATA O3HI2/ 162 * 3.3,3.4,3.4,3.6,3.7,3.9,4.0,4.1,4.0,3.8, 163 * 3.6,3.8,3.9,4.2,4.7,5.3,5.6,5.7,5.5,5.2, 164 * 4.1,4.3,4.7,5.2,6.0,6.7,7.0,6.8,6.4,6.2, 165 * 5.4,5.7,6.0,6.6,7.3,8.0,8.4,7.7,7.1,6.7, 166 * 6.7,6.8,7.0,7.6,8.3,10.0,9.6,8.2,7.5,7.2, 167 * 9.2,9.3,9.4,9.6,10.3,10.6,10.0,8.5,7.7,7.3, 168 * 12.6,12.1,12.0,12.1,11.7,11.0,10.0,8.6,7.8,7.4, 169 * 14.2,13.5,13.1,12.8,11.9,10.9,9.8,8.5,7.8,7.5, 170 * 14.3,14.0,13.4,12.7,11.6,10.6,9.3,8.4,7.6,7.3/ 171 DATA O3LO1/ 172 * 14.9,14.2,13.3,12.5,11.2,10.3,9.5,8.6,7.5,7.4, 173 * 14.5,14.1,13.0,11.8,10.5,9.8,9.2,7.9,7.4,7.4, 174 * 11.8,11.5,10.9,10.5,9.9,9.6,8.9,7.5,7.2,7.2, 175 * 7.3,7.7,7.8,8.4,8.4,8.5,7.9,7.4,7.1,7.1, 176 * 4.1,4.4,5.3,6.6,6.9,7.5,7.4,7.2,7.0,6.9, 177 * 1.8,1.9,2.5,3.3,4.5,5.8,6.3,6.3,6.4,6.1, 178 * 0.4,0.5,0.8,1.2,2.7,3.6,4.6,4.7,5.0,5.2, 179 * .10,.15,.20,.50,1.4,2.1,3.0,3.2,3.5,3.9, 180 * .07,.10,.12,.30,1.0,1.4,1.8,1.9,2.3,2.5, 181 * .06,.08,.10,.15,.60,.80,1.4,1.5,1.5,1.6, 182 * .05,.05,.06,.09,.20,.40,.70,.80,.90,.90, 183 * .05,.05,.06,.08,.10,.13,.20,.25,.30,.40, 184 * .05,.05,.05,.06,.07,.07,.08,.09,.10,.13, 185 * .05,.05,.05,.05,.06,.06,.06,.06,.07,.07, 186 * .05,.05,.05,.05,.05,.05,.05,.06,.06,.06, 187 * .04,.04,.04,.04,.04,.04,.04,.05,.05,.05/ 188 DATA O3LO2/ 189 * 14.8,14.2,13.8,12.2,11.0,9.8,8.5,7.8,7.4,6.9, 190 * 13.2,13.0,12.5,11.3,10.4,9.0,7.8,7.5,7.0,6.6, 191 * 10.6,10.6,10.7,10.1,9.4,8.6,7.5,7.0,6.5,6.1, 192 * 7.0,7.3,7.5,7.5,7.5,7.3,6.7,6.4,6.0,5.8, 193 * 3.8,4.0,4.7,5.0,5.2,5.9,5.8,5.6,5.5,5.5, 194 * 1.4,1.6,2.4,3.0,3.7,4.1,4.6,4.8,5.1,5.0, Page 4 Source Listing O3INT 2025-03-12 18:22 O3INT.F 195 * .40,.50,.90,1.2,2.0,2.7,3.2,3.6,4.3,4.1, 196 * .07,.10,.20,.30,.80,1.4,2.1,2.4,2.7,3.0, 197 * .06,.07,.09,.15,.30,.70,1.2,1.4,1.6,2.0, 198 * .05,.05,.06,.12,.15,.30,.60,.70,.80,.80, 199 * .04,.05,.06,.08,.09,.15,.30,.40,.40,.40, 200 * .04,.04,.05,.055,.06,.09,.12,.13,.15,.15, 201 * .03,.03,.045,.052,.055,.06,.07,.07,.06,.07, 202 * .03,.03,.04,.051,.052,.052,.06,.06,.05,.05, 203 * .02,.02,.03,.05,.05,.05,.04,.04,.04,.04, 204 * .02,.02,.02,.04,.04,.04,.03,.03,.03,.03/ 205 DATA O3LO3/ 206 * 14.5,14.0,13.5,11.3,11.0,10.0,9.0,8.3,7.5,7.3, 207 * 13.5,13.2,12.5,11.1,10.4,9.7,8.2,7.8,7.4,6.8, 208 * 10.8,10.9,11.0,10.4,10.0,9.6,7.9,7.5,7.0,6.7, 209 * 7.3,7.5,7.8,8.5,9.0,8.5,7.7,7.4,6.9,6.5, 210 * 4.1,4.5,5.3,6.2,7.3,7.7,7.3,7.0,6.6,6.4, 211 * 1.8,2.0,2.2,3.8,4.3,5.6,6.2,6.2,6.4,6.2, 212 * .30,.50,.60,1.5,2.8,3.7,4.5,4.7,5.5,5.6, 213 * .09,.10,.15,.60,1.2,2.1,3.0,3.5,4.0,4.3, 214 * .06,.08,.10,.30,.60,1.1,1.9,2.2,2.9,3.0, 215 * .04,.05,.06,.15,.45,.60,1.1,1.3,1.6,1.8, 216 * .04,.04,.04,.08,.20,.30,.55,.60,.75,.90, 217 * .04,.04,.04,.05,.06,.10,.12,.15,.20,.25, 218 * .04,.04,.03,.04,.05,.06,.07,.07,.07,.08, 219 * .03,.03,.04,.05,.05,.05,.05,.05,.05,.05, 220 * .03,.03,.03,.04,.04,.04,.05,.05,.04,.04, 221 * .02,.02,.02,.04,.04,.04,.04,.04,.03,.03/ 222 DATA O3LO4/ 223 * 14.2,13.8,13.2,12.5,11.7,10.5,8.6,7.8,7.5,6.6, 224 * 12.5,12.4,12.2,11.7,10.8,9.8,7.8,7.2,6.5,6.1, 225 * 10.6,10.5,10.4,10.1,9.6,9.0,7.1,6.8,6.1,5.9, 226 * 7.0,7.4,7.9,7.8,7.6,7.3,6.2,6.1,5.8,5.6, 227 * 4.2,4.6,5.1,5.6,5.9,5.9,5.9,5.8,5.6,5.3, 228 * 2.1,2.3,2.6,2.9,3.5,4.3,4.8,4.9,5.1,5.1, 229 * 0.7,0.8,1.0,1.5,2.0,2.8,3.5,3.6,3.7,4.0, 230 * .15,.20,.40,.50,.60,1.4,2.1,2.2,2.3,2.5, 231 * .08,.10,.15,.25,.30,.90,1.2,1.3,1.4,1.6, 232 * .07,.08,.10,.14,.20,.50,.70,.90,.90,.80, 233 * .05,.06,.08,.12,.14,.20,.35,.40,.60,.50, 234 * .05,.05,.08,.09,.09,.09,.11,.12,.15,.18, 235 * .04,.05,.06,.07,.07,.08,.08,.08,.08,.08, 236 * .04,.04,.05,.07,.07,.07,.07,.07,.06,.05, 237 * .02,.02,.04,.05,.05,.05,.05,.05,.04,.04, 238 * .02,.02,.03,.04,.04,.04,.04,.04,.03,.03/ 239 NKK=41 240 NK=81 241 NKP=NK+1 242 DO 24 K=1,NP 243 24 PHALF(K)=PHALF(K)*1.0E 03 244 C 24 PSTD(K)=PSTD(K+1)*1.0E 03 245 DO 25 K=1,NK 246 PH(K)=PH(K)*1013250. 247 25 P(K)=P(K)*1013250. 248 PH(NKP)=PH(NKP)*1013250. 249 CKAC WRITE (6,3) PH 250 CKAC WRITE (6,3) P 251 C WRITE (6,3) (PHALF(K),K=1,NP) Page 5 Source Listing O3INT 2025-03-12 18:22 O3INT.F 252 C WRITE (6,3) (PSTD(K),K=1,NP) 253 C***LOAD ARRAYS RO31,RO32,AS IN DICKS PGM. 254 DO 1010 K=1,25 255 DO 1010 L=1,10 256 RO31(L,K)=O3HI(L,K) 257 RO32(L,K)=O3HI(L,K) 258 1010 CONTINUE 259 C 260 DO 3000 NCASE=1,4 261 ITAPE=NCASE+50 262 IPLACE=2 263 IF (NCASE.EQ.2) IPLACE=4 264 IF (NCASE.EQ.3) IPLACE=1 265 IF (NCASE.EQ.4) IPLACE=3 266 C***NCASE=1: SPRING (IN N.H.) 267 C***NCASE=2: FALL (IN N.H.) 268 C***NCASE=3: WINTER (IN N.H.) 269 C***NCASE=4: SUMMER (IN N.H.) 270 IF (NCASE.EQ.1.OR.NCASE.EQ.2) THEN 271 DO 1011 K=26,41 272 DO 1011 L=1,10 273 RO31(L,K)=O3LO1(L,K-25) 274 RO32(L,K)=O3LO2(L,K-25) 275 1011 CONTINUE 276 ENDIF 277 IF (NCASE.EQ.3.OR.NCASE.EQ.4) THEN 278 DO 1031 K=26,41 279 DO 1031 L=1,10 280 RO31(L,K)=O3LO3(L,K-25) 281 RO32(L,K)=O3LO4(L,K-25) 282 1031 CONTINUE 283 ENDIF 284 DO 30 KK=1,NKK 285 DO 31 L=1,10 286 DUO3N(L,KK)=RO31(11-L,KK) 287 31 DUO3N(L+9,KK)=RO32(L,KK) 288 DUO3N(10,KK)=.5*(RO31(1,KK)+RO32(1,KK)) 289 30 CONTINUE 290 C***FOR NCASE=2 OR NCASE=4,REVERSE LATITUDE ARRANGEMENT OF CORR. SEASON 291 IF (NCASE.EQ.2.OR.NCASE.EQ.4) THEN 292 DO 1024 KK=1,NKK 293 DO 1025 L=1,19 294 TEMPN(L)=DUO3N(20-L,KK) 295 1025 CONTINUE 296 DO 1026 L=1,19 297 DUO3N(L,KK)=TEMPN(L) 298 1026 CONTINUE 299 1024 CONTINUE 300 ENDIF 301 C***DUO3N NOW IS O3 PROFILE FOR APPROPRIATE SEASON,AT STD. PRESSURE 302 C LEVELS 303 CKAC WRITE (6,800) DUO3N 304 C***BEGIN LATITUDE (10 DEG) LOOP 305 DO 33 L=1,19 306 DO 22 KK=1,NKK 307 22 RSTD(KK)=DUO3N(L,KK) 308 NKM=NK-1 Page 6 Source Listing O3INT 2025-03-12 18:22 O3INT.F 309 NKMM=NK-3 310 C BESSELS HALF-POINT INTERPOLATION FORMULA 311 DO 60 K=4,NKMM,2 312 KI=K/2 313 60 RDATA(K)=.5*(RSTD(KI)+RSTD(KI+1))-(RSTD(KI+2)-RSTD(KI+1)-RSTD(KI)+ 314 1RSTD(KI-1))/16. 315 RDATA(2)=.5*(RSTD(2)+RSTD(1)) 316 RDATA(NKM)=.5*(RSTD(NKK)+RSTD(NKK-1)) 317 C PUT UNCHANGED DATA INTO NEW ARRAY 318 DO 61 K=1,NK,2 319 KQ=(K+1)/2 320 61 RDATA(K)=RSTD(KQ) 321 C---NOTE TO NMC: THIS WRITE IS COMMENTED OUT TO REDUCE PRINTOUT 322 C WRITE (6,798) RDATA 323 C CALCULATE LAYER-MEAN OZONE MIXING RATIO FOR EACH MODEL LEVEL 324 DO 99 KK=1,N 325 RBAR(KK)=0. 326 C LOOP TO CALCULATE SUMS TO GET LAYER OZONE MEAN 327 DO 98 K=1,NK 328 IF(PH(K+1).LT.PHALF(KK)) GO TO 98 329 IF(PH(K).GT.PHALF(KK+1)) GO TO 98 330 IF(PH(K+1).LT.PHALF(KK+1).AND.PH(K).LT.PHALF(KK)) RBAR(KK)=RBAR(KK 331 1)+RDATA(K)*(PH(K+1)-PHALF(KK)) 332 IF(PH(K+1).LT.PHALF(KK+1).AND.PH(K).GE.PHALF(KK)) RBAR(KK)=RBAR(KK 333 1)+RDATA(K)*(PH(K+1)-PH(K)) 334 IF(PH(K+1).GT.PHALF(KK+1).AND.PH(K).GT.PHALF(KK)) RBAR(KK)=RBAR(KK 335 1)+RDATA(K)*(PHALF(KK+1)-PH(K)) 336 98 CONTINUE 337 RBAR(KK)=RBAR(KK)/(PHALF(KK+1)-PHALF(KK)) 338 IF(RBAR(KK).GT..0000) GO TO 99 339 C CODE TO COVER CASE WHEN MODEL RESOLUTION IS SO FINE THAT NO VALUE 340 C OF P(K) IN THE OZONE DATA ARRAY FALLS BETWEEN PHALF(KK+1) AND 341 C PHALF(KK). PROCEDURE IS TO SIMPLY GRAB THE NEAREST VALUE FROM 342 C RDATA 343 DO 29 K=1,NK 344 IF(PH(K).LT.PHALF(KK).AND.PH(K+1).GE.PHALF(KK+1)) RBAR(KK)=RDATA(K 345 1) 346 29 CONTINUE 347 99 CONTINUE 348 C CALCULATE TOTAL OZONE 349 O3RD=0. 350 DO 89 KK=1,80 351 89 O3RD=O3RD+RDATA(KK)*(PH(KK+1)-PH(KK)) 352 O3RD=O3RD+RDATA(81)*(P(81)-PH(81)) 353 O3RD=O3RD/980. 354 O3TOT=0. 355 DO 88 KK=1,N 356 88 O3TOT=O3TOT+RBAR(KK)*(PHALF(KK+1)-PHALF(KK)) 357 O3TOT=O3TOT/980. 358 C UNITS ARE MICROGRAMS/CM**2 359 O3DU=O3TOT/2.144 360 C O3DU UNITS ARE DOBSON UNITS (10**-3 ATM-CM) 361 C--NOTE TO NMC: THIS IS COMMENTED OUT TO SAVE PRINTOUT 362 C WRITE (6,796) O3RD,O3TOT,O3DU 363 DO 23 KK=1,N 364 23 DDUO3(L,KK)=RBAR(KK)*.01 365 33 CONTINUE Page 7 Source Listing O3INT 2025-03-12 18:22 O3INT.F 366 C***END OF LATITUDE LOOP 367 C 368 C***CREATE 5 DEG OZONE QUANTITIES BY LINEAR INTERPOLATION OF 369 C 10 DEG VALUES 370 DO 1060 KK=1,N 371 DO 1061 L=1,19 372 O35DEG(2*L-1,KK)=DDUO3(L,KK) 373 1061 CONTINUE 374 DO 1062 L=1,18 375 O35DEG(2*L,KK)=0.5*(DDUO3(L,KK)+DDUO3(L+1,KK)) 376 1062 CONTINUE 377 1060 CONTINUE 378 C***OUTPUT TO UNIT (ITAPE) THE OZONE VALUES FOR LATER USE 379 CO222 *************************************************** 380 CC WRITE (66) O35DEG 381 IF (IPLACE.EQ.1) THEN 382 DO 302 JJ=1,37 383 DO 302 KEN=1,N 384 DDUO3N(JJ,KEN) = O35DEG(JJ,KEN) 385 302 CONTINUE 386 ELSE IF (IPLACE.EQ.2) THEN 387 DO 312 JJ=1,37 388 DO 312 KEN=1,N 389 DDO3N2(JJ,KEN) = O35DEG(JJ,KEN) 390 312 CONTINUE 391 ELSE IF (IPLACE.EQ.3) THEN 392 DO 322 JJ=1,37 393 DO 322 KEN=1,N 394 DDO3N3(JJ,KEN) = O35DEG(JJ,KEN) 395 322 CONTINUE 396 ELSE IF (IPLACE.EQ.4) THEN 397 DO 332 JJ=1,37 398 DO 332 KEN=1,N 399 DDO3N4(JJ,KEN) = O35DEG(JJ,KEN) 400 332 CONTINUE 401 END IF 402 CO222 *************************************************** 403 3000 CONTINUE 404 C***END OF LOOP OVER CASES 405 RETURN 406 1 FORMAT(10F4.2) 407 2 FORMAT(10X,E14.7,1X,E14.7,1X,E14.7,1X,E14.7,1X) 408 3 FORMAT(10E12.5) 409 797 FORMAT(10F7.2) 410 799 FORMAT(19F6.4) 411 800 FORMAT(19F6.2) 412 102 FORMAT(' O3 IPLACE=',I4) 413 1033 FORMAT(19F6.5) 414 101 FORMAT(5X,1H*,F6.5,1H,,F6.5,1H,,F6.5,1H,,F6.5,1H,,F6.5,1H,,F6.5, 415 *1H,,F6.5,1H,,F6.5,1H,,F6.5,1H,) 416 END Page 8 Source Listing O3INT 2025-03-12 18:22 Entry Points O3INT.F ENTRY POINTS Name o3int_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 1 Label 406 101 Label 414 1010 Label 258 254,255 1011 Label 275 271,272 102 Label 412 1024 Label 299 292 1025 Label 295 293 1026 Label 298 296 1031 Label 282 278,279 1033 Label 413 1060 Label 377 370 1061 Label 373 371 1062 Label 376 374 2 Label 407 22 Label 307 306 23 Label 364 363 24 Label 243 242 25 Label 247 245 29 Label 346 343 3 Label 408 30 Label 289 284 3000 Label 403 260 302 Label 385 382,383 31 Label 287 285 312 Label 390 387,388 322 Label 395 392,393 33 Label 365 305 332 Label 400 397,398 60 Label 313 311 61 Label 320 318 797 Label 409 799 Label 410 800 Label 411 88 Label 356 355 89 Label 351 350 98 Label 336 327,328,329 99 Label 347 324,338 DDUO3 Local 87 R(4) 4 2 855 364,372,375 DUO3N Local 87 R(4) 4 2 779 286,287,288,294,297,307 IDIM1 Param 67 I(4) 4 scalar IDIM2 Param 67 I(4) 4 scalar IGSTL Param 62 I(4) 4 scalar 67 IGSTR Param 62 I(4) 4 scalar 67 IM Param 50 I(4) 4 scalar 64,67 Page 9 Source Listing O3INT 2025-03-12 18:22 Symbol Table O3INT.F Name Object Declared Type Bytes Dimen Elements Attributes References INPES Param 59 I(4) 4 scalar 64,67 IPLACE Local 262 I(4) 4 scalar 262,263,264,265,381,386,391,396 ITAIL Param 64 I(4) 4 scalar ITAPE Local 261 I(4) 4 scalar 261 JDIM1 Param 68 I(4) 4 scalar JDIM2 Param 68 I(4) 4 scalar JGSTL Param 63 I(4) 4 scalar 68 JGSTR Param 63 I(4) 4 scalar 68 JJ Local 382 I(4) 4 scalar 382,384,387,389,392,394,397,399 JM Param 50 I(4) 4 scalar 65,68 JNPES Param 59 I(4) 4 scalar 65,68 JTAIL Param 65 I(4) 4 scalar K Local 242 I(4) 4 scalar 242,243,245,246,247,254,256,257,27 1,273,274,278,280,281,311,312,313, 318,319,320,327,328,329,330,331,33 2,333,334,335,343,344 KEN Local 383 I(4) 4 scalar 383,384,388,389,393,394,398,399 KI Local 312 I(4) 4 scalar 312,313,314 KK Local 284 I(4) 4 scalar 284,286,287,288,292,294,297,306,30 7,324,325,328,329,330,331,332,334, 335,337,338,344,350,351,355,356,36 3,364,370,372,375 KQ Local 319 I(4) 4 scalar 319,320 L Local 255 I(4) 4 scalar 255,256,257,272,273,274,279,280,28 1,285,286,287,293,294,296,297,305, 307,364,371,372,374,375 LM Param 50 I(4) 4 scalar 71,81 LSM Param 50 I(4) 4 scalar N Param 71 I(4) 4 scalar 71,87,92,93,324,355,363,370,383,38 8,393,398 NCASE Local 260 I(4) 4 scalar 260,261,263,264,265,270,277,291 NK Local 240 I(4) 4 scalar 240,241,245,308,309,318,327,343 NKK Local 239 I(4) 4 scalar 239,284,292,306,316 NKM Local 308 I(4) 4 scalar 308,316 NKMM Local 309 I(4) 4 scalar 309,311 NKP Local 241 I(4) 4 scalar 241,248 NM1 Param 71 I(4) 4 scalar NP Param 71 I(4) 4 scalar 94,242 NP2 Param 71 I(4) 4 scalar O35DEG Local 92 R(4) 4 2 1665 372,375,384,389,394,399 O3DU Local 359 R(4) 4 scalar 359 O3HI Local 89 R(4) 4 2 250 256,257 O3HI1 Local 91 R(4) 4 2 160 SAVE 144 O3HI2 Local 91 R(4) 4 2 90 SAVE 161 O3INT Subr 3 O3LO1 Local 89 R(4) 4 2 160 171,273 O3LO2 Local 89 R(4) 4 2 160 188,274 O3LO3 Local 89 R(4) 4 2 160 205,280 O3LO4 Local 90 R(4) 4 2 160 222,281 O3RD Local 349 R(4) 4 scalar 349,351,352,353 O3TOT Local 354 R(4) 4 scalar 354,356,357,359 P Local 94 R(4) 4 1 81 247,352 P1 Local 91 R(4) 4 1 48 SAVE 121 P2 Local 91 R(4) 4 1 33 SAVE 134 PH Local 94 R(4) 4 1 82 246,248,328,329,330,331,332,333,33 Page 10 Source Listing O3INT 2025-03-12 18:22 Symbol Table O3INT.F Name Object Declared Type Bytes Dimen Elements Attributes References 4,335,344,351,352 PH1 Local 91 R(4) 4 1 45 SAVE 98 PH2 Local 91 R(4) 4 1 37 SAVE 110 PHALF Dummy 3 R(4) 4 1 46 ARG,INOUT 243,328,329,330,331,332,334,335,33 7,344,356 QI Local 86 R(4) 4 1 82 RBAR Local 93 R(4) 4 1 45 325,330,332,334,337,338,344,356,36 4 RDATA Local 93 R(4) 4 1 81 313,315,316,320,331,333,335,344,35 1,352 RO3 Local 93 R(4) 4 2 410 RO31 Local 87 R(4) 4 2 410 256,273,280,286,288 RO32 Local 87 R(4) 4 2 410 257,274,281,287,288 RO3M Local 93 R(4) 4 2 400 RSTD Local 93 R(4) 4 1 81 307,313,314,315,316,320 SAVMEM Common 79 26640 TEMPN Local 88 R(4) 4 1 19 294,297 TYPE COMPONENTS/COMMON VARIABLES Name Type Bytes Offset Dimen Elements Attributes References DDO3N2 R(4) 4 6660 2 1665 COM 389 DDO3N3 R(4) 4 13320 2 1665 COM 394 DDO3N4 R(4) 4 19980 2 1665 COM 399 DDUO3N R(4) 4 0 2 1665 COM 384 Page 11 Source Listing O3INT 2025-03-12 18:22 Subprograms/Common Blocks O3INT.F SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References O3INT Subr 3 SAVMEM Common 79 26640 COMPILER OPTIONS BEING USED -align noall -align nonone -align nocommons -align nodcommons -align noqcommons -align nozcommons -align records -align nosequence -align norec1byte -align norec2byte -align norec4byte -align norec8byte -align norec16byte -align norec32byte -align norec64byte -align noarray8byte -align noarray16byte -align noarray32byte -align noarray64byte -align noarray128byte -align noarray256byte -altparam -assume accuracy_sensitive -assume nobscc -assume nobuffered_io -assume nobuffered_stdout -assume byterecl -assume nocontiguous_assumed_shape -assume nocontiguous_pointer -assume nocc_omp -assume nocstring -assume nodummy_aliases -assume nofpe_summary -assume noieee_fpe_flags -assume nominus0 -assume noold_boz -assume old_complex_align -assume old_unit_star -assume old_inquire_recl -assume old_ldout_format -assume old_ldout_zero -assume noold_logical_assign -assume noold_logical_ldio -assume old_maxminloc -assume old_xor -assume noprotect_allocates -assume protect_constants -assume noprotect_parens -assume split_common -assume source_include -assume nostd_intent_in -assume std_minus0_rounding -assume nostd_mod_proc_name -assume std_value -assume realloc_lhs -assume underscore -assume no2underscores -assume norecursion no -auto -auto_scalar no -bintext -ccdefault default -check noarg_temp_created -check noassume -check nobounds -check nocontiguous -check noformat -check nooutput_conversion -check nooverflow -check nopointers -check noshape -check nostack -check nouninitialized -check noudio_iostat -coarray-num-procs 0 no -coarray-config-file -convert big_endian -cross_reference -D __INTEL_COMPILER=1910 -D __INTEL_COMPILER_UPDATE=3 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ -D __x86_64 -D __x86_64__ -D __amd64 -D __amd64__ Page 12 Source Listing O3INT 2025-03-12 18:22 O3INT.F -D __INTEL_COMPILER_BUILD_DATE=20200925 -D __INTEL_OFFLOAD -D __MMX__ -D __SSE__ -D __SSE_MATH__ -D __SSE2__ -D __SSE2_MATH__ -D __SSE3__ -D __SSSE3__ -D __SSE4_1__ -D __SSE4_2__ -D __POPCNT__ -D __PCLMUL__ -D __AES__ -D __AVX__ -D __F16C__ -D __AVX_I__ -D __RDRND__ -D __FMA__ -D __FP_FAST_FMA -D __FP_FAST_FMAF -D __BMI__ -D __LZCNT__ -D __AVX2__ -D __haswell -D __haswell__ -D __tune_haswell__ -D __core_avx2 -D __core_avx2__ -D __tune_core_avx2__ -D __CRAY_X86_ROME -D __CRAYXT_COMPUTE_LINUX_TARGET -double_size 64 no -d_lines no -Qdyncom -error_limit 30 no -f66 no -f77rtl no -fast -fpscomp nofilesfromcmd -fpscomp nogeneral -fpscomp noioformat -fpscomp noldio_spacing -fpscomp nologicals -fixed no -fpconstant -fpe3 -fprm nearest no -ftz -fp_model precise -fp_model nofast -fp_model nostrict -fp_model nosource -fp_model nodouble -fp_model noextended -fp_model novery_fast -fp_model noexcept -fp_model nono_except -fp_modbits nofp_contract -fp_modbits nono_fp_contract -fp_modbits nofenv_access -fp_modbits nono_fenv_access -fp_modbits nocx_limited_range -fp_modbits nono_cx_limited_range -fp_modbits noprec_div -fp_modbits nono_prec_div -fp_modbits noprec_sqrt -fp_modbits nono_prec_sqrt -fp_modbits noftz -fp_modbits no_ftz -fp_modbits nointrin_limited_range -fp_modbits nono_intrin_limited_range -fp_modbits notrunc_compares -fp_modbits nono_trunc_compares -fp_modbits noieee_nan_compares -fp_modbits nono_ieee_nan_compares -fp_modbits nohonor_f32_conversion -fp_modbits nono_honor_f32_conversion -fp_modbits nohonor_f64_conversion -fp_modbits nono_honor_f64_conversion -fp_modbits nono_x87_copy -fp_modbits nono_no_x87_copy -fp_modbits noexception_semantics -fp_modbits nono_exception_semantics -fp_modbits noprecise_libm_functions -fp_modbits nono_precise_libm_functions -heap_arrays 0 no -threadprivate_compat -g2 -iface nomixed_str_len_arg -iface nono_mixed_str_len_arg -init noarrays -init nohuge -init noinfinity -init nominus_huge -init nominus_infinity -init nominus_tiny -init nonan -init nosnan -init notiny -init nozero no -intconstant -integer_size 32 no -mixed_str_len_arg no -module -names lowercase no -noinclude no -o -offload-build=host -openmp-simd -O2 no -pad_source -real_size 32 no -recursive Page 13 Source Listing O3INT 2025-03-12 18:22 O3INT.F -reentrancy threaded -vec=simd -show nofullpath -show noinclude -show map -show options no -syntax_only no -threadcom no -U no -vms -w noall -w nonone -w alignments -w nodeclarations -w noexternals -w general -w noignore_bounds -w noignore_loc -w nointerfaces -w noshape -w notruncated_source -w uncalled -w uninitialized -w nounused -w usage no -wrap-margins -includepath : /pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/include/,/pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/, .f90,./.f90,/opt/cray/pe/mpich/8.1.12/ofi/intel/19.0/include/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/ipp/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/mkl/include/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/stdlib/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/tbb/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/intel64/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/icc/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/.f90,/usr/lib64/gcc/x86_64-suse-linux/7/include/.f90, /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed/.f90,/usr/include/.f90,/usr/include/.f90,/usr/include/.f90 -list filename : O3INT.lst no -o COMPILER: Intel(R) Fortran 19.1-1655