Ed: I have run the tigcm post-processor on a history made from one of Barb Emery's runs. The date is March 30, 1992 (model day 30), at ut=0 (beginning ut of the day). I contoured the neutral winds at ZP=+1, and fof2 and hmf2 on global maps. These four frames are in a postscript file on anonymous ftp on the machine hao.hao.ucar.edu in the directory pub/foster, with the file name m92nse.ps. Here is a summary of the header for this history (note hp,cp,by, and f10.7 fluxes at the end): ------------------------- TGCM HEADER SUMMARY -------------------------- HISTORY VOLUME = HIST93.M92NSE MODEL DAY:HR:MIN = 30: 0: 0 iter nday nhr nmin = 14400 30 0 0 label(1-5) = March 28-29, 1992, AMIE NH and SH 11/93 date = 1992 89 output(1) = EMERY HIST93 M92NSC output(2) = EMERY HIST93 M92NSD start = 28 19 0 stp = 30 0 0 0 0 0 hist = 0 1 0 0 0 0 sav = 0 1 0 step = 180 mag = -74.500 127.000 79.000 -70.000 difhor,iuivi = 1 1 sdtide = 0.1500E+05 0.1000E+04 0.2800E+05 0.1000E+04 0.2000E+04 0.1030E+02 0.5800E+01 0.7600E+01 0.8300E+01 0.8400E+01 dtide = 0.0000E+00 0.0000E+00 ipower,aurora,dispos = 1 1 1 data = ROBLE RGR87 IONSTS source = EMERY HIST93 M92N8B sourct = 28 19 0 rdate = 11/20/93 naurp = 3 hp = 105.03 cp = 67.87 byimf = 0.00 colfac = 1.50 f107d = 187.2500 f107a = 180.0000 ------------------------------------------------------------------------ Also in the same anonymous ftp directory is an ascii file called m92nse.dat, which contains the data for each of the four frames. Below is a little fortran program to help you see how to read the ascii file. So this is a first cut. Let me know when you have transferred the files so I can delete them. Then let me know what else you need and we'll go from there. --Ben program rdascii c character*40 fname character*80 histvol,field,lab,labx,laby character*1 ans dimension xx(100),yy(100),f(100,100) data lurd/9/ c do 200 iii=1,1000 write(6,"(' ')") write(6,"('Enter file name (zzz to stop): ',$)") read(5,*) fname if (fname(1:3).eq.'zzz') stop 'bye' open(lurd,file=fname,status='OLD',err=901) write(6,"('Ask about printing for every frame in the', + ' file? (y/n): ',$)") read(5,*) ans iprompt = 0 if (ans.eq.'y') iprompt = 1 nfr = 0 c c Read data from each frame: c 100 continue read(lurd,"(a)",end=900) histvol read(lurd,"(a)") field read(lurd,"(6x,i4)") iframe read(lurd,"(a)") lab read(lurd,"(a)") labx read(labx,"(3x,i4)") nx if (nx.gt.1) read(lurd,"(6e13.5)") (xx(i),i=1,nx) read(lurd,"(a)") laby read(laby,"(3x,i4)") ny if (ny.gt.1) read(lurd,"(6e13.5)") (yy(i),i=1,ny) c if (nx.gt.1.and.ny.gt.1) then read(lurd,"(6e13.5)") ((f(i,ii),i=1,nx),ii=1,ny) elseif (nx.eq.1.and.ny.gt.1) then read(lurd,"(6e13.5)") (f(1,i),i=1,ny) elseif (ny.eq.1.and.nx.gt.1) then read(lurd,"(6e13.5)") (f(i,1),i=1,nx) endif nfr = nfr+1 c c Conditionally echo to stdout: c write(6,"(' ')") write(6,"(a)") histvol(1:lenstr(histvol)) write(6,"(a)") field(1:lenstr(field)) write(6,"('Frame ',i4)") iframe write(6,"(a)") lab(1:lenstr(lab)) write(6,"(a)") labx(1:lenstr(labx)) if (nx.gt.1) then if (nfr.eq.1.or.iprompt.gt.0) then write(6,"('Print x-axis values? (y/n/q): ',$)") read(5,*) ans else ans = 'n' endif if (ans.eq.'y') write(6,"(6e13.5)") (xx(i),i=1,nx) if (ans.eq.'q') goto 902 endif write(6,"(a)") laby(1:lenstr(laby)) if (ny.gt.1) then if (nfr.eq.1.or.iprompt.gt.0) then write(6,"('Print y-axis values? (y/n/q): ',$)") read(5,*) ans else ans = 'n' endif if (ans.eq.'y') write(6,"(6e13.5)") (yy(i),i=1,ny) if (ans.eq.'q') goto 902 endif if (nfr.eq.1.or.iprompt.gt.0) then write(6,"('Print data values? (y/n/q): ',$)") read(5,*) ans else ans = 'n' endif if (ans.eq.'y') then if (nx.gt.1.and.ny.gt.1) then write(6,"(6e13.5)") ((f(i,ii),i=1,nx),ii=1,ny) elseif (nx.eq.1.and.ny.gt.1) then write(6,"(6e13.5)") (f(1,i),i=1,ny) elseif (ny.eq.1.and.nx.gt.1) then write(6,"(6e13.5)") (f(i,1),i=1,nx) endif endif if (ans.eq.'q') goto 902 goto 100 c stop 900 continue write(6,"('EOF encountered on file ',a,' (lu ',i3,')')") + fname,lurd 902 close(lurd) goto 200 901 write(6,"('Error opening file ',a)") fname 200 continue stop end c ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc c function lenstr(str) character*(*) str c c Return index to last non-blank char in str c length = len(str) do i=length,1,-1 if (str(i:i).ne.' ') then lenstr = i return endif enddo lenstr = 0 return end c subroutine clearstr(str) c c Set given string to all blanks c character*(*) str length = len(str) do i=1,length str(i:i) = ' ' enddo return end c ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc c