0000001 subroutine exponesph(h,ps,cofx,lmax,nc,ncp1,imu) 0000002 c 0000003 c*********************************************************************** 0000004 cccc 0000005 c subroutine exponesph 0000006 c 0000007 c purpose- 0000008 c 1. calculate the slant path scattering and total optical depths 0000009 c for a particular line of sight. This is used in the 0000010 c integration of the output beam. 0000011 c 2. Then calculate the trapezoidal integration factors using the 0000012 c calculated slant path optical depths. 0000013 c 0000014 c 3. calculate the iteration integration factors for a flat 0000015 c atmosphere for eq. 4.11 and k functions of eq 4.6. 0000016 c This is done the same way as in routine expone. 0000017 c 0000018 c method- 0000019 c 1. using the fine layer scattering and total optical depths in 0000020 c ps and dxs, and the altitude of the layer boundaries, h, 0000021 c use simple spherical trig. to calc. the ratio of the distance 0000022 c through a layer in a spherical atmosphere to that in a flat 0000023 c atmosphere. The result is stored in the arrays ttsf_sph and 0000024 c ttf_sph. 0000025 c 2. The integration factors are computed using extmu=layer scattering 0000026 c optical thickness * transmission to from level to top of atmo. 0000027 c Integral = 0.5*Source(1)*Transmission(1)* 0000028 c scattering optical thickness of layer 1 + 0000029 c Sum from i=2 to nc of 0.5*(Source(i)*Transmission(i) 0000030 c +Source(i+1)*Transmission(i+1))* 0000031 c scattering optical thickness of layer i + 0000032 c 0.5*Source(ncp1)*Transmission(ncp1) 0000033 c scattering optical thickness of layer ncp1 0000034 c 3. If the scan angle is equal to 0.0 degrees, then the quantities 0000035 c are computed quickly using a flat atmosphere. Again, note 0000036 c that the integration factors used in the iteration process 0000037 c are for a flat atmosphere. Only the final integration of the 0000038 c out-going beam is done in a spherical atmosphere. 0000039 c 0000040 c calling sequence- 0000041 c call exponesph(h,ps,cofx,lmax,nc,ncp1,imu) 0000042 c 0000043 c variable type i/o description 0000044 c -------- ---- --- ----------- 0000045 c 0000046 c h(487) r*8 i height from earth center(fraction of r) 0000047 c ps(487) r*8 i rayleigh opt. thickness of each layer 0000048 c of the standard atmosphere 0000049 c cofx(4,487) r*8 i spline interpolation coeff. 0000050 c lmax i*4 i number of layers in the standard atmosphere 0000051 c nc i*4 i # of layers from top of 0000052 c atmosphere to reflecting surface 0000053 c ncp1 i*4 i nc+1 0000054 c imu i*4 i # of scan angles 0000055 c passed through common blocks 0000056 c dxs(487) r*8 i total opt. thickness of each layer 0000057 c of the standard atmosphere 0000058 c xs(487) r*8 i log of the total opt. depth to a level 0000059 c of the standard atmosphere 0000060 c ttl(202) r*8 i log of the total vertical optical depth 0000061 c emu(15) r*8 i cosine of the scan angle 0000062 c extmu(202,15) r*8 o trapezoidal integration factor for each level 0000063 c 0000064 c internal arrays of note 0000065 c dtsp_sph(202) r*8 avg. scattering optical thickness of each 0000066 c spherical layer 0000067 c dtts_sph(202) r*8 avg. scattering optical thickness of each 0000068 c spherical half layer at mid points between 0000069 c layers 0000070 c transph(202) r*8 transmission from level to the top of the 0000071 c spherical atmosphere 0000072 c 0000073 c external references 0000074 c dexpk1 (subroutine) 0000075 c omerf (function) 0000076 c 0000077 c common areas referenced 0000078 c consts 0000079 c eks 0000080 c emm 0000081 c es 0000082 c prints 0000083 c thkns 0000084 c chpmn 0000085 c csphout 0000086 c kmat 0000087 c crefdir 0000088 c depolt 0000089 c 0000090 c last modified 03/14/95...dave flittner 0000091 c purpose: set pressure scale height used in gravity correction 0000092 c to rayleigh scattering od. Create new variable pscaleforg and 0000093 c pass in common block consts. 0000094 c*********************************************************************** 0000095 cccc 0000096 implicit none 0000097 c input 0000098 integer*4 lmax,nc,ncp1,imu 0000099 real*8 h(487),ps(487),cofx(4,487) 0000100 c internal 0000101 integer*4 i,j,lmaxm1,im,im1,im2,jk,k,ip1,ip2,ii,iii 0000102 real*8 sintheta,pc,pcpc,dist1,dist2,ddist,ratio,dum1,dum2,dum3 0000103 real*8 ttsf_sph(487),ttf_sph(487) 0000104 real*8 tts_sph(202) 0000105 real*8 dtts_sph(202),dtsp_sph(202),transph(202) 0000106 real*8 chpp,chxx,thta,sum,thetap 0000107 real*8 ekary(202,5),extmux(202,15) 0000108 c 0000109 c common block area 0000110 c 0000111 include "chpmn.inc" 0000112 include "thkns.inc" 0000113 include "csphout.inc" 0000114 include "prints.inc" 0000115 include "emm.inc" 0000116 include "kmat.inc" 0000117 include "eks.inc" 0000118 include "consts.inc" 0000119 include "es.inc" 0000120 include "crefdir.inc" 0000121 c 0000122 c new statement 0000123 include "depolt.inc" 0000124 c end of new statement 0000125 c 0000126 c external functions used 0000127 real*8 omerf 0000128 external omerf 0000129 c end of portion lifted from expone ! def 0000130 c 0000131 c loop for each scan angle 0000132 c 0000133 do 199 im=1,imu Error on line 133 of exponesph.f: Declaration error for pi: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for cnvrt: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for r: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for rinv: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for cons: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for sq2: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for c215: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for c815: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for c38sq2: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for c1415: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for c2815: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for pscaleforg: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for numek: attempt to use undefined variable Error on line 133 of exponesph.f: Declaration error for kskip: attempt to use undefined variable 0000134 c now loop using the simple trig. relations 0000135 c calc. the tangent height in terms of earth radii using the scan angle 0000136 c at the surface 0000137 sintheta=(1.0d0-emu(im)*emu(im)) 0000138 if(sintheta.le.0.0d0)then 0000139 c do not need to correct, for sphericity, so will use the flat atmo. case 0000140 do i=1,ncp1 0000141 extmu(i,im)=dtsp(i)*dexp(-tt(i)) 0000142 enddo 0000143 refdir(im)=dexp(-tt(ncp1)) 0000144 goto 199 0000145 else if(sintheta.gt.1.0d0)then 0000146 sintheta=1.0d0 0000147 pc=h(lmax) 0000148 else 0000149 sintheta=dsqrt(sintheta) 0000150 pc=h(lmax)*sintheta 0000151 endif 0000152 c start at top of atmosphere and work way down along the line of sight 0000153 c use chapman function to do the first layer which ranges from h(1) to 0000154 c infinity. Note that the approximation used to evaluate the Chapman 0000155 c function for dum1=1.0 (scan angle of 0.0 deg.) returns a value less 0000156 c than that in a flat atmosphere. 0000157 dum1=pc/h(1) 0000158 dum1=dsqrt(1.0d0-dum1**2) 0000159 chpp=omerf(sqchp*dum1,dum1,chpn) 0000160 chxx=omerf(sqchx*dum1,dum1,chxn) 0000161 ttsf_sph(1)=ps(1)*chpp 0000162 ttf_sph(1)=(dxs(1)-ps(1))*chxx+ps(1)*chpp 0000163 c now start the loop to create the fine arrays 0000164 pcpc=pc*pc 0000165 dist1=dsqrt(h(1)*h(1)-pcpc) 0000166 do i=2,lmax 0000167 dist2=dsqrt(h(i)*h(i)-pcpc) 0000168 ddist=dist1-dist2 0000169 ratio=ddist/(h(i-1)-h(i)) 0000170 ttsf_sph(i)=ttsf_sph(i-1)+ps(i)*ratio 0000171 ttf_sph(i)=ttf_sph(i-1)+dxs(i)*ratio 0000172 dist1=dist2 0000173 enddo 0000174 sum=0.0d0 0000175 c now spline log of slant total od. as a function of the log of veritcal od. 0000176 do i=1,lmax 0000177 ttf_sph(i)=log(ttf_sph(i)) 0000178 enddo 0000179 call splset(xs,ttf_sph,cofx,lmax) 0000180 c 0000181 c*****for each layer of model atmosphere find two layers in the 0000182 c*****standard atmosphere straddling it and find total slant optical 0000183 c*****path to reach each layer of model atmosphere- 0000184 c*****using spline interpolation and then compute the slant tranmission 0000185 c*****and store in transph 0000186 c 0000187 transph(1) = 1.0 0000188 j = 2 0000189 lmaxm1 = lmax - 1 0000190 do 110 i = 1, lmaxm1 0000191 if (ttl(j) .le. xs(i) .or. ttl(j) .gt. xs(i+1)) go to 110 0000192 100 dum1 = xs(i+1) - ttl(j) 0000193 dum2 = ttl(j) - xs(i) 0000194 dum3 = dum1*(cofx(1,i)*dum1**2 + cofx(3,i)) + dum2*(cofx(2,i)* 0000195 1 dum2**2 + cofx(4,i)) 0000196 dum3 = dexp(dum3) 0000197 transph(j) = dexp(-dum3) 0000198 j = j + 1 0000199 if (j .gt. ncp1) go to 120 0000200 if (ttl(j) .gt. xs(i) .and. ttl(j) .le. xs(i+1)) go to 100 0000201 110 continue 0000202 c 0000203 c*****find values for the bottom layer by extrapolation if it was not 0000204 c*****obtained during the above interpolation 0000205 c 0000206 120 if (ttl(ncp1) .le. xs(lmax)) go to 125 0000207 dum1 = xs(lmax) - ttl(ncp1) 0000208 dum2 = ttl(ncp1) - xs(lmaxm1) 0000209 i = lmaxm1 0000210 dum3 = dum1*(cofx(1,i)*dum1**2 + cofx(3,i)) + dum2*(cofx(2,i)* 0000211 1 dum2**2 + cofx(4,i)) 0000212 dum3 = dexp(dum3) 0000213 transph(ncp1) = dexp(-dum3) 0000214 125 continue 0000215 refdir(im)=transph(ncp1) 0000216 c 0000217 c now need to calculate the spherical scattering optical thickness of 0000218 c each layer. Already have the scattering optical depth along the slant path, 0000219 c so can use a spline of log(tts_sph) versus xs and interpolate to the 0000220 c points ttl and use the same method to compute the average scattering 0000221 c optical thickness of each layer as is done in dtaus 0000222 do i=1,lmax 0000223 ttsf_sph(i)=log(ttsf_sph(i)) 0000224 enddo 0000225 call splset(xs,ttsf_sph,cofx,lmax) 0000226 c now interpolate to ttl to get slant scattering od. 0000227 c 0000228 c*****for each layer of model atmosphere find two layers in the 0000229 c*****standard atmosphere straddling it and find slant scattering optical 0000230 c*****path to reach each layer of model atmosphere- 0000231 c*****using spline interpolation and store in tts_sph 0000232 c 0000233 tts_sph(1) = 0.0 0000234 j = 2 0000235 lmaxm1 = lmax - 1 0000236 do 140 i = 1, lmaxm1 0000237 if (ttl(j) .le. xs(i) .or. ttl(j) .gt. xs(i+1)) go to 140 0000238 130 dum1 = xs(i+1) - ttl(j) 0000239 dum2 = ttl(j) - xs(i) 0000240 dum3 = dum1*(cofx(1,i)*dum1**2 + cofx(3,i)) + dum2*(cofx(2,i)* 0000241 1 dum2**2 + cofx(4,i)) 0000242 dum3 = dexp(dum3) 0000243 tts_sph(j) = dum3 0000244 j = j + 1 0000245 if (j .gt. ncp1) go to 150 0000246 if (ttl(j) .gt. xs(i) .and. ttl(j) .le. xs(i+1)) go to 130 0000247 140 continue 0000248 c 0000249 c*****find values for the bottom layer by extrapolation if it was not 0000250 c*****obtained during the above interpolation 0000251 c 0000252 150 if (ttl(ncp1) .le. xs(lmax)) go to 155 0000253 dum1 = xs(lmax) - ttl(ncp1) 0000254 dum2 = ttl(ncp1) - xs(lmaxm1) 0000255 i = lmaxm1 0000256 dum3 = dum1*(cofx(1,i)*dum1**2 + cofx(3,i)) + dum2*(cofx(2,i)* 0000257 1 dum2**2 + cofx(4,i)) 0000258 dum3 = dexp(dum3) 0000259 tts_sph(ncp1) = dum3 0000260 155 continue 0000261 c 0000262 c now calc. dtts_sph and dtsp_sph 0000263 c 0000264 dtts_sph(1) = 0.5*tts_sph(2) 0000265 dtsp_sph(1) = 0.5*tts_sph(2) 0000266 do i=2,nc 0000267 dtsp_sph(i) = 0.5*(tts_sph(i+1) - tts_sph(i-1)) 0000268 dtts_sph(i) = 0.5*(tts_sph(i) - tts_sph(i-1)) 0000269 enddo 0000270 dtts_sph(ncp1) = 0.5*(tts_sph(ncp1)-tts_sph(nc)) 0000271 dtsp_sph(ncp1) = dtts_sph(ncp1) 0000272 c 0000273 c now calc. the integration factors 0000274 c 0000275 dum1=emu(im) 0000276 do i=1,ncp1 0000277 extmu(i,im)=dtsp_sph(i)*transph(i)*dum1 0000278 enddo 0000279 199 continue 0000280 c 0000281 c portion lifted from expone !def 0000282 c 0000283 do 400 i=1,ncp1 0000284 c initialize ekary 0000285 do 200 j=1,5 0000286 ekary(i,j)=0.d0 0000287 200 continue 0000288 c 0000289 c calculate w(t)dt*attenuation factor (see eqn. 3.6,6.7) 0000290 c 0000291 do 205 j=1,imu 0000292 extmux(i,j)=extmu(i,j)/emu(j) !def 0000293 205 continue 0000294 if (i.eq.1) go to 255 0000295 im1=i-1 0000296 c 0000297 do 210 j=1,5 0000298 ekary(im1,j)=0. 0000299 210 continue 0000300 c 0000301 if(i.eq.2) go to 235 0000302 im2=i-2 0000303 c 0000304 c calculates the elements of k1 matrix (see eqn 4.11) 0000305 c evaluate k1(1),k1(2) of eqn 4.7 for current value of 0000306 c argument (tt(i)-tt(j)) 0000307 c 0000308 do 225 j=1,im2 0000309 call dexpk(tt(i),tt(j)) 0000310 c 0000311 c ekary array contains k matrix*w(t)dt 0000312 c 0000313 do 220 jk=1,5 0000314 ekary(j,jk)=dtsp(j)*eek(jk) 0000315 220 continue 0000316 if(i.lt.ncp1) go to 225 0000317 c new statements 0000318 if(ipol.eq.0)then 0000319 ek4(j)=(e(2)+e(4))*dtsp(j) 0000320 ek5(j)=sq2*(e(2)-e(4))*dtsp(j) 0000321 else 0000322 ek4(j)=((1.0d0+2.0d0*q)*e(2)+e(4))*dtsp(j) 0000323 ek5(j)=delp*(e(2)-e(4))*dtsp(j) 0000324 endif 0000325 c end of new statements 0000326 225 continue 0000327 c 0000328 call dexpk(tt(i),tt(im1)) 0000329 do 230 k=1,5 0000330 ekary(im1,k)=dtts(im1)*eek(k) 0000331 230 continue 0000332 c 0000333 if(i.lt.ncp1) go to 235 0000334 c new statements 0000335 if(ipol.eq.0)then 0000336 ek4(nc)=dtsp(nc)*(e(2)+e(4)) 0000337 ek5(nc)=sq2*dtsp(nc)*(e(2)-e(4)) 0000338 else 0000339 ek4(nc)=((1.0d0+2.0d0*q)*e(2)+e(4))*dtsp(nc) 0000340 ek5(nc)=delp*(e(2)-e(4))*dtsp(nc) 0000341 endif 0000342 c end of new statements 0000343 235 call dexpk1(tt(i),tt(im1)) 0000344 c 0000345 do 240 k=1,5 0000346 ekary(im1,k)=ekary(im1,k)+dtts(i)*eek(k) 0000347 240 continue 0000348 c 0000349 do 250 k=1,5 0000350 ekary(i,k)=dtts(i)*eek(k) 0000351 250 continue 0000352 if(i.lt.ncp1) go to 255 0000353 c new statemnets 0000354 if(ipol.eq.0)then 0000355 ek4(ncp1)=dtsp(ncp1)*(odan(2)+odan(4)) 0000356 ek5(ncp1)=sq2*dtsp(ncp1)*(odan(2)-odan(4)) 0000357 else 0000358 ek4(ncp1)=((1.0d0+2.0d0*q)*odan(2)+odan(4))*dtsp(ncp1) 0000359 ek5(ncp1)=delp*(odan(2)-odan(4))*dtsp(ncp1) 0000360 endif 0000361 c end of new statements 0000362 go to 300 0000363 255 ip1=i+1 0000364 call dexpk1(tt(i),tt(ip1)) 0000365 c 0000366 do 260 k=1,5 0000367 ekary(i,k)=ekary(i,k)+dtts(ip1)*eek(k) 0000368 260 continue 0000369 c 0000370 do 270 k=1,5 0000371 ekary(ip1,k)=dtts(ip1)*eek(k) 0000372 270 continue 0000373 c 0000374 if(i.eq.nc) go to 300 0000375 ip2=i+2 0000376 call dexpk(tt(i),tt(ip1)) 0000377 c 0000378 do 280 k=1,5 0000379 ekary(ip1,k)=ekary(ip1,k)+dtts(ip2)*eek(k) 0000380 280 continue 0000381 c 0000382 do 295 j=ip2,ncp1 0000383 call dexpk(tt(i),tt(j)) 0000384 c 0000385 do 290 k=1,5 0000386 ekary(j,k)=dtsp(j)*eek(k) 0000387 290 continue 0000388 295 continue 0000389 c 0000390 c 0000391 300 continue 0000392 do 320 ii = 1,202 0000393 do 310 iii = 1,5 0000394 nek(ii,iii,i) = ekary(ii,iii) 0000395 310 continue 0000396 320 continue 0000397 400 continue 0000398 c 0000399 c optionally print calculated exponential terms 0000400 c (zstar matrix * w(t)dt see eqn 6.3) 0000401 c 0000402 if (jprint(3).ne.0) then 0000403 write (33,6120) (j,ek4(j),ek5(j) ,j=1,ncp1) 0000404 do 495 i=1,imu 0000405 thta=dacos(emu(i))/cnvrt 0000406 write(33,7120) thta,(j,extmux(j,i),j=1,ncp1,10) 0000407 write(33,7130) ncp1,extmux(ncp1,i) 0000408 495 continue 0000409 endif 0000410 return 0000411 6120 format(1h1,t50,'debug print out for expone',///, 0000412 1 1h ,2(' j',4x,'ek4(j)',6x,'ek5(j)',6x),//,2(1x,i3,2d12.4,3x)) 0000413 7120 format(1x,//,1x,'theta=',f6.2,' *** attenuation factors/*** ',//, 0000414 1 1x,'level',5x,'extmu/mu',/,(1x,i5,3x,d12.6)) 0000415 7130 format(1x,i5,3x,d12.6) 0000416 c end of portion lifted from expone.f !def 0000417 end INCLUDE FILES FileNo File name 1 chpmn.inc 2 thkns.inc 3 csphout.inc 4 prints.inc 5 emm.inc 6 kmat.inc 7 eks.inc 8 consts.inc 9 es.inc 10 crefdir.inc 11 depolt.inc ENTRY POINTS Name Type BlockNo exponesph SUBR 3 FUNCTION AND SUBROUTINE REFERENCES Name Type ProcType References dexp INTRINSIC 141 143 196 197 212 213 242 258 dexpk SUBR EXTERNAL 309 328 376 383 dexpk1 SUBR EXTERNAL 343 364 dsqrt INTRINSIC 149 158 165 167 exponesph SUBR 1D log INTRINSIC 177 223 omerf R*8 EXTERNAL 127D 128D 159 160 splset SUBR EXTERNAL 179 225 COMMON BLOCKS Name Size BlockNo chpmn_ 7824 5 consts_ 14 19 crefdir_ 120 23 csphout_ 4 9 depolt_ 68 25 eks_ 27472 17 emm_ 1176 13 es_ 144 21 kmat_ 1632160 15 prints_ 40 11 thkns_ 8888 7 VARIABLES REFERENCES Name Type Dimension Class Storage BlockNo Offset References admatx R*8 (3,15) VAR COMMON 13 360 5-2D 5-4D c1415 *ERR* VAR COMMON 19 9 8-2D c215 *ERR* VAR COMMON 19 6 8-2D c2815 *ERR* VAR COMMON 19 10 8-2D c38sq2 *ERR* VAR COMMON 19 8 8-2D c815 *ERR* VAR COMMON 19 7 8-2D caz R*8 (8) VAR COMMON 13 784 5-2D 5-4D caz2 R*8 (8) VAR COMMON 13 912 5-2D 5-4D chpn R*8 VAR COMMON 5 0 1-2D 1-3D 159A chpp R*8 VAR AUTO 3 64 106D 159= 161 162 chxn R*8 VAR COMMON 5 8 1-2D 1-3D 160A chxx R*8 VAR AUTO 3 72 106D 160= 162 cnvrt *ERR* VAR COMMON 19 1 8-2D cofx R*8 (4,487) VAR ARG 1D 99D 179A 194(4) 210(4) 225A 240(4) 256(4) cons *ERR* VAR COMMON 19 4 8-2D ddist R*8 VAR AUTO 3 7896 102D 168= 169 delp R*8 VAR COMMON 25 40 11-3D 11-4D 323 340 359 dist1 R*8 VAR AUTO 3 7880 102D 165= 168 172= dist2 R*8 VAR AUTO 3 7888 102D 167= 168 172 dtsp R*8 (202) VAR COMMON 7 5656 2-2D 2-3D 141 314 319 322 323 336 339 340 355 358 359 386 dtsp_sph R*8 (202) VAR AUTO 3 14408 105D 265= 267= 271= 277 dtts R*8 (202) VAR COMMON 7 7272 2-2D 2-3D 330 346 350 367 371 379 dtts_sph R*8 (202) VAR AUTO 3 12792 105D 264= 268= 270= 271 dum1 R*8 VAR AUTO 3 48 102D 157= 158(2)= 159(2)A 160(2)A 192= 194(2) 207= 210(2) 238= 240(2) 253= 256(2) 275= 277 dum2 R*8 VAR AUTO 3 9544 102D 193= 194(2) 208= 210(2) 239= 240(2) 254= 256(2) dum3 R*8 VAR AUTO 3 9552 102D 194= 196(2)= 197 210= 212(2)= 213 240= 242(2)= 243 256= 258(2)= 259 dxs R*8 (487) VAR COMMON 5 3928 1-2D 1-3D 162 171 e R*8 (6) VAR COMMON 21 48 9-2D 9-3D 319(2) 322(2) 323(2) 336(2) 339(2) 340(2) eek R*8 (6) VAR COMMON 21 96 9-2D 9-3D 314 330 346 350 367 371 379 386 ek4 R*8 (202) VAR COMMON 17 24240 7-2D 7-3D 319= 322= 336= 339= 355= 358= 403 ek5 R*8 (202) VAR COMMON 17 25856 7-2D 7-3D 320= 323= 337= 340= 356= 359= 403 ekary R*8 (202,5) VAR AUTO 3 22488 107D 286= 298= 314= 330= 346(2)= 350= 367(2)= 371= 379(2)= 386= 394 ematx R*8 (3,15) VAR COMMON 13 0 5-2D 5-4D emu R*8 (15) VAR COMMON 13 976 5-2D 5-4D 137(2) 275 292 emuz R*8 (10) VAR COMMON 13 1096 5-2D 5-4D extmu R*8 (202,15) VAR COMMON 17 0 7-2D 7-3D 141= 277= 292 extmux R*8 (202,15) VAR AUTO 3 46728 107D 292= 406 407 gama R*8 VAR COMMON 25 8 11-3D 11-4D h R*8 (487) VAR ARG 1D 99D 147 150 157 165(2) 167(2) 169(2) i I*4 VAR AUTO 3 20 101D 140= 141(3) 142= 166= 167(2) 169(2) 170(3) 171(3) 173= 176= 177(2) 178= 190= 191(2) 192 193 194(4) 200(2) 201= 209= 210(4) 222= 223(2) 224= 236= 237(2) 238 239 240(4) 246(2) 247= 255= 256(4) 266= 267(3) 268(3) 269= 276= 277(3) 278= 283= 286 292(2) 294 295 301 302 309 316 328 333 343 346 350(2) 352 363 364 367(2) 374 375 376 383 394 397= 404= 406 407 408= ii I*4 VAR AUTO 3 46756 101D 392= 394(2) 396= iii I*4 VAR AUTO 3 46760 101D 393= 394(2) 395= im I*4 VAR AUTO 3 4 101D 133= 137(2) 141 143 215 275 277 279= im1 I*4 VAR AUTO 3 46732 101D 295= 298 328 330(2) 343 346(2) im2 I*4 VAR AUTO 3 46736 101D 302= 308 imu I*4 VAR ARG 1D 98D 133 291 404 ip1 I*4 VAR AUTO 3 46748 101D 363= 364 367 371(2) 376 379(2) ip2 I*4 VAR AUTO 3 46752 101D 375= 379 382 ipol I*4 VAR COMMON 25 64 11-2D 11-4D 318 335 354 j I*4 VAR AUTO 3 9532 101D 188= 191(2) 192 193 197 198(2)= 199 200(2) 234= 237(2) 238 239 243 244(2)= 245 246(2) 285= 286 287= 291= 292(3) 293= 297= 298 299= 308= 309 314(2) 319(2) 320 322(2) 323(2) 326= 382= 383 386(2) 388= 403(5)= 406(4)= jk I*4 VAR AUTO 3 46740 101D 313= 314(2) 315= jprint I*4 (10) VAR COMMON 11 0 4-2D 4-3D 402 k I*4 VAR AUTO 3 46744 101D 329= 330(2) 331= 345= 346(3) 347= 349= 350(2) 351= 366= 367(3) 368= 370= 371(2) 372= 378= 379(3) 380= 385= 386(2) 387= kskip *ERR* VAR COMMON 19 13 8-2D lmax I*4 VAR ARG 1D 98D 147 150 166 176 179A 189 206 207 222 225A 235 252 253 lmaxm1 I*4 VAR AUTO 3 9536 101D 189= 190 208 209 235= 236 254 255 lsphout L*4 VAR COMMON 9 0 3-2D 3-3D nc I*4 VAR ARG 1D 98D 266 270 336(2) 337 339(2) 340(2) 374 ncp1 I*4 VAR ARG 1D 98D 140 143 199 206 207 208 213 215 245 252 253 254 259 270(2) 271(2) 276 283 316 333 352 355(2) 356 358(2) 359(2) 382 403 406 407(2) nek R*8 (202,5,202) VAR COMMON 15 0 6-2D 6-3D 394= numek *ERR* VAR COMMON 19 12 8-2D odan R*8 (6) VAR COMMON 21 0 9-2D 9-3D 355(2) 358(2) 359(2) pc R*8 VAR AUTO 3 40 102D 147= 150= 157 164(2) pcpc R*8 VAR AUTO 3 7872 102D 164= 165 167 pi *ERR* VAR COMMON 19 0 8-2D ps R*8 (487) VAR ARG 1D 99D 161 162(2) 170 pscaleforg *ERR* VAR COMMON 19 11 8-2D q R*8 VAR COMMON 25 16 11-3D 11-4D 322 339 358 q1 R*8 VAR COMMON 25 24 11-3D 11-4D q12s R*8 VAR COMMON 25 56 11-3D 11-4D q2 R*8 VAR COMMON 25 32 11-3D 11-4D r *ERR* VAR COMMON 19 2 8-2D ratio R*8 VAR AUTO 3 7904 102D 169= 170 171 refdir R*8 (15) VAR COMMON 23 0 10-2D 10-3D 143= 215= rhon R*8 VAR COMMON 25 0 11-3D 11-4D rinv *ERR* VAR COMMON 19 3 8-2D saz R*8 (8) VAR COMMON 13 720 5-2D 5-4D saz2 R*8 (8) VAR COMMON 13 848 5-2D 5-4D sdp R*8 VAR COMMON 25 48 11-3D 11-4D sintheta R*8 VAR AUTO 3 16 102D 137= 138 145 146= 149(2)= 150 sq2 *ERR* VAR COMMON 19 5 8-2D sqchp R*8 VAR COMMON 5 16 1-2D 1-3D 159 sqchx R*8 VAR COMMON 5 24 1-2D 1-3D 160 sum R*8 VAR AUTO 3 7912 106D 174= thetap R*8 VAR 106D Variable declared and not used thta R*8 VAR AUTO 3 46768 106D 405= 406 transph R*8 (202) VAR AUTO 3 9528 105D 187= 197= 213= 215 277 tsl R*8 (101) VAR COMMON 7 0 2-2D 2-3D tt R*8 (202) VAR COMMON 7 808 2-2D 2-3D 141 143 309(2)A 328(2)A 343(2)A 364(2)A 376(2)A 383(2)A ttf_sph R*8 (487) VAR AUTO 3 7864 103D 162= 171(2)= 177(2)= 179A ttl R*8 (202) VAR COMMON 7 4040 2-2D 2-3D 191(2) 192 193 200(2) 206 207 208 237(2) 238 239 246(2) 252 253 254 tts R*8 (202) VAR COMMON 7 2424 2-2D 2-3D tts_sph R*8 (202) VAR AUTO 3 11176 104D 233= 243= 259= 264 265 267(2) 268(2) 270(2) ttsf_sph R*8 (487) VAR AUTO 3 3968 103D 161= 170(2)= 223(2)= 225A xs R*8 (487) VAR COMMON 5 32 1-2D 1-3D 179A 191(2) 192 193 200(2) 206 207 208 225A 237(2) 238 239 246(2) 252 253 254 LABELS LabNo LinNo LabNo LinNo LabNo LinNo LabNo LinNo LabNo LinNo LabNo LinNo LabNo LinNo LabNo LinNo 100 192 130 238 199 279 220 315 240 347 270 372 300 391 495 408 110 201 140 247 200 287 225 326 250 351 280 380 310 395 6120 411 120 206 150 252 205 293 230 331 255 363 290 387 320 396 7120 413 125 214 155 260 210 299 235 343 260 368 295 388 400 397 7130 415 +--------------------------------------------+ | : Referenced but not modified | | = : Value modified | | A : Actual argument, possibly modified | | D : Declared/Defined | | I : Data Initialization | | (n) : Number of occurrences | | # : Unknown usage | +--------------------------------------------+