Conversion of standardized ReadMe file for
catalog into FORTRAN code for loading all data files into arrays.
Note that special values are assigned to unknown or unspecified
numbers (also called NULL numbers);
when necessary, the coordinate components making up the right ascension
and declination are converted into floating-point numbers
representing these angles in degrees.
program load_ReadMe
C=============================================================================
C F77-compliant program generated by readme2f_1.5, on 2013-May-25
C=============================================================================
* This code was generated from the ReadMe file documenting a catalogue
* according to the "Standard for Documentation of Astronomical Catalogues"
* currently in use by the Astronomical Data Centers (CDS, ADC, A&A)
* (see full documentation at URL http://vizier.u-strasbg.fr/doc/catstd.htx)
* Please report problems or questions to
C=============================================================================
implicit none
* Unspecified or NULL values, generally corresponding to blank columns,
* are assigned one of the following special values:
* rNULL__ for unknown or NULL floating-point values
* iNULL__ for unknown or NULL integer values
real*4 rNULL__
integer*4 iNULL__
parameter (rNULL__=-1.e37) ! NULL real number
parameter (iNULL__=-2147483647) ! NULL int number
C=============================================================================
Cat. J/other/Ap/44.88 FBS 11th list of late-type stars (Gigoyan+, 2001)
*================================================================================
*First Byurakan Spectral Sky Survey. Stars of late spectral types.
*XI. Zone -7{deg}<{delta}<-3{deg}.
* Gigoyan K.S., Abrahamyan H.V., Azzopardi M., Russeil D.
* <Astrophysics, 44, 88 (2001)>
* =2001Ap.....44...88G
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table1.dat' ! List of the new M and C stars
integer*4 nr__
parameter (nr__=88) ! Number of records
character*64 ar__ ! Full-size record
real*8 RA_ (nr__) ! (deg) Right Ascension J2000
real*8 Dec (nr__) ! (deg) Declination J2000
integer*4 Seq (nr__) ! Sequential number
character*8 FBS (nr__) ! FBS designation
character*1 m_FBS (nr__) ! Multiplicity index on FBS
character*1 n_FBS (nr__) ! [*] *: note detailed in notes.dat file
integer*4 RAh (nr__) ! (h) Right ascension (J2000)
integer*4 RAm (nr__) ! (min) Right ascension (J2000)
real*4 RAs (nr__) ! (s) Right ascension (J2000)
character*1 DE_ (nr__) ! Declination sign (J2000)
integer*4 DEd (nr__) ! (deg) Declination (J2000)
integer*4 DEm (nr__) ! (arcmin) Declination (J2000)
integer*4 DEs (nr__) ! (arcsec) Declination (J2000)
character*6 SpType (nr__) ! Spectral type
real*4 Emag (nr__) ! (mag) ? Palomar E (red) magnitude
real*4 O_E (nr__) ! (mag) ? O-E (blue-red) color index
character*14 IRAS (nr__) ! IRAS PSC (Cat. <II/125>) and FSC (Cat. <II/156>)
* identifications
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'notes.dat' ! Individual notes
integer*4 nr__1
parameter (nr__1=18) ! Number of records
character*80 ar__1 ! Full-size record
character*8 FBS_1 (nr__1) ! FBS designation
character*71 Note (nr__1) ! Text of the note
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'table1_a.dat' ! Additional position and cross-identifications (1)
integer*4 nr__2
parameter (nr__2=88) ! Number of records
character*88 ar__2 ! Full-size record
real*8 RA__1 (nr__2) ! (deg) Right Ascension J2000
real*8 Dec_1 (nr__2) ! (deg) Declination J2000
integer*4 Seq_1 (nr__2) ! Sequential number, as in table1
character*8 FBS_2 (nr__2) ! FBS designation, as in table1
character*1 n_FBS_1 (nr__2) ! [*] indicates a note in file "notes-a.dat"
integer*4 RAh_1 (nr__2) ! (h) ? Right ascension (J2000)
integer*4 RAm_1 (nr__2) ! (min) ? Right ascension (J2000)
real*4 RAs_1 (nr__2) ! (s) ? Right ascension (J2000)
character*1 DE__1 (nr__2) ! ? Declination sign (J2000)
integer*4 DEd_1 (nr__2) ! (deg) ? Declination (J2000)
integer*4 DEm_1 (nr__2) ! (arcmin) ? Declination (J2000)
real*4 DEs_1 (nr__2) ! (arcsec) ? Declination (J2000)
character*1 r_DEs (nr__2) ! [AGgMT] Source of position (1)
character*9 GSC (nr__2) ! GSC designation (Cat. <I/255>)
character*11 IRAS_1 (nr__2) ! designation (Cat. <II/125> and <II/156>)
character*5 SpType_1 (nr__2) ! Spectral type
real*4 Emag_1 (nr__2) ! (mag) ? Palomar E (red) magnitude (2)
real*4 O_E_1 (nr__2) ! (mag) ? O-E (blue-red) color index (2)
real*4 Vmag (nr__2) ! (mag) ? V magnitude from MkIII survey (II/230)
real*4 V_I (nr__2) ! (mag) ? V-I color from MkIII survey (II/230)
*Note (1): the symbols mean the following sources:
* A USNO-A2.0 (I/252)
* G GSC-ACT (I/255)
* g GSC-2.2 (I/271)
* M 2MASS second release (B/2mass)
* T Tycho-2 (2000A&A...357..367H, Cat. <I/259>)
*Note (2): magnitudes and colors were determined using image diameters
* on POSS-I prints.
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'notes_a.dat' ! Additional notes (1)
integer*4 nr__3
parameter (nr__3=34) ! Number of records
character*80 ar__3 ! Full-size record
character*8 FBS_3 (nr__3) ! FBS designation
character*71 Note_1 (nr__3) ! Text of the note
C=============================================================================
C Loading file 'table1.dat' ! List of the new M and C stars
C Format for file interpretation
1 format(
+ I2,1X,A8,A1,A1,1X,I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,1X,A6,
+ F4.1,1X,F3.1,1X,A14)
C Effective file loading
open(unit=1,file='table1.dat', status='old')
write(6,*) '....Loading file: table1.dat'
do i__=1,88
read(1,'(A64)')ar__
read(ar__,1)
+ Seq(i__),FBS(i__),m_FBS(i__),n_FBS(i__),RAh(i__),RAm(i__),
+ RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__),SpType(i__),
+ Emag(i__),O_E(i__),IRAS(i__)
if(ar__(42:45) .EQ. '') Emag(i__) = rNULL__
if(ar__(47:49) .EQ. '') O_E(i__) = rNULL__
c Derive coordinates RA_ and Dec from input data
c (RA_ and Dec are set to rNULL_ when unknown)
RA_(i__) = RAh(i__)
if(RAh(i__) .GE. 0) RA_(i__)=RAh(i__)*15.
if(RAm(i__) .GE. 0) RA_(i__)=RA_(i__)+RAm(i__)/4.
if(RAs(i__) .GE. 0) RA_(i__)=RA_(i__)+RAs(i__)/240.
Dec(i__) = DEd(i__)
if(DEm(i__) .GE. 0) Dec(i__)=Dec(i__)+DEm(i__)/60.
if(DEs(i__) .GE. 0) Dec(i__)=Dec(i__)+DEs(i__)/3600.
if(DE_(i__).EQ.'-'.AND.Dec(i__).GE.0) Dec(i__)=-Dec(i__)
c ..............Just test output...........
write(6,1)
+ Seq(i__),FBS(i__),m_FBS(i__),n_FBS(i__),RAh(i__),RAm(i__),
+ RAs(i__),DE_(i__),DEd(i__),DEm(i__),DEs(i__),SpType(i__),
+ Emag(i__),O_E(i__),IRAS(i__)
write(6,'(6H Pos: 2F8.4)') RA_(i__),Dec(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'notes.dat' ! Individual notes
C Format for file interpretation
2 format(A8,1X,A71)
C Effective file loading
open(unit=1,file='notes.dat', status='old')
write(6,*) '....Loading file: notes.dat'
do i__=1,18
read(1,'(A80)')ar__1
read(ar__1,2)FBS_1(i__),Note(i__)
c ..............Just test output...........
write(6,2)FBS_1(i__),Note(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'table1_a.dat' ! Additional position and cross-identifications (1)
C Format for file interpretation
3 format(
+ I3,2X,A8,A1,2X,I2,1X,I2,1X,F5.2,1X,A1,I2,1X,I2,1X,F4.1,1X,A1,
+ 1X,A9,1X,A11,1X,A5,1X,F4.1,1X,F3.1,2X,F4.1,1X,F3.1)
C Effective file loading
open(unit=1,file='table1_a.dat', status='old')
write(6,*) '....Loading file: table1_a.dat'
do i__=1,88
read(1,'(A88)')ar__2
read(ar__2,3)
+ Seq_1(i__),FBS_2(i__),n_FBS_1(i__),RAh_1(i__),RAm_1(i__),
+ RAs_1(i__),DE__1(i__),DEd_1(i__),DEm_1(i__),DEs_1(i__),
+ r_DEs(i__),GSC(i__),IRAS_1(i__),SpType_1(i__),Emag_1(i__),
+ O_E_1(i__),Vmag(i__),V_I(i__)
if(ar__2(17:18) .EQ. '') RAh_1(i__) = iNULL__
if(ar__2(20:21) .EQ. '') RAm_1(i__) = iNULL__
if(ar__2(23:27) .EQ. '') RAs_1(i__) = rNULL__
if(ar__2(30:31) .EQ. '') DEd_1(i__) = iNULL__
if(ar__2(33:34) .EQ. '') DEm_1(i__) = iNULL__
if(ar__2(36:39) .EQ. '') DEs_1(i__) = rNULL__
if(ar__2(71:74) .EQ. '') Emag_1(i__) = rNULL__
if(ar__2(76:78) .EQ. '') O_E_1(i__) = rNULL__
if(ar__2(81:84) .EQ. '') Vmag(i__) = rNULL__
if(ar__2(86:88) .EQ. '') V_I(i__) = rNULL__
c Derive coordinates RA__1 and Dec_1 from input data
c (RA__1 and Dec_1 are set to rNULL_ when unknown)
RA__1(i__) = RAh_1(i__)
if(RAh_1(i__) .GE. 0) RA__1(i__)=RAh_1(i__)*15.
if(RAm_1(i__) .GE. 0) RA__1(i__)=RA__1(i__)+RAm_1(i__)/4.
if(RAs_1(i__) .GE. 0) RA__1(i__)=RA__1(i__)+RAs_1(i__)/240.
Dec_1(i__) = DEd_1(i__)
if(DEm_1(i__) .GE. 0) Dec_1(i__)=Dec_1(i__)+DEm_1(i__)/60.
if(DEs_1(i__) .GE. 0) Dec_1(i__)=Dec_1(i__)+DEs_1(i__)/3600.
if(DE__1(i__).EQ.'-'.AND.Dec_1(i__).GE.0) Dec_1(i__)=-Dec_1(i__)
c ..............Just test output...........
write(6,3)
+ Seq_1(i__),FBS_2(i__),n_FBS_1(i__),RAh_1(i__),RAm_1(i__),
+ RAs_1(i__),DE__1(i__),DEd_1(i__),DEm_1(i__),DEs_1(i__),
+ r_DEs(i__),GSC(i__),IRAS_1(i__),SpType_1(i__),Emag_1(i__),
+ O_E_1(i__),Vmag(i__),V_I(i__)
write(6,'(6H Pos: 2F8.4)') RA__1(i__),Dec_1(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
C Loading file 'notes_a.dat' ! Additional notes (1)
C Format for file interpretation
4 format(A8,1X,A71)
C Effective file loading
open(unit=1,file='notes_a.dat', status='old')
write(6,*) '....Loading file: notes_a.dat'
do i__=1,34
read(1,'(A80)')ar__3
read(ar__3,4)FBS_3(i__),Note_1(i__)
c ..............Just test output...........
write(6,4)FBS_3(i__),Note_1(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end