c combine output from several runs of this using c combhist.for CHARACTER*40 INFILE,FILENAME LOGICAL EFLG real*4 z(100) INTEGER*4 count(100,21),I,J,k 1200 FORMAT(A) 6 WRITE(6,*) 'ENTER NAME OF pdbhist file:' READ(5,1200) INFILE IF (INFILE(:5).EQ.' ') STOP INQUIRE(FILE=INFILE, NAME=FILENAME,EXIST=EFLG) IF (.NOT.EFLG) GOTO 6 k=1 40 write (6,*)INFILE OPEN (UNIT=2,FILE=INFILE,STATUS='OLD',READONLY) do 50 i=1,4 50 read(2,1200,end=60) infile 54 i=1 55 read(2,*,end=60) z(i),count(i,k) i=i+1 goto 55 60 CLOSE(UNIT=2) write (6,*) 'number of bins:', i 66 WRITE(6,*) 'ENTER NAME OF NEXT pdbhist file:' READ(5,1200) INFILE IF (INFILE(:5).EQ.' ') goto 80 INQUIRE(FILE=INFILE, NAME=FILENAME,EXIST=EFLG) IF (.NOT.EFLG) GOTO 66 k=k+1 goto 40 80 n=i-1 m=k do 90 i=1,n 90 write(6,91) i,z(i),(count(i,k),k=1,m) 91 format(i4,f8.2,I6,20i5) do 95 i=1,n 95 write(6,96) i,z(i),count(i,1),(float(count(i,k))/ . float(count(i,1)),k=2,m) 96 format(i4,f8.2,I6, 20f5.2) END