subroutine rdzen(nopr,iout,& num,numqf0,numqf1,lons,lats,& zensun,zensensor,azsun,azsensor,& phidiffs) ! ***** integer, parameter :: numlatmax=100 integer :: idat,nopr,iout,num,i,j character(len=80) :: header ! see rdzen.f90 for Lite file averages integer :: numqf0(numlatmax),numqf1(numlatmax) real :: lons(numlatmax),lats(numlatmax) real :: zensun(numlatmax),zensensor(numlatmax) real :: azsun(numlatmax),azsensor(numlatmax) real :: phidiffs(numlatmax) ! ***** ! First couple lines of task310.dat ! task310: num ! 16 ! task310: fileone ! /ur/massie/oco2_pattern/task300/litefiles/oco2_LtCO2_200612_B11014Ar_220902223013s.nc4 ! task310: i,numqf0(i),numqf1(i),lons(i),lats(i),zensun(i),zensensor(i),azsun(i),azsensor(i),phidiffs(i) ! 1 8 20 -137.0095 25.1448 17.1009 13.5284 267.4379 ! 88.2799 -179.1580 ! 2 325 88 -136.3994 22.7877 17.6318 13.9234 275.0064 ! 96.0922 -178.9142 ! ***** ! Output ascii file f.out idat=10 open(idat,form='formatted',file='task310.dat',status='unknown') ! ***** ! Read in the data read(idat,fmt=100) header read(idat,*) num read(idat,fmt=100) header read(idat,fmt=100) header read(idat,fmt=100) header 100 format(a80) do i=1,num read(idat,fmt=200) j,numqf0(i),numqf1(i),lons(i),lats(i),& zensun(i),zensensor(i),azsun(i),azsensor(i),phidiffs(i) enddo 200 format(2x,i3,2(1x,i4),7(1x,f10.4)) ! ***** ! close the input data file close (idat) ! ***** ! Write out input data to tyhe f.out ascii file if (nopr .eq. 1) then write(iout,fmt=300) 300 format(/,2x,"rdzen: i,numqf0(i),numqf1(i),lons(i),lats(i),",/,& 2x,"zensun(i),zensensor(i),azsun(i),azsensor(i),phidiffs(i)") do i=1,num phidiffs(i)=abs(azsun(i)-azsensor(i)) write(iout,fmt=200) i,numqf0(i),numqf1(i),lons(i),lats(i),& zensun(i),zensensor(i),azsun(i),azsensor(i),phidiffs(i) end do end if ! ***** return end