use super::Star;
use crate::coordinates::spherical::position::EquatorialMeanJ2000;
use crate::targets::CoordinateWithPM;
use crate::time::JulianDate;
use qtty::length::nominal::SolarRadiuses;
use qtty::*;
pub const VEGA: Star<'static> = Star::new_const(
"Vega",
LightYears::new(25.0),
SolarMasses::new(2.135),
SolarRadiuses::new(2.59),
SolarLuminosities::new(40.12),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(38.7837), Degrees::new(279.2347), LightYears::new(25.0),
),
JulianDate::J2000,
),
);
pub const POLARIS: Star<'static> = Star::new_const(
"Polaris",
LightYears::new(433.0),
SolarMasses::new(6.5),
SolarRadiuses::new(46.0),
SolarLuminosities::new(2500.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(89.26410897), Degrees::new(37.95456067), LightYears::new(433.0),
),
JulianDate::J2000,
),
);
pub const SIRIUS: Star<'static> = Star::new_const(
"Sirius",
LightYears::new(8.6),
SolarMasses::new(2.063),
SolarRadiuses::new(1.713),
SolarLuminosities::new(24.7),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(-16.716115867), Degrees::new(101.28715533), LightYears::new(8.6),
),
JulianDate::J2000,
),
);
pub const CANOPUS: Star<'static> = Star::new_const(
"Canopus",
LightYears::new(310.0),
SolarMasses::new(8.0),
SolarRadiuses::new(71.0),
SolarLuminosities::new(13_600.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(-52.69566111), Degrees::new(95.98787778), LightYears::new(310.0),
),
JulianDate::J2000,
),
);
pub const ARCTURUS: Star<'static> = Star::new_const(
"Arcturus",
LightYears::new(36.7),
SolarMasses::new(1.1),
SolarRadiuses::new(26.0),
SolarLuminosities::new(170.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(19.1825), Degrees::new(213.9153), LightYears::new(36.7),
),
JulianDate::J2000,
),
);
pub const RIGEL: Star<'static> = Star::new_const(
"Rigel",
LightYears::new(860.0),
SolarMasses::new(17.0),
SolarRadiuses::new(78.9),
SolarLuminosities::new(120_000.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(-8.20163889), Degrees::new(78.634467), LightYears::new(860.0),
),
JulianDate::J2000,
),
);
pub const BETELGEUSE: Star<'static> = Star::new_const(
"Betelgeuse",
LightYears::new(548.0),
SolarMasses::new(11.6),
SolarRadiuses::new(724.0),
SolarLuminosities::new(14_000.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(7.407064), Degrees::new(88.792939), LightYears::new(548.0),
),
JulianDate::J2000,
),
);
pub const PROCYON: Star<'static> = Star::new_const(
"Procyon",
LightYears::new(11.5),
SolarMasses::new(1.499),
SolarRadiuses::new(2.048),
SolarLuminosities::new(6.93),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(5.224993), Degrees::new(114.825493), LightYears::new(11.5),
),
JulianDate::J2000,
),
);
pub const ALDEBARAN: Star<'static> = Star::new_const(
"Aldebaran",
LightYears::new(65.1),
SolarMasses::new(1.16),
SolarRadiuses::new(45.1),
SolarLuminosities::new(439.0),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(16.509302), Degrees::new(68.980163), LightYears::new(65.1),
),
JulianDate::J2000,
),
);
pub const ALTAIR: Star<'static> = Star::new_const(
"Altair",
LightYears::new(16.7),
SolarMasses::new(1.86),
SolarRadiuses::new(1.79),
SolarLuminosities::new(10.6),
CoordinateWithPM::<EquatorialMeanJ2000<LightYear>>::new_static(
EquatorialMeanJ2000::<LightYear>::new_raw(
Degrees::new(8.868321), Degrees::new(297.695827), LightYears::new(16.7),
),
JulianDate::J2000,
),
);