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 lamost_dr9_lrs table.

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

/// LAMOST Low-Resolution Spectroscopic Survey General Catalogue Data Release 9. The Large Sky Area Multi-Object Fiber Spectroscopic Telescope (LAMOST) is a Chinese national scientific research facility operated by the National Astronomical Observatories, Chinese Academy of Sciences. It is a special reflecting Schmidt telescope with 4000 fibers in a field of view of 20 degrees. The LAMOST survey provides flux- and wavelength-calibrated, sky-subtracted spectra in the wavelength range 3690-9100 Angstrom for many types of astronomical objects. The ninth LAMOST data release (LAMOST DR9) includes observations until June 2021. The Low-Resolution spectroscopic Survey (LRS) General Catalogue contains 11,211,028 spectra, of which 10,893,354 are stars, 241,454 are galaxies, and 76,220 are QSOs. For more information, please consult the LAMOST homepage: https://www.lamost.org/dr9/
#[allow(non_camel_case_types)]
pub struct lamost_dr9_lrs;

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

/// The columns in the lamost_dr9_lrs table.
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum::Display)]
pub enum Col {
    /// The postcard_url column. (No further description available)
    postcard_url,
    /// The product_url column. (No further description available)
    product_url,
    /// Unique Spectra ID
    obsid,
    /// Unique source identifier calculated with the "ura" and "udec" in table 10
    uid,
    /// For each LAMOST source, the equatorial coordinates ("ura" and "udec" in table 10) used to calculate "uid" were from which survey (Pan-STARRS, Gaia or LAMOST), "gp_id" gives the corresponding source identifier in that survey.
    gp_id,
    /// Target designation
    designation,
    /// Target Observation Date
    obsdate,
    /// Local modified Julian day
    lmjd,
    /// Modified Julian Day
    mjd,
    /// Plan Name
    planid,
    /// Spectrograph ID
    spid,
    /// Fiber ID of object
    fiberid,
    /// Fiber pointing right ascension
    ra_obs,
    /// Fiber pointing declination
    dec_obs,
    /// Signal-to-noise ratio of u filter
    snru,
    /// Signal-to-noise ratio of g filter
    snrg,
    /// Signal-to-noise ratio of r filter
    snrr,
    /// Signal-to-noise ratio of i filter
    snri,
    /// Signal-to-noise ratio of z filter
    snrz,
    /// Spectral type
    class,
    /// Stellar spectral type
    subclass,
    /// Redshift
    z,
    /// Redshift uncertainty
    z_err,
    /// The objID in the Pan-STARRS catalog
    ps_id,
    /// Pan-STARRS g band magnitude
    mag_ps_g,
    /// Pan-STARRS r band magnitude
    mag_ps_r,
    /// Pan-STARRS i band magnitude
    mag_ps_i,
    /// Pan-STARRS z band magnitude
    mag_ps_z,
    /// Pan-STARRS y band magnitude
    mag_ps_y,
    /// Fiber Type of target [Obj, Sky, F-std, Unused, PosErr, Dead]
    fibertype,
    /// Whether there is a fiber offset during observation
    offsets,
    /// If the "offsets" field is true, "offsets_v" gives the offset distance from the target’s coordinator in input catalog
    offsets_v,
    /// Right Ascension from input catalog
    ra,
    /// Declination from input catalog
    dec,
    /// Possible fiber problems
    fibermask,
    /// It has two values of 0 and 1, 1 represents the FITS file provides the normalized spectrum, and 0 means it does not. The normalized flux is in the data array of extension 1.
    with_norm_flux,
}

impl Column for Col {}

#[cfg(test)]
/// Collects all the known columns in the lamost_dr9_lrs table.
pub fn collect_known(map: &mut std::collections::HashMap<String, Vec<String>>) {
    let mut col_strings = Vec::new();
    col_strings.push(Col::postcard_url.to_string());
    col_strings.push(Col::product_url.to_string());
    col_strings.push(Col::obsid.to_string());
    col_strings.push(Col::uid.to_string());
    col_strings.push(Col::gp_id.to_string());
    col_strings.push(Col::designation.to_string());
    col_strings.push(Col::obsdate.to_string());
    col_strings.push(Col::lmjd.to_string());
    col_strings.push(Col::mjd.to_string());
    col_strings.push(Col::planid.to_string());
    col_strings.push(Col::spid.to_string());
    col_strings.push(Col::fiberid.to_string());
    col_strings.push(Col::ra_obs.to_string());
    col_strings.push(Col::dec_obs.to_string());
    col_strings.push(Col::snru.to_string());
    col_strings.push(Col::snrg.to_string());
    col_strings.push(Col::snrr.to_string());
    col_strings.push(Col::snri.to_string());
    col_strings.push(Col::snrz.to_string());
    col_strings.push(Col::class.to_string());
    col_strings.push(Col::subclass.to_string());
    col_strings.push(Col::z.to_string());
    col_strings.push(Col::z_err.to_string());
    col_strings.push(Col::ps_id.to_string());
    col_strings.push(Col::mag_ps_g.to_string());
    col_strings.push(Col::mag_ps_r.to_string());
    col_strings.push(Col::mag_ps_i.to_string());
    col_strings.push(Col::mag_ps_z.to_string());
    col_strings.push(Col::mag_ps_y.to_string());
    col_strings.push(Col::fibertype.to_string());
    col_strings.push(Col::offsets.to_string());
    col_strings.push(Col::offsets_v.to_string());
    col_strings.push(Col::ra.to_string());
    col_strings.push(Col::dec.to_string());
    col_strings.push(Col::fibermask.to_string());
    col_strings.push(Col::with_norm_flux.to_string());
    map.insert(lamost_dr9_lrs.string(), col_strings);
}