SUBROUTINE READFK5( ISTAR, NAME, RAM, DECM, PMRA, PMDEC, PAR, RV ) C C READFK5 finds a star in the FK5 catalog and returns star name ( NAME) C position ( RAM, DECM ) in fractional hours and degrees C proper motion ( PMRA, PMDEC ) parallax (PAR), C radial velocity ( RV), V magnitude (MAG) C C written and tested, 7 Dec, 1986 David Mozurkewich C FK5 catalog added, 6 Mar, 1987 C Modified for use with SOLVE, Dec 1990 C Renamed READFK5 from CATALOG by J.T. Armstrong to distinguish it C from a similar subroutine of the same name in OI2CIT. C IMPLICIT NONE SAVE INTEGER *4 ISTAR, STARNO, LCAT, I, IERR, INAME(2) REAL *8 RAM, DECM REAL *8 PMRA, PMDEC, PAR, RV REAL *4 PMRA4, PMDEC4, PAR4, RV4, MAG4, BV4, SPECTRUM4, ANGDIA4 LOGICAL FIRST CHARACTER *8 NAME DATA FIRST / .TRUE. / DATA LCAT / 53 / C----------------------------------------------------------------------- IF ( FIRST ) THEN OPEN(UNIT=LCAT, $ FILE='/home/chummel/mark3/binafit/fk5.bin', $ RECL=60, $ FORM='UNFORMATTED', ACCESS='DIRECT', STATUS='OLD', $ IOSTAT=IERR ) IF ( IERR .NE. 0 ) THEN WRITE(0,*) ' ERROR', IERR, ' OPENING CATALOG FILE ' WRITE(0,*) ' CATALOG DIES ' STOP END IF FIRST = .FALSE. END IF C IF ( (ISTAR .LE. 0) .OR. (ISTAR.GT.2000) ) THEN WRITE(0,*) ' Bad FK5 number ', ISTAR RAM = 0.D0 DECM = 0.D0 ELSE READ( LCAT,REC=ISTAR) STARNO, INAME(1), INAME(2), RAM, DECM, $ PMRA4, PMDEC4, PAR4, RV4, MAG4, BV4, SPECTRUM4, ANGDIA4 PMRA = PMRA4 PMDEC = PMDEC4 PAR = PAR4 RV = RV4 IF ( STARNO .NE. ISTAR ) THEN WRITE(0,*) ' CATALOG is corrupt! ' WRITE(0,*) ' Record ', ISTAR, ' contains star ', STARNO WRITE(0,*) ' CATALOG bombs ' STOP END IF WRITE(NAME,'(2A4)') INAME(1), INAME(2) END IF RETURN 200 CONTINUE WRITE(0,1021) I, IERR STOP 1021 FORMAT ( ' fatal error while reading FK5.bin catalog '/ $ ' error number:', I5, ' record number:', I5/ ' too bad !') END