CHARACTER*40 INFILE,FILENAME LOGICAL EFLG real*8 M1(3,4),M2(3,4),M3(3,4),M(3,4),ACC(3,4) REAL*8 P1(3),P2(3),T(3) character*40 string INTEGER*4 MM,NN,I,J c read operator into m1 5 WRITE(6,*)'ENTER NAME OF rot-trans op (.o):' READ(5,1200) INFILE 1200 FORMAT(A) IF (INFILE(:5).EQ.' ') STOP INQUIRE(FILE=INFILE, NAME=FILENAME,EXIST=EFLG) IF (.NOT.EFLG) GOTO 5 OPEN (UNIT=2,FILE=INFILE,STATUS='OLD',READONLY) c READ(2,*) '.SPACE_GROUP_operators r 12 (3f12.7)' READ(2,'(A40)') string do 50 j=1,4 C50 read(2,1151)(M1(I,J),I=1,3) 50 read(2,*)(M1(I,J),I=1,3) 1151 FORMAT(3f14.7) CLOSE(UNIT=2) MM=3 NN=4 CALL MATPRN (M1,MM,NN) write (6,1161) ((M1(i,j),j=1,3),i=1,3) write (6,1162) (M1(i,4),i=1,3) 1161 format(' ROTATION MATRIX',9F10.6 ) 1162 format(' SHIFT ',9F10.4 ) WRITE(6,*) 'ENTER NAME FOR output of resulting PDBSET.COM:' READ(5,1200) filename open (unit=3,name=FILENAME,status='unknown') WRITE(3,*)' pdbset xyzin a.pdb xyzout b.pdb <