Conversion of standardized ReadMe file for
file /./ftp/cats/J/A_A/630/A137 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 2026-May-14
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. J/A+A/630/A137 Structure and kinematics of the Taurus region (Galli+, 2019)
*================================================================================
*Structure and kinematics of the Taurus star-forming region from Gaia-DR2 and
*VLBI astrometry.
* Galli P.A.B., Loinard L., Bouy H., Sarro L.M., Ortiz-Leon G.N.,
* Dzib S.A., Olivares J., Heyer M., Hernandez J., Roman-Zuniga C.,
* Kounkel M., Covey K.
* <Astron. Astrophys. 630, A137 (2019)>
* =2019A&A...630A.137G (SIMBAD/NED BibCode)
C=============================================================================
C Internal variables
integer*4 i__
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea1.dat' ! Proper motions, parallaxes, radial velocities
integer*4 nr__
parameter (nr__=519) ! Number of records
character*230 ar__ ! Full-size record
C J2000.0 position composed of: RAh RAm RAs DE- DEd DEm DEs
real*8 RAdeg (nr__) ! (deg) Right Ascension J2000.0
real*8 DEdeg (nr__) ! (deg) Declination J2000.0
C ---------------------------------- ! (position vector(s) in degrees)
character*23 v2MASS (nr__) ! Source identifier from 2MASS catalogue
character*28 GaiaDR2 (nr__) ! Source identifier from Gaia-DR2 catalogue
character*24 Name (nr__) ! Other source identifier
integer*4 RAh (nr__) ! (h) Right ascension (J2000.0)
integer*4 RAm (nr__) ! (min) Right ascension (J2000.0)
real*4 RAs (nr__) ! (s) Right ascension (J2000.0)
character*1 DE_ (nr__) ! Declination sign (J2000.0)
integer*4 DEd (nr__) ! (deg) Declination (J2000.0)
integer*4 DEm (nr__) ! (arcmin) Declination (J2000.0)
real*4 DEs (nr__) ! (arcsec) Declination (J2000.0)
real*8 pmRA (nr__) ! (mas/yr) ? Proper motion in right ascension
real*4 e_pmRA (nr__) ! (mas/yr) ? Error in proper motion in right ascension
real*8 pmDE (nr__) ! (mas/yr) ? Proper motion in declination
real*4 e_pmDE (nr__) ! (mas/yr) ? Error in proper motion in declination
real*4 plx (nr__) ! (mas) ? Parallax
real*4 e_plx (nr__) ! (mas) ? Error in parallax
character*7 r_astro (nr__) ! Source of astrometric data (GaiaDR2 or VLBI)
real*8 rv (nr__) ! (km/s) ? Radial velocity
real*4 e_rv (nr__) ! (km/s) ? Error in radial velocity
character*2 r_rv (nr__) ! Source of radial velocity (1)
character*2 Cluster (nr__) ! HMAC cluster
integer*4 Member (nr__) ! [0/1] Membership status
integer*4 J17 (nr__) ! [0/1] Membership status by Joncour et al.
* 2017, Cat. J/A+A/599/A14
integer*4 L18_t1 (nr__) ! [0/1] Membership status by Luhman
* 2018, Cat. J/AJ/156/271 (table 1)
integer*4 L18_t6 (nr__) ! [0/1] Membership status by Luhman
* 2018, Cat. J/AJ/156/271 (table 6)
*Note (1): References for radial velocities:
* 1 = Wilson, 1953GCRV..C......0W, Cat. III/21
* 2 = Hartmann et al., 1986ApJ...309..275H
* 3 = Hartmann et al., 1987AJ.....93..907H
* 4 = Herbig & Bell, 1988cels.book.....H, Cat. V/73
* 5 = Reipurth et al., 1990A&A...235..197R
* 6 = Duflot et al., 1995A&AS..114..269D, Cat. III/190
* 7 = Mathieu et al., 1997AJ....113.1841M
* 8 = Wichmann et al., 2000A&A...359..181W
* 9 = White & Basri, 2003ApJ...582.1109W
* 10 = Muzerolle et al., 2003ApJ...592..266M
* 11 = Gontcharov, 2006AstL...32..759G, Cat. III/252
* 12 = Torres et al., 2006A&A...460..695T, Cat. J/A+A/460/695
* 13 = Kharchenko et al., 2007AN....328..889K, Cat. J/AN/328/889
* 14 = Scelsi et al., 2008A&A...490..601S
* 15 = Nguyen et al., 2012ApJ...745..119N, Cat. J/ApJ/745/119
* 16 = Kraus et al., 2017ApJ...838..150K, Cat. J/ApJ/838/150
* 17 = Kounkel et al., 2019AJ....157..196K, Cat. J/AJ/157/196
* 18 = Gaia-DR2, 2018A&A...616A...1G, Cat. I/345
c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
C Declarations for 'tablea3.dat' ! Distance and spatial velocity
integer*4 nr__1
parameter (nr__1=174) ! Number of records
character*280 ar__1 ! Full-size record
character*23 v2MASS_1 (nr__1) ! Source identifier from 2MASS catalogue
character*28 GaiaDR2_1 (nr__1) ! Source identifier from Gaia-DR2 catalogue
character*14 Name_1 (nr__1) ! Other source identifier
real*4 dist_inv (nr__1) ! (pc) Distance from the inverse of the parallax
real*4 e_dist_inv (nr__1) ! (pc) Lower uncertainty for the distance
real*4 E_dist_inv_1(nr__1) ! (pc) Upper uncertainty for the distance
real*4 dist (nr__1) ! (pc) Distance from Bayesian inference
real*4 e_dist (nr__1) ! (pc) Lower uncertainty for the distance
real*4 E_dist_1 (nr__1) ! (pc) Upper uncertainty for the distance
real*4 Xgal (nr__1) ! (pc) X-coordinate
real*4 e_Xgal (nr__1) ! (pc) Lower uncertainty of X
real*4 E_Xgal_1 (nr__1) ! (pc) Upper uncertainty of X
real*4 Ygal (nr__1) ! (pc) Y-coordinate
real*4 e_Ygal (nr__1) ! (pc) Lower uncertainty of Y
real*4 E_Ygal_1 (nr__1) ! (pc) Upper uncertainty of Y
real*4 Zgal (nr__1) ! (pc) Z-coordinate
real*4 e_Zgal (nr__1) ! (pc) Lower uncertainty of Z
real*4 E_Zgal_1 (nr__1) ! (pc) Upper uncertainty of Z
real*4 Ugal (nr__1) ! (km/s) ? U-component of the velocity
real*4 e_Ugal (nr__1) ! (km/s) ? Lower uncertainty of U
real*4 E_Ugal_1 (nr__1) ! (km/s) ? Upper uncertainty of U
real*4 Vgal (nr__1) ! (km/s) ? V-component of the velocity
real*4 e_Vgal (nr__1) ! (km/s) ? Lower uncertainty of V
real*4 E_Vgal_1 (nr__1) ! (km/s) ? Upper uncertainty of V
real*4 Wgal (nr__1) ! (km/s) ? W-component of the velocity
real*4 e_Wgal (nr__1) ! (km/s) ? Lower uncertainty of W
real*4 E_Wgal_1 (nr__1) ! (km/s) ? Upper uncertainty of W
real*4 uLSR (nr__1) ! (km/s) ? u-component of the LSR velocity
real*4 e_uLSR (nr__1) ! (km/s) ? Lower uncertainty of u
real*4 E_uLSR_1 (nr__1) ! (km/s) ? Upper uncertainty of u
real*4 vLSR (nr__1) ! (km/s) ? v-component of the LSR velocity
real*4 e_vLSR (nr__1) ! (km/s) ? Lower uncertainty of v
real*4 E_vLSR_1 (nr__1) ! (km/s) ? Upper uncertainty of v
real*4 wLSR (nr__1) ! (km/s) ? w-component of the LSR velocity
real*4 e_wLSR (nr__1) ! (km/s) ? Lower uncertainty of w
real*4 E_wLSR_1 (nr__1) ! (km/s) ? Upper uncertainty of w
real*4 rvLSR (nr__1) ! (km/s) ? Radial velocity converted to LSR
real*4 e_rvLSR (nr__1) ! (km/s) ? Uncertainty of rvLSR
C=============================================================================
C Loading file 'tablea1.dat' ! Proper motions, parallaxes, radial velocities
C Format for file interpretation
1 format(
+ A23,3X,A28,2X,A24,4X,I2,1X,I2,1X,F5.2,2X,A1,I2,1X,I2,1X,F4.1,
+ 1X,F7.3,3X,F5.3,3X,F7.3,3X,F5.3,2X,F6.3,4X,F5.3,3X,A7,2X,F7.3,
+ 2X,F6.3,3X,A2,6X,A2,6X,I1,7X,I1,7X,I1,7X,I1)
C Effective file loading
open(unit=1,status='old',file=
+'tablea1.dat')
write(6,*) '....Loading file: tablea1.dat'
do i__=1,519
read(1,'(A230)')ar__
read(ar__,1)
+ v2MASS(i__),GaiaDR2(i__),Name(i__),RAh(i__),RAm(i__),RAs(i__),
+ DE_(i__),DEd(i__),DEm(i__),DEs(i__),pmRA(i__),e_pmRA(i__),
+ pmDE(i__),e_pmDE(i__),plx(i__),e_plx(i__),r_astro(i__),
+ rv(i__),e_rv(i__),r_rv(i__),Cluster(i__),Member(i__),J17(i__),
+ L18_t1(i__),L18_t6(i__)
if(ar__(110:116) .EQ. '') pmRA(i__) = rNULL__
if(ar__(120:124) .EQ. '') e_pmRA(i__) = rNULL__
if(ar__(128:134) .EQ. '') pmDE(i__) = rNULL__
if(ar__(138:142) .EQ. '') e_pmDE(i__) = rNULL__
if(ar__(145:150) .EQ. '') plx(i__) = rNULL__
if(ar__(155:159) .EQ. '') e_plx(i__) = rNULL__
if(ar__(172:178) .EQ. '') rv(i__) = rNULL__
if(ar__(181:186) .EQ. '') e_rv(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)
+ v2MASS(i__),GaiaDR2(i__),Name(i__),RAh(i__),RAm(i__),RAs(i__),
+ DE_(i__),DEd(i__),DEm(i__),DEs(i__),pmRA(i__),e_pmRA(i__),
+ pmDE(i__),e_pmDE(i__),plx(i__),e_plx(i__),r_astro(i__),
+ rv(i__),e_rv(i__),r_rv(i__),Cluster(i__),Member(i__),J17(i__),
+ L18_t1(i__),L18_t6(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 'tablea3.dat' ! Distance and spatial velocity
C Format for file interpretation
2 format(
+ A23,1X,A28,1X,A14,1X,F5.1,2X,F4.1,1X,F4.1,1X,F5.1,2X,F4.1,1X,
+ F5.1,2X,F6.1,2X,F5.1,1X,F4.1,1X,F5.1,3X,F3.1,1X,F4.1,3X,F5.1,
+ 2X,F5.1,1X,F3.1,3X,F5.1,2X,F3.1,2X,F3.1,3X,F5.1,2X,F3.1,2X,
+ F3.1,3X,F5.1,2X,F3.1,2X,F3.1,3X,F5.1,2X,F3.1,2X,F3.1,3X,F4.1,
+ 3X,F3.1,2X,F3.1,3X,F4.1,3X,F3.1,2X,F3.1,2X,F6.2,2X,F4.2)
C Effective file loading
open(unit=1,status='old',file=
+'tablea3.dat')
write(6,*) '....Loading file: tablea3.dat'
do i__=1,174
read(1,'(A280)')ar__1
read(ar__1,2)
+ v2MASS_1(i__),GaiaDR2_1(i__),Name_1(i__),dist_inv(i__),
+ e_dist_inv(i__),E_dist_inv_1(i__),dist(i__),e_dist(i__),
+ E_dist_1(i__),Xgal(i__),e_Xgal(i__),E_Xgal_1(i__),Ygal(i__),
+ e_Ygal(i__),E_Ygal_1(i__),Zgal(i__),e_Zgal(i__),E_Zgal_1(i__),
+ Ugal(i__),e_Ugal(i__),E_Ugal_1(i__),Vgal(i__),e_Vgal(i__),
+ E_Vgal_1(i__),Wgal(i__),e_Wgal(i__),E_Wgal_1(i__),uLSR(i__),
+ e_uLSR(i__),E_uLSR_1(i__),vLSR(i__),e_vLSR(i__),E_vLSR_1(i__),
+ wLSR(i__),e_wLSR(i__),E_wLSR_1(i__),rvLSR(i__),e_rvLSR(i__)
if(ar__1(162:166) .EQ. '') Ugal(i__) = rNULL__
if(ar__1(169:171) .EQ. '') e_Ugal(i__) = rNULL__
if(ar__1(174:176) .EQ. '') E_Ugal_1(i__) = rNULL__
if(ar__1(180:184) .EQ. '') Vgal(i__) = rNULL__
if(ar__1(187:189) .EQ. '') e_Vgal(i__) = rNULL__
if(ar__1(192:194) .EQ. '') E_Vgal_1(i__) = rNULL__
if(ar__1(198:202) .EQ. '') Wgal(i__) = rNULL__
if(ar__1(205:207) .EQ. '') e_Wgal(i__) = rNULL__
if(ar__1(210:212) .EQ. '') E_Wgal_1(i__) = rNULL__
if(ar__1(216:220) .EQ. '') uLSR(i__) = rNULL__
if(ar__1(223:225) .EQ. '') e_uLSR(i__) = rNULL__
if(ar__1(228:230) .EQ. '') E_uLSR_1(i__) = rNULL__
if(ar__1(234:237) .EQ. '') vLSR(i__) = rNULL__
if(ar__1(241:243) .EQ. '') e_vLSR(i__) = rNULL__
if(ar__1(246:248) .EQ. '') E_vLSR_1(i__) = rNULL__
if(ar__1(252:255) .EQ. '') wLSR(i__) = rNULL__
if(ar__1(259:261) .EQ. '') e_wLSR(i__) = rNULL__
if(ar__1(264:266) .EQ. '') E_wLSR_1(i__) = rNULL__
if(ar__1(269:274) .EQ. '') rvLSR(i__) = rNULL__
if(ar__1(277:280) .EQ. '') e_rvLSR(i__) = rNULL__
c ..............Just test output...........
write(6,2)
+ v2MASS_1(i__),GaiaDR2_1(i__),Name_1(i__),dist_inv(i__),
+ e_dist_inv(i__),E_dist_inv_1(i__),dist(i__),e_dist(i__),
+ E_dist_1(i__),Xgal(i__),e_Xgal(i__),E_Xgal_1(i__),Ygal(i__),
+ e_Ygal(i__),E_Ygal_1(i__),Zgal(i__),e_Zgal(i__),E_Zgal_1(i__),
+ Ugal(i__),e_Ugal(i__),E_Ugal_1(i__),Vgal(i__),e_Vgal(i__),
+ E_Vgal_1(i__),Wgal(i__),e_Wgal(i__),E_Wgal_1(i__),uLSR(i__),
+ e_uLSR(i__),E_uLSR_1(i__),vLSR(i__),e_vLSR(i__),E_vLSR_1(i__),
+ wLSR(i__),e_wLSR(i__),E_wLSR_1(i__),rvLSR(i__),e_rvLSR(i__)
c .......End.of.Just test output...........
end do
close(1)
C=============================================================================
stop
end