// This code is generated by generate_code.py, do not modify it manually.
//! This module contains all the known columns in the gaiaedr3_spurious table.
use crate::traits::{Column, Table};
/// For a small fraction of Gaia EDR3 sources, the astrometric solutions are poor, and the reported values and uncertainties may not apply. Before any analysis, it is important to recognise and excise these spurious results, commonly done by means of quality flags in the Gaia catalogue. This table contains estimates of the "fidelity" of Gaia EDR3 astrometric solutions, which measures the likelihood that the EDR3 solution is physical rather than spurious. These fidelity estimates were obtained using a neural network trained on a carefully selected sample. The code and training/validation data are public, so that the results can be easily reproduced. Data replicated from the gedr3spur.main table at the GAVO Data Center TAP service https://dc.g-vo.org/tap and TAP metadata as of December 2021. Reference paper: https://ui.adsabs.harvard.edu/abs/2022MNRAS.510.2597R/abstract (DOI: 10.1093/mnras/stab3588)
#[allow(non_camel_case_types)]
pub struct gaiaedr3_spurious;
impl Table for gaiaedr3_spurious {
fn string(&self) -> String {
"gaiaedr3_spurious".to_string()
}
}
/// The columns in the gaiaedr3_spurious table.
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum::Display)]
pub enum Col {
/// Gaia eDR3 unique source identifier. Note that this *cannot* be matched against the DR1 or DR2 source_ids.
source_id,
/// A probability that eDR3 has a good astrometric solution for this source, with values between 0 (meaning likely spurious solution) and 1 (meaning likely good solution). This is the published probability estimate.
fidelity_v2,
/// Distance to the eDR3 source within 30 arcsec of the object for which ΔG-θ is maximal. See norm_dg for details.
theta_arcsec_worst_source,
/// This is a heuristic measure for contamination by bright stars in the neighbourhood. It is computed as ΔG-θ, where θ is the distance to another Gaia eDR3 object in arcsec (reported in theta_arcsec_worst_source), and ΔG is the magnitude difference in mag. This column gives the maximum of the values for all eDR3 sources within 30 arcsecs of the object.
norm_dg,
/// Distance to the nearest neighbour in gaia_source at least 2 m fainter than this source.
dist_nearest_neighbor_at_least_m2_brighter,
/// Distance to the nearest neighbour in gaia_source at least as bright as this source.
dist_nearest_neighbor_at_least_0_brighter,
/// Distance to the nearest neighbour in gaia_source at least 2 m brighter than this source.
dist_nearest_neighbor_at_least_2_brighter,
/// Distance to the nearest neighbour in gaia_source at least 4 m brighter than this source.
dist_nearest_neighbor_at_least_4_brighter,
/// Distance to the nearest neighbour in gaia_source at least 6 m brighter than this source.
dist_nearest_neighbor_at_least_6_brighter,
/// Distance to the nearest neighbour in gaia_source at least 10 m brighter than this source.
dist_nearest_neighbor_at_least_10_brighter,
/// A probablity that eDR3 has a good astrometric solution for this source, with values between 0 (meaning likely spurious solution) and 1 (meaning likely good solution). This comes from a first version of the estimator that was reviewed based on an astro-ph paper.
fidelity_v1,
}
impl Column for Col {}
#[cfg(test)]
/// Collects all the known columns in the gaiaedr3_spurious table.
pub fn collect_known(map: &mut std::collections::HashMap<String, Vec<String>>) {
let mut col_strings = Vec::new();
col_strings.push(Col::source_id.to_string());
col_strings.push(Col::fidelity_v2.to_string());
col_strings.push(Col::theta_arcsec_worst_source.to_string());
col_strings.push(Col::norm_dg.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_m2_brighter.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_0_brighter.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_2_brighter.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_4_brighter.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_6_brighter.to_string());
col_strings.push(Col::dist_nearest_neighbor_at_least_10_brighter.to_string());
col_strings.push(Col::fidelity_v1.to_string());
map.insert(gaiaedr3_spurious.string(), col_strings);
}