FORTRAN Generation
(/./ftp/cats/B/astorb)

Conversion of standardized ReadMe file for file /./ftp/cats/B/astorb 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 2017-Sep-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__=--2147483648.)  	! NULL real number
      parameter  (iNULL__=(-2147483647-1))	! NULL int  number
      integer    idig			! testing NULL number

C=============================================================================
Cat. B/astorb       Orbits of Minor Planets                     (Bowell+ 2014)
*================================================================================
*The Asteroid Orbital Elements Database, version 2017-Sep-17
*       Bowell E.
*      <Lowell Observatory (1999-2014)>
C=============================================================================

C  Internal variables

      integer*4 i__

c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 

C  Declarations for 'astorb.dat'	! The catalog of Orbits (2014-01-05)

      integer*4 nr__
      parameter (nr__=734539)	! Number of records
      character*276 ar__   	! Full-size record

      integer*4     Planet     (nr__) ! [1,]?+ Asteroid number (blank if unnumbered)
      character*18  Name       (nr__) ! Name or preliminary designation.
      character*15  CompName   (nr__) ! Orbit Computer.
      real*4        H          (nr__) ! (mag) Absolute magnitude H parameter (1)
      real*4        G          (nr__) ! Slope magnitude parameter (1)
      real*4        B_V        (nr__) ! (mag) ? Color index (see E.F.Tedesco, pp.1090-1138)
      real*4        Diam       (nr__) ! (km) ? IRAS diameter (see E.F.Tedesco,
*                                    pp.1151-1161; catalog <II/190>)
      character*4   IRAScl     (nr__) ! IRAS Taxonomic classification
      integer*4     Xflg       (nr__) ! [0/31] Planet-crossing code (4)
      integer*4     Oflg       (nr__) ! [0/255] Orbit computation code (5)
      integer*4     Sflg       (nr__) ! [0/31] Survey observation code (6)
      integer*4     MPCC       (nr__) ! [0/7] MPC critical-list code (7)
      integer*4     LowC       (nr__) ! [0/5] Lowell Observatory discovery code (8)
      integer*4     FlaC       (nr__) ! [0/10] Flagstaff Station Code (9)
      integer*4     Narc       (nr__) ! Orbital arc, days, spanned by observations
*                                   used in orbit computation.
      integer*4     Nobs       (nr__) ! Number of observations used in orbit
*                                   computation.
      character*8   Epoch      (nr__) ! ("YYYYMMDD") Epoch of osculation, yyyymmdd (TDT) (2)
      real*8        M          (nr__) ! (deg) Mean anomaly (3)
      real*8        omega      (nr__) ! (deg) Argument of perihelion (3)
      real*8        Omega_1    (nr__) ! (deg) Longitude of ascending node (3)
      real*8        i          (nr__) ! (deg) Inclination (3)
      real*8        e          (nr__) ! Eccentricity (3)
      real*8        a          (nr__) ! (AU) Semimajor axis (3)
      integer*4     DateOrb    (nr__) ! ("YYYYMMDD") Date of orbit computation
      real*4        CEU        (nr__) ! (arcsec) ?=0 Current Ephemeris Uncertainty (10)
      real*4        dCEU       (nr__) ! (arcsec/d) ?=0 Rate of change of CEU (10)
      integer*4     DateCEU    (nr__) ! ("YYYYMMDD") ?=0 Date of CEU
      real*4        PEU0       (nr__) ! (arcsec) ?=0 Next Peak Ephemeris Uncertainty (PEU) (11)
      integer*4     DatePEU0   (nr__) ! ("YYYYMMDD") ?=0 Date of PEU0
      real*4        PEU1       (nr__) ! (arcsec) ?=0 Largest PEU in 10 years from DatePEU0 (11)
      integer*4     DatePEU1   (nr__) ! ("YYYYMMDD") ?=0 Date of PEU1
      real*4        PEU2       (nr__) ! (arcsec) ?=0 As PEU1, assuming that two observations
*                                   were made at DatePEU0 (11)
      integer*4     DatePEU2   (nr__) ! ("YYYYMMDD") ?=0 Date of PEU2
      character*1   mod        (nr__) ! [a*] added or updated (12)
      integer*4     modDate    (nr__) ! ("YYYYMMDD") ? Date of last modification (12)
*Note (1):
*    Absolute magnitude H, mag [see E. Bowell et al., pp. 549-554, in
*    "Asteroids II", R. P. Binzel et al. (eds.), The University of Arizona
*    Press, Tucson, 1989 and more recent Minor Planet Circulars].
*    Note that H may be given to 2 decimal places (e.g., 13.41), 1 decimal
*    place (13.4) or zero decimal (13.), depending on its estimated
*    accuracy. H is given to two decimal places for all unnumbered
*    asteroids, even though it may be very poorly known.
*Note (2):
*    The epoch is the Julian date (TDT) ending in 00.5 nearest the date the
*    file was created. Thus, as the file is updated, epochs will succeed
*    each other at 100-day intervals on or after Julian dates ending in
*    50.5 (19960308, 19960616, 19960924, 19970102,...)
*Note (3): the osculating elements are heliocentric, on J2000
*Note (4): Planet-crossing asteroids
*    (Note: Because some orbits are very poor (or erroneously linked),
*    there may be errors in assignment of these parameter values)
*    The values are:
*      1 =  Earth-crossing asteroid (ECA), according to Shoemaker et al.'s
*           definition (In "Asteroids", pp. 253-282, T. Gehrels, ed., The
*           University of Arizona Press, Tucson, 1979 ). Some ECAs are
*           currently Amors (q.v.). ECAs have been identified prior to May
*           1991. After that date, asteroids having q < 1.0167 AU have been
*           assumed to be ECAs. Thus, in the latter group, some may not be
*           ECAs, and some asteroids assumed to be Amors may be ECAs.
*      2 =  Asteroids having perihelia less than the aphelion distance of the
*           Earth (1.0167 AU), but which are not ECAs.
*      4 =  Amors (1.0167 < q < 1.3 AU) (but see also type 1).
*      8 =  Mars crossers (1.3 < q < 1.6660 AU).
*     16 =  Outer-planet crossers (excluding Jupiter Trojans).
*      n =  Asteroids (excluding Mars and Jupiter Trojans) that cross both
*           inner- and outer-planet orbits. For example, n=24 crosses the
*           orbits of Mars (q < 1.6660 AU) and Jupiter (Q > 4.950 AU).
*Note (5): Orbit computation.
*      1 =  Orbits derived from uncertainly, perhaps erroneously linked
*           observations.
*      2 =  Eccentricity assumed.
*      4 =  Eccentricity and semimajor axis assumed.
*      8 =  For numbered asteroids, omitted observations have resulted in
*           degradation of a so-called orbit-quality parameter (OQP, see K.
*           Muinonen and E. Bowell, Icarus 104, 255-279, 1993), generally by
*           more than 0.1. The corresponding ephemeris uncertainty has
*           increased by about 25% or more.
*     16 =  OQP degrades by more than 0.1 if unsubstantiated observations
*           (e.g., one-night apparitions) are omitted.
*     32 =  Orbit derived from data containing observations not in
*           Minor Planet Center files
*     64 =  H is unknown; H = 14 mag assumed.
*    128 =  Asteroid sought, but not found.
*      n  = Sum of preceding entries. For example, n=3 pertains to an
*           uncertainly linked orbit for which the eccentricity was assumed.
*Note (6): Asteroids observed during the course of major surveys.
*    Our definition includes asteroids that were observed but not
*    discovered during the course of a survey.
*      1 =  Palomar-Leiden survey (PLS) asteroids.
*      2 =  Palomar-Leiden T-2 survey asteroids.
*      4 =  Palomar-Leiden T-3 survey asteroids.
*      8 =  U.K. Schmidt Telescope-Caltech asteroid survey (UCAS) asteroids.
*     16 =  Palomar-Leiden T-1 survey asteroids.
*      n =  Asteroids observed in more than one survey. For example, n=3
*           denotes an asteroid observed in both the PLS and T-2 surveys.
*Note (7): Minor Planet Center (MPC) critical-list numbered asteroids.
*      1 =  Lost asteroid.
*      2 =  Asteroids observed at only two apparitions.
*      3 =  Asteroids observed at only three apparitions.
*      4 =  Asteroids observed at four or more apparitions, last more than
*           ten years ago.
*      5 =  Asteroids observed at four or more apparitions, only one night in
*           last ten years.
*      6 =  Other poorly observed asteroids observed at four or more
*           apparitions.
*      7 =  Absolute magnitude poorly known (not on MPC critical-list).
*Note (8): Lowell Observatory and related discoveries
*      1 =  Asteroids discovered by E. Bowell.
*      2 =  Non-Bowell discoveries from Lowell search programs.
*      3 =  Discovered jointly by E. Bowell and another person connected
*           with Lowell search programs.
*Note (9): Rank, in decreasing importance, for our collaborative
*     program of astrometry using the transit circle of the
*     U.S. Naval Observatory Flagstaff Station.
*     10 =  Exceptionally important, to be observed frequently. Principally
*           space mission targets and occultation candidates.
*      9 =  Asteroids useful for mass determination.
*      8 =  Asteroids for which one or two additional nights' observation
*           are required to satisfy orbit-update requirements. Asteroids
*           of type 6:7 whose ephemeris uncertainties are between 2 and 5
*           arcsec within the next ten years or so.
*      7 =  Bowell unnumbered discoveries whose ephemeris uncertainties
*           are less than 2 arcsec within the next ten years or so. MPC
*           critical-list asteroids.
*      6 =  Planet-crossers of type 6:5.
*      5 =  Numbered asteroids whose ephemeris uncertainties are between
*           2 and 5 arcsec within the next ten years or so. Unnumbered
*           asteroids that should be numberable after one or two more
*           nights' observation.
*Note (10): The current 1-{sigma} ephemeris uncertainty CEU and its rate
*    of change dCEU indicate whether an asteroid ought to be located in an
*    observer's field of view. A CEU greater than all three of the peak
*    ephemeris uncertainties (PEU) implies that the asteroid's ephemeris
*    uncertainty is currently greater than at any time in the next ten
*    years. Such asteroids are prime targets for observation because their
*    orbits are subject to the greatest improvement for years to come. Note
*    that, because ephemeris uncertainties have been computed using 2-body
*    rather than n-body error propagation (see K. Muinonen and E. Bowell,
*    Icarus 104, 255-279, 1993), uncertainties for Earth-approaching
*    asteroids may have been misestimated by a factor of several.
*Note (11): Peak ephemeris uncertainties generally occur
*    near opposition or conjunction (the latter are more prevalent for
*    Earth-crossing asteroids). The next PEU [parameter PEU0] usually
*    indicates the best time to make astrometric observations for orbit
*    improvement, as will the PEU over the next 10 years [parameter PEU1].
*    Special effort should be made to observe asteroids whose next PEUs are
*    the greatest during the next 10 years [i.e., parameter PEU0 exceeds
*    both parameters PEU1 and PEU2]. Parameter PEU2 may be used to quantify
*    the amount of orbital improvement that would result from observing at
*    or near the date of next PEU. For example, if the next PEU is 1.2D+02
*    arcsec, and parameter PEU2 has value 6.0D+00 arcsec, a 20-fold
*    ephemeris improvement (and approximately equal improvement in the
*    uncertainties of the orbital elements) could be made. Note that
*    numbered asteroids whose orbits are satisfactory have all three PEUs
*    less than about 2 arcsec (absolute). Consequently, numbered asteroids
*    whose ephemeris uncertainties, as indicated by the CEU and PEUs, at
*    any time exceed about 2 arcsec should be targeted for observation.
*    Unnumbered asteroids whose ephemeris uncertainties [as per parameter
*    PEU2] could be brought below about 2 arcsec, would probably then be
*    candidates for numbering. A parameter PEU2 PEU greater than a
*    parameter PEU1 PEU implies that observing at or near the date of the
*    next PEU [parameter PEU0] may actually cause ephemeris and orbit
*    degradation. Thus, there is no point in making such observations
*    unless they are numerous and/or of high accuracy.
*Note (12): the two columns "mod" and "modDate" are added at CDS and
*    precises the date of the last modification of the number of
*    observations (columns "Nobs" and "Narc"). The column "mod" contains
*    an "a" for the date of addition of the asteroid, and a "*" for the
*    date of last change in the number of observations. Note that the
*    date is only approximative to about 1 week.

C=============================================================================

C  Loading file 'astorb.dat'	! The catalog of Orbits (2014-01-05)

C  Format for file interpretation

    1 format(
     +  I6,1X,A18,1X,A15,1X,F5.2,1X,F5.2,1X,F4.2,1X,F5.1,1X,A4,2X,I3,
     +  1X,I3,1X,I3,1X,I3,1X,I3,1X,I3,1X,I5,1X,I4,1X,A8,1X,F10.6,1X,
     +  F10.6,1X,F10.6,F10.6,1X,F10.8,F13.8,1X,I8,1X,E7.1,1X,E8.1,1X,
     +  I8,1X,E7.1,1X,I8,1X,E7.1,1X,I8,1X,E7.1,1X,I8,A1,I8)

C  Effective file loading

      open(unit=1,status='old',file=
     +'astorb.dat')
      write(6,*) '....Loading file: astorb.dat'
      do i__=1,734539
        read(1,'(A276)')ar__
        read(ar__,1)
     +  Planet(i__),Name(i__),CompName(i__),H(i__),G(i__),B_V(i__),
     +  Diam(i__),IRAScl(i__),Xflg(i__),Oflg(i__),Sflg(i__),MPCC(i__),
     +  LowC(i__),FlaC(i__),Narc(i__),Nobs(i__),Epoch(i__),M(i__),
     +  omega(i__),Omega_1(i__),i(i__),e(i__),a(i__),DateOrb(i__),
     +  CEU(i__),dCEU(i__),DateCEU(i__),PEU0(i__),DatePEU0(i__),
     +  PEU1(i__),DatePEU1(i__),PEU2(i__),DatePEU2(i__),mod(i__),
     +  modDate(i__)
        if(ar__(1:6) .EQ. '') Planet(i__) = iNULL__
        if(ar__(55:58) .EQ. '') B_V(i__) = rNULL__
        if(ar__(60:64) .EQ. '') Diam(i__) = rNULL__
        if(ar__(269:276) .EQ. '') modDate(i__) = iNULL__
c    ..............Just test output...........
        write(6,1)
     +  Planet(i__),Name(i__),CompName(i__),H(i__),G(i__),B_V(i__),
     +  Diam(i__),IRAScl(i__),Xflg(i__),Oflg(i__),Sflg(i__),MPCC(i__),
     +  LowC(i__),FlaC(i__),Narc(i__),Nobs(i__),Epoch(i__),M(i__),
     +  omega(i__),Omega_1(i__),i(i__),e(i__),a(i__),DateOrb(i__),
     +  CEU(i__),dCEU(i__),DateCEU(i__),PEU0(i__),DatePEU0(i__),
     +  PEU1(i__),DatePEU1(i__),PEU2(i__),DatePEU2(i__),mod(i__),
     +  modDate(i__)
c    .......End.of.Just test output...........
      end do
      close(1)

C=============================================================================
      stop
      end