CDS.headStuff2
FORTRAN Generation
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.81 (2015-09-23), on 2024-Apr-18 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__=--2147483648.) ! NULL real number parameter (iNULL__=(-2147483647-1)) ! NULL int number integer idig ! testing NULL number C============================================================================= Cat. VIII/24 6C Survey of Radio Sources - V. (Hales+ 1993) *================================================================================ *The 6C Survey of Radio Sources - V. The zones 6C-Va (48<Dec<68, 01h34<RA<06h14) *and 6C-Vb (48<Dec<68, 17h16<RA<20h24) * Hales S.E.G., Masson C.R., Warner P.J., Baldwin J.E., Green D.A. * <Mon. Not. R. Astron. Soc. 262, 1057 (1993)> * =1993MNRAS.262.1057H C============================================================================= C Internal variables integer*4 i__ c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for '6c5a.dat' ! 48<Dec<68, 01h34<RA<06h14 integer*4 nr__ parameter (nr__=2229) ! Number of records character*47 ar__ ! Full-size record C B1950 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg (nr__) ! (deg) Right Ascension B1950 real*8 DEdeg (nr__) ! (deg) Declination B1950 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh (nr__) ! (h) Right Ascension B1950 (hours) integer*4 RAm (nr__) ! (min) Right Ascension B1950 (minutes) real*4 RAs (nr__) ! (s) Right Ascension B1950 (seconds) character*1 DE_ (nr__) ! Declination B1950 (sign) integer*4 DEd (nr__) ! (deg) Declination B1950 (degrees) integer*4 DEm (nr__) ! (arcmin) Declination B1950 (minutes) integer*4 DEs (nr__) ! (arcsec) Declination B1950 (seconds) real*4 F151p (nr__) ! (Jy) [0.19/79] Flux density (peak) real*4 F151i (nr__) ! (Jy) [0.46/79]? Flux density (integrated) character*1 n_F151i (nr__) ! [*-] Reason for missing F151i (1) integer*4 Map (nr__) ! [1/36] Contour map panel number character*7 Field (nr__) ! Contour map field name ("0300+58", "0500+58", * or 1900+58") *Note (1): Meaning of the symbols: * - (dash) = the peak was not strong enough to calculate the integrated flux * * (asterisk) = the peak flux was strong enough to qualify for integration, * but it has been integrated into a brighter adjoining peak. c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C Declarations for '6c5b.dat' ! 48<Dec<68, 17h16<RA<20h24 integer*4 nr__1 parameter (nr__1=1229) ! Number of records character*47 ar__1 ! Full-size record C B1950 position composed of: RAh RAm RAs DE- DEd DEm DEs real*8 RAdeg_1 (nr__1) ! (deg) Right Ascension B1950 real*8 DEdeg_1 (nr__1) ! (deg) Declination B1950 C ---------------------------------- ! (position vector(s) in degrees) integer*4 RAh_1 (nr__1) ! (h) Right Ascension B1950 (hours) integer*4 RAm_1 (nr__1) ! (min) Right Ascension B1950 (minutes) real*4 RAs_1 (nr__1) ! (s) Right Ascension B1950 (seconds) character*1 DE__1 (nr__1) ! Declination B1950 (sign) integer*4 DEd_1 (nr__1) ! (deg) Declination B1950 (degrees) integer*4 DEm_1 (nr__1) ! (arcmin) Declination B1950 (minutes) integer*4 DEs_1 (nr__1) ! (arcsec) Declination B1950 (seconds) real*4 F151p_1 (nr__1) ! (Jy) [0.19/79] Flux density (peak) real*4 F151i_1 (nr__1) ! (Jy) [0.46/79]? Flux density (integrated) character*1 n_F151i_1 (nr__1) ! [*-] Reason for missing F151i (1) integer*4 Map_1 (nr__1) ! [1/36] Contour map panel number character*7 Field_1 (nr__1) ! Contour map field name ("0300+58", "0500+58", * or 1900+58") *Note (1): Meaning of the symbols: * - (dash) = the peak was not strong enough to calculate the integrated flux * * (asterisk) = the peak flux was strong enough to qualify for integration, * but it has been integrated into a brighter adjoining peak. C============================================================================= C Loading file '6c5a.dat' ! 48<Dec<68, 01h34<RA<06h14 C Format for file interpretation 1 format( + I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,2X,F5.2,2X,F5.2,A1,1X, + I3,1X,A7) C Effective file loading open(unit=1,status='old',file= +'6c5a.dat') write(6,*) '....Loading file: 6c5a.dat' do i__=1,2229 read(1,'(A47)')ar__ read(ar__,1) + RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),DEm(i__), + DEs(i__),F151p(i__),F151i(i__),n_F151i(i__),Map(i__), + Field(i__) if(ar__(30:34) .EQ. '') F151i(i__) = rNULL__ RAdeg(i__) = rNULL__ DEdeg(i__) = rNULL__ c Derive coordinates RAdeg and DEdeg from input data c (RAdeg and DEdeg are set to rNULL__ when unknown) if(RAh(i__) .GT. -180) RAdeg(i__)=RAh(i__)*15. if(RAm(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAm(i__)/4. if(RAs(i__) .GT. -180) RAdeg(i__)=RAdeg(i__)+RAs(i__)/240. if(DEd(i__) .GE. 0) DEdeg(i__)=DEd(i__) if(DEm(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEm(i__)/60. if(DEs(i__) .GE. 0) DEdeg(i__)=DEdeg(i__)+DEs(i__)/3600. if(DE_(i__).EQ.'-'.AND.DEdeg(i__).GE.0) DEdeg(i__)=-DEdeg(i__) c ..............Just test output........... write(6,1) + RAh(i__),RAm(i__),RAs(i__),DE_(i__),DEd(i__),DEm(i__), + DEs(i__),F151p(i__),F151i(i__),n_F151i(i__),Map(i__), + Field(i__) write(6,'(6H Pos: 2F8.4)') RAdeg(i__),DEdeg(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= C Loading file '6c5b.dat' ! 48<Dec<68, 17h16<RA<20h24 C Format for file interpretation 2 format( + I2,1X,I2,1X,F4.1,1X,A1,I2,1X,I2,1X,I2,2X,F5.2,2X,F5.2,A1,1X, + I3,1X,A7) C Effective file loading open(unit=1,status='old',file= +'6c5b.dat') write(6,*) '....Loading file: 6c5b.dat' do i__=1,1229 read(1,'(A47)')ar__1 read(ar__1,2) + RAh_1(i__),RAm_1(i__),RAs_1(i__),DE__1(i__),DEd_1(i__), + DEm_1(i__),DEs_1(i__),F151p_1(i__),F151i_1(i__), + n_F151i_1(i__),Map_1(i__),Field_1(i__) if(ar__1(30:34) .EQ. '') F151i_1(i__) = rNULL__ RAdeg_1(i__) = rNULL__ DEdeg_1(i__) = rNULL__ c Derive coordinates RAdeg_1 and DEdeg_1 from input data c (RAdeg_1 and DEdeg_1 are set to rNULL__ when unknown) if(RAh_1(i__) .GT. -180) RAdeg_1(i__)=RAh_1(i__)*15. if(RAm_1(i__) .GT. -180) RAdeg_1(i__)=RAdeg_1(i__)+RAm_1(i__)/4. if(RAs_1(i__) .GT. -180) RAdeg_1(i__)=RAdeg_1(i__)+RAs_1(i__)/240. if(DEd_1(i__) .GE. 0) DEdeg_1(i__)=DEd_1(i__) if(DEm_1(i__) .GE. 0) DEdeg_1(i__)=DEdeg_1(i__)+DEm_1(i__)/60. if(DEs_1(i__) .GE. 0) DEdeg_1(i__)=DEdeg_1(i__)+DEs_1(i__)/3600. if(DE__1(i__).EQ.'-'.AND.DEdeg_1(i__).GE.0) DEdeg_1(i__)=-DEdeg_1(i__) c ..............Just test output........... write(6,2) + RAh_1(i__),RAm_1(i__),RAs_1(i__),DE__1(i__),DEd_1(i__), + DEm_1(i__),DEs_1(i__),F151p_1(i__),F151i_1(i__), + n_F151i_1(i__),Map_1(i__),Field_1(i__) write(6,'(6H Pos: 2F8.4)') RAdeg_1(i__),DEdeg_1(i__) c .......End.of.Just test output........... end do close(1) C============================================================================= stop end