gaia_access 0.1.1

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

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

/// This table contains parameters derived from various modules dedicated to the classification and characterisation of sources considered as galaxy candidates. This table has been constructed with the intention to be complete rather than pure and, as such, it will contain a large fraction of non-genuine extragalactic sources. Purer samples can be drawn using dedicated flags or queries. Please refer to Chapter~\ref{chap:cu3qso} of the on-line documentation for details about how this table was built, its content, and for recommendations regarding its exploitation.
#[allow(non_camel_case_types)]
pub struct galaxy_candidates;

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

/// The columns in the galaxy_candidates table.
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum::Display)]
pub enum Col {
    /// Solution Identifier
    solution_id,
    /// Unique source identifier (unique within a particular Data Release)
    source_id,
    /// Name of best class, see table VariClassifierClassDefinition for details of the class
    vari_best_class_name,
    /// Score of the best class
    vari_best_class_score,
    /// Probability from DSC-Combmod of being a galaxy (data used: BP/RP spectrum, photometry, astrometry)
    classprob_dsc_combmod_galaxy,
    /// Probability from DSC-Combmod of being a quasar (data used: BP/RP spectrum, photometry, astrometry)
    classprob_dsc_combmod_quasar,
    /// Class assigned by DSC based on the probability from its Combmod classifier
    classlabel_dsc,
    /// Class assigned by DSC based on the probability from its Specmod and Allosmod classifiers
    classlabel_dsc_joint,
    /// Class assigned by OA the neuron that represents the source
    classlabel_oa,
    /// Redshift from UGC
    redshift_ugc,
    /// Redshift prediction lower limit from UGC
    redshift_ugc_lower,
    /// Redshift prediction upper limit from UGC
    redshift_ugc_upper,
    /// Number of transits used for the morphological analysis
    n_transits,
    /// Fitted position angle of the source for the Sersic Profile
    posangle_sersic,
    /// Error on the fitted position angle of the source for the Sersic Profile
    posangle_sersic_error,
    /// Fitted intensity of the source for the Sersic Profile
    intensity_sersic,
    /// Error on the fitted intensity of the source at effective radius radiusSersic
    intensity_sersic_error,
    /// Fitted effective radius of the source for the Sersic Profile
    radius_sersic,
    /// Error on the fitted effective radius of the source for the Sersic Profile
    radius_sersic_error,
    /// Fitted ellipticity of source for the Sersic Profile
    ellipticity_sersic,
    /// Error on the fitted ellipticity of the source for the Sersic Profile
    ellipticity_sersic_error,
    /// Fitted Sersic Index for Sersic Profile
    n_sersic,
    /// Error on the fitted Sersic Index for Sersic Profile
    n_sersic_error,
    /// L2 norm for the Sersic Profile
    l2_sersic,
    /// Vector form of the upper triangle of the correlation matrix for the fitted parameters for the Sersic Profile
    morph_params_corr_vec_sersic,
    /// Flag indicative of processing or scientific quality for the morphological parameters fitting for the Sersic Profile
    flags_sersic,
    /// Fitted position angle of the source for the de Vaucouleurs Profile
    posangle_de_vaucouleurs,
    /// Error on the fitted position angle of the source for the de Vaucouleurs Profile
    posangle_de_vaucouleurs_error,
    /// Fitted intensity of the source for the de Vaucouleurs Profile
    intensity_de_vaucouleurs,
    /// Error on the fitted intensity of the bulge for the de Vaucouleurs Profile
    intensity_de_vaucouleurs_error,
    /// Fitted effective radius of the source for de Vaucouleurs Profile
    radius_de_vaucouleurs,
    /// Error on the fitted effective radius of the source for the de Vaucouleurs Profile
    radius_de_vaucouleurs_error,
    /// Fitted ellipticity of source for the de Vaucouleurs Profile
    ellipticity_de_vaucouleurs,
    /// Error on the fitted ellipticity of the source for the de Vaucouleurs Profile
    ellipticity_de_vaucouleurs_error,
    /// L2 norm for the de Vaucouleurs Profile
    l2_de_vaucouleurs,
    /// Vector form of the upper triangle of the correlation matrix for the fitted parameters for the de Vaucouleurs Profile
    morph_params_corr_vec_de_vaucouleurs,
    /// Flag indicative of processing or scientific quality for the morphological parameters fitting for the de Vaucouleurs Profile
    flags_de_vaucouleurs,
    /// Bit indicative of whether the input data from a given module met the source list eligibility criteria for the source of interest
    source_selection_flags,
}

impl Column for Col {}

#[cfg(test)]
pub fn collect_known(map: &mut std::collections::HashMap<String, Vec<String>>) {
    let mut col_strings = Vec::new();
    col_strings.push(Col::solution_id.to_string());
    col_strings.push(Col::source_id.to_string());
    col_strings.push(Col::vari_best_class_name.to_string());
    col_strings.push(Col::vari_best_class_score.to_string());
    col_strings.push(Col::classprob_dsc_combmod_galaxy.to_string());
    col_strings.push(Col::classprob_dsc_combmod_quasar.to_string());
    col_strings.push(Col::classlabel_dsc.to_string());
    col_strings.push(Col::classlabel_dsc_joint.to_string());
    col_strings.push(Col::classlabel_oa.to_string());
    col_strings.push(Col::redshift_ugc.to_string());
    col_strings.push(Col::redshift_ugc_lower.to_string());
    col_strings.push(Col::redshift_ugc_upper.to_string());
    col_strings.push(Col::n_transits.to_string());
    col_strings.push(Col::posangle_sersic.to_string());
    col_strings.push(Col::posangle_sersic_error.to_string());
    col_strings.push(Col::intensity_sersic.to_string());
    col_strings.push(Col::intensity_sersic_error.to_string());
    col_strings.push(Col::radius_sersic.to_string());
    col_strings.push(Col::radius_sersic_error.to_string());
    col_strings.push(Col::ellipticity_sersic.to_string());
    col_strings.push(Col::ellipticity_sersic_error.to_string());
    col_strings.push(Col::n_sersic.to_string());
    col_strings.push(Col::n_sersic_error.to_string());
    col_strings.push(Col::l2_sersic.to_string());
    col_strings.push(Col::morph_params_corr_vec_sersic.to_string());
    col_strings.push(Col::flags_sersic.to_string());
    col_strings.push(Col::posangle_de_vaucouleurs.to_string());
    col_strings.push(Col::posangle_de_vaucouleurs_error.to_string());
    col_strings.push(Col::intensity_de_vaucouleurs.to_string());
    col_strings.push(Col::intensity_de_vaucouleurs_error.to_string());
    col_strings.push(Col::radius_de_vaucouleurs.to_string());
    col_strings.push(Col::radius_de_vaucouleurs_error.to_string());
    col_strings.push(Col::ellipticity_de_vaucouleurs.to_string());
    col_strings.push(Col::ellipticity_de_vaucouleurs_error.to_string());
    col_strings.push(Col::l2_de_vaucouleurs.to_string());
    col_strings.push(Col::morph_params_corr_vec_de_vaucouleurs.to_string());
    col_strings.push(Col::flags_de_vaucouleurs.to_string());
    col_strings.push(Col::source_selection_flags.to_string());
    map.insert(galaxy_candidates.string(), col_strings);
}