gaia_access 0.2.0

Access the Gaia ESA Archive for astronomical data.
Documentation
// This code is generated by generate_code.py, do not modify it manually.

//! This module contains all the known columns in the tycho2 table.

use crate::traits::{Column, Table};

/// The Tycho-2 Catalogue is an astrometric reference catalogue containing positions and proper motions as well as two-colour photometric data for the 2.5 million brightest stars in the sky. The Tycho-2 positions and magnitudes are based on precisely the same observations as the original Tycho Catalogue (hereafter Tycho-1; VizieR catalogue: I/239) collected by the star mapper of the ESA Hipparcos satellite, but Tycho-2 is much bigger and slightly more precise, owing to a more advanced reduction technique. Components of double stars with separations down to 0.8 arcsec are included. Proper motions precise to about 2.5 mas/yr are given as derived from a comparison with the Astrographic Catalogue and 143 other ground-based astrometric catalogues, all reduced to the Hipparcos celestial coordinate system. Tycho-2 supersedes in most applications Tycho-1, as well as the ACT (VizieR catalogue: I/246) and TRC (VizieR catatlogue: I/250) catalogues based on Tycho-1. Supplement-1 lists stars from the Hipparcos and Tycho-1 Catalogues which are not in Tycho-2. Supplement-2 lists 1146 Tycho-1 stars which are probably either false or heavily disturbed. For more information, please consult the Tycho-2 home page: http://www.astro.ku.dk/~erik/Tycho-2 Reference paper: https://ui.adsabs.harvard.edu/abs/2000A%26A...355L..27H/abstract
#[allow(non_camel_case_types)]
pub struct tycho2;

impl Table for tycho2 {
    fn string(&self) -> String {
        "tycho2".to_string()
    }
}

/// The columns in the tycho2 table.
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum::Display)]
pub enum Col {
    /// Tycho 2 identifier. The TYC identifier is constructed from the GSC region number
    ///     (TYC1), the running number within the region (TYC2) and a component
    ///     identifier (TYC3) which is normally 1. Some non-GSC running numbers
    ///     were constructed for the first Tycho Catalogue and for Tycho-2.
    ///     The recommended star designation contains a hyphen between the
    ///     TYC numbers, e.g. TYC 1-13-1.
    id,
    /// [1,120404]? Hipparcos number
    hip,
    /// [1,9537]+= TYC1 from TYC or GSC
    ///
    /// The TYC identifier is constructed from the GSC region number
    ///     (TYC1), the running number within the region (TYC2) and a component
    ///     identifier (TYC3) which is normally 1. Some non-GSC running numbers
    ///     were constructed for the first Tycho Catalogue and for Tycho-2.
    ///     The recommended star designation contains a hyphen between the
    ///     TYC numbers, e.g. TYC 1-13-1.
    tyc1,
    /// [1,12121]  TYC2 from TYC or GSC
    ///
    /// The TYC identifier is constructed from the GSC region number
    ///     (TYC1), the running number within the region (TYC2) and a component
    ///     identifier (TYC3) which is normally 1. Some non-GSC running numbers
    ///     were constructed for the first Tycho Catalogue and for Tycho-2.
    ///     The recommended star designation contains a hyphen between the
    ///     TYC numbers, e.g. TYC 1-13-1.
    tyc2,
    /// [1,3]      TYC3 from TYC
    ///
    /// The TYC identifier is constructed from the GSC region number
    ///     (TYC1), the running number within the region (TYC2) and a component
    ///     identifier (TYC3) which is normally 1. Some non-GSC running numbers
    ///     were constructed for the first Tycho Catalogue and for Tycho-2.
    ///     The recommended star designation contains a hyphen between the
    ///     TYC numbers, e.g. TYC 1-13-1.
    tyc3,
    /// (TYC1,TYC2 and TYC3) are combined into one complete number given by (TYC1*1000000.0d0)+(TYC2*10.0d0)+(TYC3*1.0d0)
    id_tycho,
    /// [T] Tycho-1 star
    ///
    /// ' ' = no Tycho-1 star was found within 0.8 arcsec (quality 1-8)
    ///           or 2.4 arcsec (quality 9).
    ///     'T' = this is a Tycho-1 star. The Tycho-1 identifier is given in the
    ///           beginning of the record. For Tycho-1 stars, resolved in
    ///           Tycho-2 as a close pair, both components are flagged as
    ///           a Tycho-1 star and the Tycho-1 TYC3 is assigned to the
    ///           brightest (VT) component.
    ///     The HIP-only stars given in Tycho-1 are not flagged as Tycho-1 stars.
    tyc,
    /// Observed Tycho-2 Right Ascension, ICRS
    ra,
    /// Observed Tycho-2 Declination, ICRS
    dec,
    /// Observed Tycho-2 Right Ascension, ICRS
    ra_deg,
    /// Observed Tycho-2 Declination, ICRS
    de_deg,
    /// []? Mean Right Asc, ICRS, epoch=J2000
    ///
    /// The mean position is a weighted mean for the catalogues contributing
    ///     to the proper motion determination. This mean has then been brought to
    ///     epoch 2000.0 by the computed proper motion. See Note(2) above for
    ///     details. Tycho-2 is one of the several catalogues used to determine
    ///     the mean position and proper motion. The observed Tycho-2 position is
    ///     given in the fields RAdeg and DEdeg.
    ra_mdeg,
    /// []? Mean Decl, ICRS, at epoch=J2000
    ///
    /// The mean position is a weighted mean for the catalogues contributing
    ///     to the proper motion determination. This mean has then been brought to
    ///     epoch 2000.0 by the computed proper motion. See Note(2) above for
    ///     details. Tycho-2 is one of the several catalogues used to determine
    ///     the mean position and proper motion. The observed Tycho-2 position is
    ///     given in the fields RAdeg and DEdeg.
    de_mdeg,
    /// ? Proper motion in RA*cos(dec)
    ///
    /// Some Hipparcos stars (having a positive number in the HIP column)
    ///      have no proper motions; these are virtually all in multiple systems.
    pm_ra,
    /// ? Proper motion in Dec
    ///
    /// Some Hipparcos stars (having a positive number in the HIP column)
    ///      have no proper motions; these are virtually all in multiple systems.
    pm_de,
    /// [0.81,2.13]  epoch-1990 of RAdeg
    ep_ra1990,
    /// [0.72,2.36]  epoch-1990 of DEdeg
    ep_de1990,
    /// [1915.95,1992.53]? mean epoch of RA. The mean epochs are given in Julian years.
    ep_ra_m,
    /// [1911.94,1992.01]? mean epoch of Dec. The mean epochs are given in Julian years.
    ep_de_m,
    /// [2,36]? Number of positions used
    num,
    /// s.e.RA*cos(dec), of observed Tycho-2 RA. The errors are based on error models.
    e_ra_deg,
    /// s.e. of observed Tycho-2 Dec. The errors are based on error models.
    e_de_deg,
    /// [-1,1] correlation (RAdeg,DEdeg)
    corr,
    /// [3,183]? s.e. RA*cos(dec),at mean epoch. The errors are based on error models.
    e_ra_mdeg,
    /// [1,184]? s.e. of Dec at mean epoch. The errors are based on error models.
    e_de_mdeg,
    /// [0.2,11.5]? s.e. prop mot in RA*cos(dec).The errors are based on error models.
    e_pm_ra,
    /// [0.2,10.3]? s.e. of proper motion in Dec. The errors are based on error models.
    e_pm_de,
    /// [0.0,9.9]? Goodness of fit for mean RA
    ///
    /// This goodness of fit is the ratio of the scatter-based and the
    ///     model-based error. It is only defined when Num > 2. Values
    ///     exceeding 9.9 are truncated to 9.9.
    q_ra_mdeg,
    /// [0.0,9.9]? Goodness of fit for mean Dec
    ///
    /// This goodness of fit is the ratio of the scatter-based and the
    ///     model-based error. It is only defined when Num > 2. Values
    ///     exceeding 9.9 are truncated to 9.9.
    q_de_mdeg,
    /// [0.0,9.9]? Goodness of fit for pmDE
    ///
    /// This goodness of fit is the ratio of the scatter-based and the
    ///     model-based error. It is only defined when Num > 2. Values
    ///     exceeding 9.9 are truncated to 9.9.
    q_pm_de,
    /// [0.0,9.9]? Goodness of fit for pmRA
    ///
    /// This goodness of fit is the ratio of the scatter-based and the
    ///     model-based error. It is only defined when Num > 2. Values
    ///     exceeding 9.9 are truncated to 9.9.
    q_pm_ra,
    /// [ PX] mean position flag
    ///
    ///     ' ' = normal mean position and proper motion.
    ///     'P' = the mean position, proper motion, etc., refer to the
    ///           photocentre of two Tycho-2 entries, where the BT magnitudes
    ///           were used in weighting the positions.
    ///     'X' = no mean position, no proper motion.
    pflag,
    /// [ DP] type of Tycho-2 solution
    ///
    /// ' ' = normal treatment, close stars were subtracted when possible.
    ///     'D' = double star treatment. Two stars were found. The companion is
    ///           normally included as a separate Tycho-2 entry, but may have
    ///           been rejected.
    ///     'P' = photocentre treatment, close stars were not subtracted. This
    ///           special treatment was applied to known or suspected doubles
    ///           which were not successfully (or reliably) resolved in the
    ///           Tycho-2 double star processing.
    posflg,
    /// CCDM component identifier for HIP stars
    ///
    /// The CCDM component identifiers for double or multiple Hipparcos stars
    ///     contributing to this Tycho-2 entry. For photocentre solutions, all
    ///     components within 0.8 arcsec contribute. For double star solutions any
    ///     unresolved component within 0.8 arcsec contributes. For single star
    ///     solutions, the predicted signal from close stars were normally
    ///     subtracted in the analysis of the photon counts and such stars
    ///     therefore do not contribute to the solution. The components are given
    ///     in lexical order.
    ccdm,
    /// [3,999] proximity indicator
    ///
    /// Distance in units of 100 mas to the nearest entry in the Tycho-2
    ///     main catalogue or supplement. The distance is computed for the
    ///     epoch 1991.25. A value of 999 (i.e. 99.9 arcsec) is given if the
    ///     distance exceeds 99.9 arcsec.
    prox,
    /// [2.183,16.581]? Tycho-2 BT magnitude
    ///
    /// Blank when no magnitude is available. Either BTmag or VTmag is
    ///     always given. Approximate Johnson photometry may be obtained as:
    ///     V   = VT -0.090*(BT-VT)
    ///     B-V = 0.850*(BT-VT)
    ///     Consult Sect 1.3 of Vol 1 of "The Hipparcos and Tycho Catalogues",
    ///     ESA SP-1200, 1997, for details.
    bt_mag,
    /// [1.905,15.193]? Tycho-2 VT magnitude
    ///
    /// Blank when no magnitude is available. Either BTmag or VTmag is
    ///     always given. Approximate Johnson photometry may be obtained as:
    ///     V   = VT -0.090*(BT-VT)
    ///     B-V = 0.850*(BT-VT)
    ///     Consult Sect 1.3 of Vol 1 of "The Hipparcos and Tycho Catalogues",
    ///     ESA SP-1200, 1997, for details.
    vt_mag,
    /// [0.014,1.977]? s.e. of BT
    ///
    /// Blank when no magnitude is available. Either BTmag or VTmag is
    ///     always given. Approximate Johnson photometry may be obtained as:
    ///     V   = VT -0.090*(BT-VT)
    ///     B-V = 0.850*(BT-VT)
    ///     Consult Sect 1.3 of Vol 1 of "The Hipparcos and Tycho Catalogues",
    ///     ESA SP-1200, 1997, for details.
    e_bt_mag,
    /// [0.009,1.468]? s.e. of VT
    ///
    /// Blank when no magnitude is available. Either BTmag or VTmag is
    ///     always given. Approximate Johnson photometry may be obtained as:
    ///     V   = VT -0.090*(BT-VT)
    ///     B-V = 0.850*(BT-VT)
    ///     Consult Sect 1.3 of Vol 1 of "The Hipparcos and Tycho Catalogues",
    ///     ESA SP-1200, 1997, for details.
    e_vt_mag,
    /// The hip_old column. (No further description available)
    hip_old,
}

impl Column for Col {}

#[cfg(test)]
/// Collects all the known columns in the tycho2 table.
pub fn collect_known(map: &mut std::collections::HashMap<String, Vec<String>>) {
    let mut col_strings = Vec::new();
    col_strings.push(Col::id.to_string());
    col_strings.push(Col::hip.to_string());
    col_strings.push(Col::tyc1.to_string());
    col_strings.push(Col::tyc2.to_string());
    col_strings.push(Col::tyc3.to_string());
    col_strings.push(Col::id_tycho.to_string());
    col_strings.push(Col::tyc.to_string());
    col_strings.push(Col::ra.to_string());
    col_strings.push(Col::dec.to_string());
    col_strings.push(Col::ra_deg.to_string());
    col_strings.push(Col::de_deg.to_string());
    col_strings.push(Col::ra_mdeg.to_string());
    col_strings.push(Col::de_mdeg.to_string());
    col_strings.push(Col::pm_ra.to_string());
    col_strings.push(Col::pm_de.to_string());
    col_strings.push(Col::ep_ra1990.to_string());
    col_strings.push(Col::ep_de1990.to_string());
    col_strings.push(Col::ep_ra_m.to_string());
    col_strings.push(Col::ep_de_m.to_string());
    col_strings.push(Col::num.to_string());
    col_strings.push(Col::e_ra_deg.to_string());
    col_strings.push(Col::e_de_deg.to_string());
    col_strings.push(Col::corr.to_string());
    col_strings.push(Col::e_ra_mdeg.to_string());
    col_strings.push(Col::e_de_mdeg.to_string());
    col_strings.push(Col::e_pm_ra.to_string());
    col_strings.push(Col::e_pm_de.to_string());
    col_strings.push(Col::q_ra_mdeg.to_string());
    col_strings.push(Col::q_de_mdeg.to_string());
    col_strings.push(Col::q_pm_de.to_string());
    col_strings.push(Col::q_pm_ra.to_string());
    col_strings.push(Col::pflag.to_string());
    col_strings.push(Col::posflg.to_string());
    col_strings.push(Col::ccdm.to_string());
    col_strings.push(Col::prox.to_string());
    col_strings.push(Col::bt_mag.to_string());
    col_strings.push(Col::vt_mag.to_string());
    col_strings.push(Col::e_bt_mag.to_string());
    col_strings.push(Col::e_vt_mag.to_string());
    col_strings.push(Col::hip_old.to_string());
    map.insert(tycho2.string(), col_strings);
}