12 include
'common_rt1.cmn'
14 character*255 infile,outdir,phsdir,tmat,tmat55,out2,out3,out23,txt
15 character*90 out2a,out3a,out23a,tmata,tmat55a
17 character*2 dndex,endex,wwcc,krhc,ksetc
32 open(5,file=
'rt1.dir',status=
'old')
41 len1=
index(infile,
' ')-1
42 len2=
index(outdir,
' ')-1
43 len3=
index(phsdir,
' ')-1
48 open(unit=6,file=
'dump',status=
'unknown')
55 open(unit=4,file=infile(1:len1)//
'input.dat',status=
'old')
56 open(unit=7,file=infile(1:len1)//
'ozone101.dat',status=
'old')
57 open(unit=8,file=infile(1:len1)//
'atm_prof.dat', status=
'old')
58 open(unit=15,file=infile(1:len1)//
'coeff_abs.dat',status=
'old')
67 read(4,1000)(iair(i),i=1,3)
80 if(idust.eq.0 .and. iaprof.eq.0 .and. iblyr.eq.0)
then
85 if(idust.ge.1 .and. iaprof.eq.1 .and. iblyr.eq.1)
then
91 if(idust.ge.1 .and. iblyr.eq.1)
then
101 read(4,1003)nch,nt55,nrh,kset
111 read(4,1065)ilam1,ilam2
112 read(4,1065)isd1,isd2
113 read(4,1065)itau1,itau2
118 read(4,1015)deltaux,psrfc
123 read(4,1005)(taum55(i),i=1,nt55)
127 read(4,1018)(krhum(i),i=1,nrh)
136 read(4,1015)pcldtop,pcldbtm
153 read(15,*)kznum,xlamb(kz),c0(kz),c1(kz),c2(kz),
157 111
format(i5,1p6e11.3)
167 read(7,*)ppo(i),x101(i),temp101(i)
171 dx(i)=(x101(i+1)-x101(i))*1.0d-3
180 pdv(i)=1.0d0*dexp(a1*(nd-i)*(1.0d0+a2*(nd-i)))
189 if(pdv(i).ge.psrfc)
then
202 read (8,*) htdd(i),ppodd(i),dxdd(i),znpdd(i)
217 temp1(i)=dlog(ppodd(i))
219 call linear(h2km,htdd,temp1,nm,xlp2km)
220 p2km=dexp(xlp2km)/ppodd(1)
222 181
format(
'h2km,xlp2km,p2km',1p3e11.3)
223 diff=dabs(pdv(1)-p2km)
225 diffx=dabs(pdv(i)-p2km)
226 if(diffx.le.
diff)
then
239 ppod(i) = ppodd(k) / ppodd(1)
248 do 380 il=ilam1,ilam2,1
250 lambz=xlamb(il)*1.0d3+0.01
255 do 390 isd=isd1,isd2,1
256 do 400 itau=itau1,itau2,1
259 call convtc(idnint(xlamb(il)*1.0d3+0.01),4,cndex)
262 call convtc(krhum(ih),2,krhc)
265 write(*,*) ksetc,
' ',endex,
' ',dndex,
' ',krhc,
' ',cndex
267 if( kset.eq.0)krhc=
'00'
287 out2a=
'rt1_wl'//cndex//
'sd'//dndex//
'rh'//krhc
288 k01=
index(out2a,
' ')-1
289 out2=out2a(1:k01)//
'ta'//endex//
'_set'//ksetc//
'.out'
291 out3a=
'rt1_spwl'//cndex//
'sd'//dndex//
'rh'//krhc
292 k02=
index(out3a,
' ')-1
293 out3=out3a(1:k02)//
'ta'//endex//
'_set'//ksetc//
'.dat'
295 out23a=
'rt1_wl'//cndex//
'sd'//dndex//
'rh'//krhc
296 k03=
index(out23a,
' ')-1
297 out23=out23a(1:k03)//
'ta'//endex//
'_set'//ksetc//
'.dat'
299 tmata=
'phs_twl'//cndex//
'sd'//dndex//
'rh'//krhc
300 k04=
index(tmata,
' ')-1
301 tmat=tmata(1:k04)//
'_set'//ksetc//
'.dat'
303 tmat55a=
'phs_twl'//wwcc//
'sd'//dndex//
'rh'//krhc
304 k05=
index(tmat55a,
' ')-1
305 tmat55=tmat55a(1:k05)//
'_set'//ksetc//
'.dat'
310 n02=
index(out2,
' ')-1
311 n03=
index(out3,
' ')-1
312 ntm=
index(tmat,
' ')-1
313 n23=
index(out23,
' ')-1
314 n55=
index(tmat55,
' ')-1
316 open(2,file=outdir(1:len2)//
'/'//out2(1:n02),status=
'unknown')
318 open(3,file=outdir(1:len2)//
'/'//out3(1:n03),status=
'unknown')
321 open(unit=23,file=outdir(1:len2)//
'/'//out23(1:n23),
326 wvlth=xlamb(il)/10000.0d0
338 if (iair(2) .eq. 1) ifc=1
339 if(taum55(itau).lt. 1.0d-6)ifc=0
348 if (iair(2) .ne. 1)
go to 90
349 open(unit=9,file=phsdir(1:len3)//
'/'//tmat(1:ntm),status=
'old')
352 read (9,1095) ifunc1,mfunc1
364 read (9,1100)
ccn,bsr,salb,asf,qst,qtt
367 dwv=dabs(wvlth2-wvlth)
368 if(dwv .ge.1.0e-8)
then
369 write(2,1105)wvlth,wvlth2
370 write(*,1105)wvlth,wvlth2
379 open(unit=13,file=phsdir(1:len3)//
'/'//tmat55(1:n55),
383 read (13,1095) ifunc1,mfunc1
385 read (13,1100) wvlth5
395 read (13,1100) ccn5,bsr5,salb5,asf5,qst5,qtt5
403 tm=(qtt/qtt5)*taum55(itau)
405 write (2,1165) qtt5,qst5
406 write (2,1170) qtt,qst
407 write(2,1175)taum55(itau),tm
408 write(2,1177)wvlth*1.0d4
413 write(2,1177)wvlth*1.0d4
448 1005
format(1p10e11.4)
450 1010
format(5x,7e10.3,5x)
452 1015
format(1p4e15.5)
455 1022
format(t5,
'wvlth',t17,
'psrfc',t29,
'rho',t41,
'xozn',t53,
'tautot',
456 1 t65,
'deltau',t74,
'nolyr')
457 1023
format(1p6e12.4,i4)
458 1024
format(t5,
'tr',t17,
'tm',t29,
'ta',t41,
'tcar',t53,
'twat',
459 1 t65,
'tozn',t75,
'ifc')
460 1025
format(1p6e12.4,i4)
461 1026
format(t3,
'no',t9,
'dtrr',t21,
'dtmm',t33,
'dtaa',t45,
'dtot')
462 1027
format(i4,1p4e12.4)
465 1040
format (/t5,
'radiative transfer calculations based on',
466 1
' the clear atmosphere model')
467 1050
format (/t5,
'radiative transfer calculations based on',
468 1
' the thin cloud model')
469 1060
format(4e15.5,2i5)
473 1095
format(i5,11x,i5)
474 1105
format(1x,
'input wavelength and phase matrix wavelength'
475 1
' do not match.'/1x,
'input wavelength=',1pe12.4,
476 2
'phase matrix wavelength=',1pe12.4)
477 1100
format(1p4e11.3,1p2e12.4)
478 1120
format(1p2d18.12,1p2d19.12,0pf6.2)
479 1130
format(i4,25f4.1)
480 1140
format(i4,10f4.2)
481 1165
format(
'volume extinction coefficient (550 nm)',t40,
'=',1pe15.5,
482 1
'(cm-1)'/
'volume scattering coefficient (550 nm)', t40,
'=',
483 2 1pe15.5,
'(cm-1)' / )
484 1170
format(
'volume extinction coefficient',t40,
'=',1pe15.5,
485 1
'(cm-1)' /
'volume scattering coefficient', t40,
'=',
486 2 1pe15.5,
'(cm-1)' / )
487 1175
format(
'aerosol opt. thickness (550 nm)=',1pe15.5/
488 1
'aerosol opt. thickness =',1pe15.5)
489 1176
format(
'aerosol opt. thickness =',1pe15.5)
490 1177
format(
'wavelength (um) =',1pe15.5)
491 1180
format(4d18.10,5x,i3)
492 1220
format(f5.0,4d12.4)
493 1230
format(5x,f5.1,3f10.3)
505 include
'common_rt1.cmn'
525 lgppod(i)=dlog(ppod(i))
530 lgpdv(i)=dlog(pdv(i))
533 if (iair(3).eq.1)
then
543 denm=dlog(dxd(1)/dxd(2))
544 o3h=-(htd(1)-htd(2))/denm
545 xd(1)=o3h*(1.0d+3*dxd(1)/2.1429d-2)
548 xd(i+1)=xd(i)+0.5d0*1.0d+3*(htd(i)-htd(i+1))*
549 1 (dxd(i)+dxd(i+1))/2.1429d-2
560 write (2,1070) ozamtp
567 x(i+1) = x(i) + dx(i)
577 write (2,1070) ozamtp
591 call co2(tcar,pdv,tauc,nd)
594 taua(i)=tauozn(i)+tauw(i)+tauc(i)
597 198
format(
'tauc',1p6e11.3)
599 199
format(
'taua',1p6e11.3)
606 if (iair(2).eq.1)
then
607 if(idust.ge.1 .or. iaprof.eq.1)
then
615 if (iair(1).eq.1)
then
617 taur(i) = tr * pdv(i)
622 tau(i)=taum(i)+taur(i)+taua(i)
625 call linear (lgpdv(i),lgppod,htd,nm,htdv(i))
634 write(3,115)i,htdv(i),pdv(i),taur(i),taum(i),taua(i),tau(i)
638 if(tau(nd).lt.0.02d0)
then
642 if(ioptn.le.0 .or. ioptn.gt.4)ioptn=0
647 dtau1=tau(nd)/dfloat(ntau)
657 if(taur(nd).gt.0.0d0)fr(1)=1.0d-10
658 if(taum(nd).gt.0.0d0)fn(1)=1.0d-10
659 if(taua(nd).gt.0.0d0)fa(1)=1.0d-10
660 if(ifc.eq.0)fn(1)=0.0d0
664 ftot(1)=fr(1)+fn(1)+fa(1)
668 call linear (argi,tau,pdv,nd,pp)
671 call linear (pplg,lgpdv,htdv,nd,htlvl(i+1))
672 if(htlvl(i+1).lt.0.0d0)htlvl(i+1)=0.0d0
673 if (iair(1).eq.1)
call linear (pp,pdv,taur,nd,fr(i+1))
674 if (iair(2).eq.1)
call linear (pp,pdv,taum,nd,fn(i+1))
675 if (iair(3).eq.1)
call linear (pp,pdv,taua,nd,fa(i+1))
676 ftot(i+1)=fr(i+1)+fn(i+1)+fa(i+1)
677 write (2,1110)i,htlvl(i),pplvl(i),fr(i),fn(i),fa(i),ftot(i)
679 write (2,1110)ntaup,htlvl(ntaup),pplvl(ntaup),fr(ntaup),
680 1 fn(ntaup),fa(ntaup),ftot(ntaup)
695 pplvl(k)=1.0d0*dexp(a1*(kdlvl-i)*(1.0d0+a2*(kdlvl-i)))
696 if(pplvl(k).gt.psrfc)
then
710 if(taur(nd).gt.0.0d0)fr(1)=1.0d-10
711 if(taum(nd).gt.0.0d0)fn(1)=1.0d-10
712 if(taua(nd).gt.0.0d0)fa(1)=1.0d-10
713 if(ifc.eq.0)fn(1)=0.0d0
716 ftot(1)=fr(1)+fn(1)+fa(1)
717 write (2,1110)il,htlvl(1),pplvl(1),fr(1),fn(1),fa(1),ftot(1)
721 call linear (pplg,lgpdv,htdv,nd,htlvl(i))
722 if (iair(1).eq.1)
call linear (pp,pdv,taur,nd,fr(i))
723 if (iair(2).eq.1)
call linear (pp,pdv,taum,nd,fn(i))
724 if (iair(3).eq.1)
call linear (pp,pdv,taua,nd,fa(i))
725 ftot(i)=fr(i)+fn(i)+fa(i)
726 write (2,1110)i,htlvl(i),pplvl(i),fr(i),fn(i),fa(i),ftot(i)
732 dtrr(i) = fr(i+1) - fr(i)
733 dtmm(i) = fn(i+1) - fn(i)
734 dtaa(i) = fa(i+1) - fa(i)
735 if(dtrr(i).lt.0.0d0)dtrr(i)=0.0d0
736 if(dtmm(i).lt.0.0d0)dtmm(i)=0.0d0
737 if(dtaa(i).lt.0.0d0)dtaa(i)=0.0d0
752 tots = dtrr(i) + dtmm(i)*
const
753 dtot(i) = dtrr(i) + dtmm(i) + dtaa(i)
755 turbhl=(dtmm(i)*
const)/tots
756 write (2,1210) i,pplvl(i+1),dtrr(i),dtmm(i),dtaa(i),dtot(i),
760 tautot = trp + tmp + tap
762 write(2,1230)trp,tmp,tap,tautot
765 write(23,1023)wvlth,psrfc,rrho,ozamtp,tautot,dtau1,nolyr
767 write(23,1025)trp,tmp,tap,tcar,twat,toznp,ifc
770 write(23,1027)i,htlvl(i+1),pplvl(i+1),dtrr(i),dtmm(i),
778 115
format(i4,1x,1p6e12.4)
779 121
format(t1,
'tot_lvl')
781 128
format(t3,
'lvl',t9,
'ht(km)',t21,
'p(atm)',t33,
'taur',t45,
'taum',
782 1 t57,
'taua',t69,
'tau_tot')
783 1000
format (15x,
'total optical thickness at 3.6 km = ',1pe15.4/
784 1 15x,
'new dtau=',1pe15.4/ 15x,
'new no. of layers=',i5//)
785 1010
format(/,10x,
'number of layers above the cloud = ',i5,10x,
786 1
'layer thickness = ',f10.6)
787 1011
format(/,10x,
'number of layers below the cloud = ',i5,10x,
788 1
'layer thickness = ',f10.6)
789 1012
format(/,10x,
'number of layers in the cloud = ',i5,10x,
790 1
'layer thickness = ',f10.6)
791 1015
format (1x,t50,
'clear atmosphere')
792 1016
format (1x,t50,
'thin cloud')
793 1017
format (1x,t50,
'thick cloud')
794 1020
format (/,t50,
'cumulative optical thicknesses'///t11,
795 1
'press.',t27,
'rayleigh', t47,
'mie',t67,
'ozone',t87,
'total'/
797 1022
format(t5,
'wvlth',t17,
'psrfc',t29,
'rho',t41,
'xozn',t53,
'tautot',
798 1 t65,
'deltau',t74,
'nolyr')
799 1023
format(1p6e12.4,i4)
800 1024
format(t5,
'tr',t17,
'tm',t29,
'ta',t41,
'tcar',t53,
'twat',
801 1 t65,
'tozn',t75,
'ifc')
802 1025
format(1p6e12.4,i4)
803 1026
format(t3,
'no',t9,
'htl_b',t21,
'pl_b',t33,
'dtrr',t45,
'dtmm',
804 1 t57,
'dtaa',t69,
'dtot')
805 1027
format(i4,1p6e12.4)
806 1030
format (5x,
'delta tau =',1pe15.5,5x,
'no. of layers =',i3/)
807 1040
format (
'interpolated values of press and',
808 1
' tau(rayleigh) etc. corresponding to'/
'delta tau=',1pe15.5//
809 2 t10,
'height',t23,
'press.',t31,
'tau(rayleigh)',t46,
'tau(mie)',t56
810 3
'tau(ozone)',t68,
'tau(tot)'/t10,
'(in km)',t22,
'(in atm)'/)
811 1050
format (
'values of tau(rayleigh) etc. in full and half layers'/
812 1
'(the first and the last layer are half layers)'/)
813 1060
format (//t15,
'division of atmosphere into layers of equal optical
814 1 thickness for pupose of calculating radiative transfer:'//)
815 1070
format (15x,
'total ozone(top to psrfc) in atm-cm',1pe15.5/)
816 1080
format (i4,1x,1p6e12.4)
817 1090
format (i3,2x,1p4e11.3,0pf8.4)
818 1100
format (t2,
'no',t8,
'dtau(ray)',t19,
'dtau(mie)',t30,
819 1
' dtau(o3)',t41,
'dtau(tot)',t53,
'turb'/)
820 1110
format (i4,1x,1p6e12.4)
823 1140
format (t10,
'sum of the total dtau = ',f10.5,
824 1 /t10,
'sum of the total dtaur = ', f10.5,
825 2 /t10,
'sum of the total dtaum(scat.)= ', f10.5,
826 3 /t10,
'sum of the total dtaua = ', f10.5)
827 1190
format(/t5,
'values of tau(rayleigh ) etc. in each layer'/)
828 1200
format(t2,
'no',t6,
'press(atm)'t17,
'dtau(ray)',t28,
829 1
'dtau(mie)',t39,
'dtau(o3)',t49,
' dtau(tot)',
830 2 t60,
'alb_sscat',t71,
'turb'/)
831 1210
format(i3,1p5e11.3,0p2f8.4)
832 1230
format(/t10,
'tau_r =',e12.4/t10,
'tau_m =',e12.4/
833 1 t10,
'tau_a =',e12.4/t10,
'tau_t =',e12.4)
840 include
'common_rt1.cmn'
841 real*8 sumxx(nsc+1),hxx(nsc+1),e(nsc+1),u(nsc+1)
850 if(pdv(i).ge.ppod(j) .and. pdv(i).lt.ppod(j+1))
then
851 xn1=dlog(pdv(i))-dlog(ppod(j))
852 xd1=dlog(ppod(j+1))-dlog(ppod(j))
853 hho(i)=htd(j)+(xn1/xd1)*(htd(j+1)-htd(j))
854 prod1=(hho(i)-htd(j))/(htd(j+1)-htd(j))
855 zpp(i)=znp(j)*(znp(j+1)/znp(j))**prod1
861 226
format(
'i,pdv,hho,zpp',i3,1x,1p3e11.3)
869 dnm(i)=0.5d0*(zpp(i)+zpp(i+1))*(hho(i)-hho(i+1))*1.0d+5
870 zppt(i+1)=zppt(i)+dnm(i)
872 151
format(
'integrated # of part i+1,zppt(i+1)',i3,1pe11.3)
889 taum(i) = c * zppt(i) * qtt
903 119
format(
'i,zppt(i),taum(i)',i3,1x,1p2e11.3)
910 yn2b=zppt(ndv)-zppt(kndx)
914 h0=2.0d0/(dlog(znp(nm)/znp(nm-2)))
923 zpp(j)=zpp(kndx)*dexp((hho(kndx)-hho(j))/hx)
924 dnm(j-1)=0.5d0*(zpp(j-1)+zpp(j))*(hho(j-1)-hho(j))*1.0d+5
927 if(sum2x.gt.xn2b)
then
935 600
format(
'the value of the aerosol scale height is less',
936 1
' than 0.10',1pe11.3)
945 dhx=(hg-hl)/dfloat(nsc)
951 zpp(j)=zpp(kndx)*dexp((hho(kndx)-hho(j))/hx)
952 dnm(j-1)=0.5d0*(zpp(j-1)+zpp(j))*(hho(j-1)-hho(j))*
965 call spline(xn2b,sumxx,hxx,nscp,in,hxz,il,iu,vl,vu,e,u)
968 zpp(j)=zpp(kndx)*dexp((hho(kndx)-hho(j))/hxz)
969 dnm(j-1)=0.5d0*(zpp(j-1)+zpp(j))*(hho(j-1)-hho(j))*
971 zppt(j)=zppt(j-1)+dnm(j-1)
983 subroutine water(twat,pdv,watr,ppod,ht,nm,ndv,tauw)
985 implicit real*8 (a-h,o-z)
986 real*8 pdv(1000),watr(1000),ppod(1000),tauw(1000),u(1000)
987 real*8 dts(1000),dt(1000),tauww(1000),e(1000),ht(1000)
992 watr(i)=watr(i)*1.0d-1
999 tp = tp + (watr(i)+watr(i+1))/2.0d0
1008 dts(i) = c * watr(i)
1011 dt(i) = (dts(i+1) + dts(i)) / 2.0d0
1016 tauww(i+1) = tauww(i) + dt(i)
1023 call spline (pdv(i),ppod,tauww,nm,in,tauw(i),il,iu,vl,vu,e,u)
1025 if(tauw(i).lt.0.0d0 .and. ttww.lt.1.0d-8)
then
1034 include
'common_rt1.cmn'
1036 real*8 ee(klyr),uu(klyr)
1042 call spline(pdv(i),ppod,xd,n,in,tempo3,il,iu,vl,vu,ee,uu)
1043 tauozn(i)=tempo3*oznabs
1050 subroutine co2(tcar,pdv,tauc,ndv)
1052 implicit real*8 (a-h,o-z)
1054 real*8 pdv(ndv),tauc(ndv)
1067 subroutine linear(xp,x,y,n,yp)
1072 implicit real*8 (a-h,o-z)
1089 slope=(y(ih)-y(il))/(x(ih)-x(il))
1090 yp=y(il)+slope*(xp-x(il))
1095 subroutine spline(s,x,y,n,in,t,il,iu,vl,vu,e,u)
1104 implicit real*8 (a-h,o-z)
1105 dimension x(*), y(*), e(*),u(*)
1116 u(1)=(c1-vl)/2.0d0/b1
1131 20 u(j)=(d-c*u(j-1))/p
1134 e(n)=u(n1)/(1.0d0-e(n1))
1136 24 c2=vu-(y(n)-y(n1))/(x(n)-x(n1))
1137 e(n)=(c2/(x(n)-x(n1))-u(n1))/(2.0d0+e(n1))
1143 e(k)=e(k)*e(k+1)+u(k)
1148 u(k)=(y(k+1)-y(k))/b2-b2*(e(k)*2+e(k+1))
1151 u(n)=(e(n1)+2.0d0*e(n))*b2+(y(n)-y(n1))/b2
1152 40
if (x(1).gt.x(n))
go to 50
1160 60
if (s.ge.x(mub+idir))
go to 100
1161 if (s.le.x(mlb+1-idir))
go to 110
1165 70
if (iabs(mu-ml).le.1)
go to 120
1167 if (s.lt.x(mav))
go to 90
1174 110 mu=mlb+2*(1-idir)
1178 t=(e(mu-1)*((x(mu)-s)**3)+e(mu)*((s-x(mu-1))**3)+
1179 1 (y(mu-1)-e(mu-1)*((x(mu)-x(mu-1))**2))*(x(mu)-s)+
1180 2 (y(mu)-e(mu)*((x(mu)-x(mu-1))**2))*(s-x(mu-1)))/
1188 include
'common_rt1.cmn'
1196 if(pdv(i).ge.ppod(j) .and. pdv(i).lt.ppod(j+1))
then
1197 xn1=dlog(pdv(i))-dlog(ppod(j))
1198 xd1=dlog(ppod(j+1))-dlog(ppod(j))
1199 hho(i)=htd(j)+(xn1/xd1)*(htd(j+1)-htd(j))
1200 prod1=(hho(i)-htd(j))/(htd(j+1)-htd(j))
1201 if(znp(j).gt.0.0)
then
1202 zpp(i)=znp(j)*(znp(j+1)/znp(j))**prod1
1211 226
format(
'i,pdv,hho,zpp',i3,1x,1p3e11.3)
1218 dnm(i)=0.5d0*(zpp(i)+zpp(i+1))*(hho(i)-hho(i+1))*1.0d+5
1219 zppt(i+1)=zppt(i)+dnm(i)
1231 taum(i) = c * zppt(i) * qtt
1241 include
'common_rt1.cmn'
1243 write(*,*)
'idust',idust
1248 if(htdd(i).le.top_cld .and. htdd(i).gt.btm_cld)
then
1256 znpdd(i)=exp(-0.5d0*((htdd(i)-ht_dust)/sigma_dust)**2)
1265 include
'common_rt1.cmn'
1267 real*8 ee(klyr),uu(klyr)
1279 alfatemp=cc0+cc1*(temp101(1)-273.16)+
1280 1 cc2*(temp101(1)-273.16)**2.0
1281 tozn101(1)=alfatemp*dx(1)
1284 alfatemp=cc0+cc1*(0.5d0*(temp101(i)+temp101(i+1))-273.16)+
1285 1 cc2*(0.5d0*(temp101(i)+temp101(i+1))-273.16)**2.0
1286 tozn101(i)=tozn101(i-1)+alfatemp*dx(i)
1293 write(2,100)j,ppo(j),dx(j),x(j),tozn101(j)
1294 100
format(
'i,ppo,dx,x,tozn101',i4,1x,1p4e11.3)
1297 call spline(pdv(i),ppo,tozn101,n,in,tauo3z,il,iu,vl,vu,ee,uu)
1305 subroutine convtc (num,nchar, loc)
1345 integer istart, irem, itemp
1360 do 100 i = nchar, istart, -1
1362 loc(i) = char(irem - itemp * 10 + ichar(
'0'))
1369 if (irem.ne.0) loc(1) =
'*'
1376 include
'common_rt1.cmn'
1386 temp1(i)=dlog(ppodd(k))
1389 qcldtop=(pcldtop*1.0d3)
1390 qcldbtm=(pcldbtm*1.0d3)
1391 qcldtoplg=dlog(qcldtop)
1392 qcldbtmlg=dlog(qcldbtm)
1393 call linear(qcldtoplg,temp1,temp2,nm,hcldtop)
1394 call linear(qcldbtmlg,temp1,temp2,nm,hcldbtm)
1398 diff=dabs(ppodd(1)-qcldtop)
1401 diffx=dabs(ppodd(i)-qcldtop)
1402 if(diffx.le.
diff)
then
1408 diff=dabs(ppodd(1)-qcldbtm)
1410 diffx=dabs(ppodd(i)-qcldbtm)
1411 if(diffx.le.
diff)
then
1422 if(i.ge.kmdx .and. i.le.kndx)znpdd(i)=1.0d0