pub struct TopocentricPosition { /* private fields */ }Implementations§
Source§impl TopocentricPosition
impl TopocentricPosition
pub fn new( azimuth: Angle, elevation: Angle, observer: Location, epoch: TT, ) -> CoordResult<Self>
pub fn with_distance( azimuth: Angle, elevation: Angle, observer: Location, epoch: TT, distance: Distance, ) -> CoordResult<Self>
pub fn from_degrees( az_deg: f64, el_deg: f64, observer: Location, epoch: TT, ) -> CoordResult<Self>
pub fn azimuth(&self) -> Angle
pub fn elevation(&self) -> Angle
pub fn observer(&self) -> &Location
pub fn epoch(&self) -> TT
pub fn distance(&self) -> Option<Distance>
pub fn set_distance(&mut self, distance: Distance)
pub fn zenith_angle(&self) -> Angle
pub fn air_mass(&self) -> f64
pub fn air_mass_rozenberg(&self) -> f64
Sourcepub fn air_mass_pickering(&self) -> f64
pub fn air_mass_pickering(&self) -> f64
Computes airmass using Pickering’s (2002) empirical formula.
§Valid Range
- Returns
f64::INFINITYfor elevations ≤ -2° (below horizon) - Accurate for elevations > -2° (including astronomical twilight)
- Values become increasingly unreliable as elevation approaches -2°
§Numerical Stability
Near the horizon (0° to 5°), results can be very large but remain finite.
Use this method only if observations extend below the horizon; otherwise
prefer air_mass_hardie() or air_mass_kasten_young().
Reference: Pickering, K. A. (2002). “The Southern Limits of the Ancient Star Catalog”. DIO 12, 3-27.
pub fn air_mass_kasten_young(&self) -> f64
pub fn atmospheric_refraction( &self, pressure_hpa: f64, temp_celsius: f64, rel_humidity: f64, wavelength_um: f64, ) -> Angle
pub fn with_refraction( &self, pressure_hpa: f64, temp_celsius: f64, rel_humidity: f64, wavelength_um: f64, ) -> Self
pub fn without_refraction( &self, pressure_hpa: f64, temp_celsius: f64, rel_humidity: f64, wavelength_um: f64, ) -> Self
pub fn diurnal_parallax(&self) -> Option<Angle>
pub fn horizontal_parallax(&self) -> Option<Angle>
pub fn with_diurnal_parallax(&self) -> Self
pub fn without_diurnal_parallax(&self) -> Self
pub fn is_above_horizon(&self) -> bool
pub fn is_near_zenith(&self) -> bool
pub fn is_near_horizon(&self) -> bool
pub fn cardinal_direction(&self) -> &'static str
pub fn parallactic_angle(&self, hour_angle: Angle, declination: Angle) -> Angle
pub fn to_hour_angle(&self) -> CoordResult<HourAnglePosition>
pub fn to_cirs(&self, delta_t: f64) -> CoordResult<CIRSPosition>
Trait Implementations§
Source§impl Clone for TopocentricPosition
impl Clone for TopocentricPosition
Source§fn clone(&self) -> TopocentricPosition
fn clone(&self) -> TopocentricPosition
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TopocentricPosition
impl Debug for TopocentricPosition
Source§impl Display for TopocentricPosition
impl Display for TopocentricPosition
Source§impl PartialEq for TopocentricPosition
impl PartialEq for TopocentricPosition
impl StructuralPartialEq for TopocentricPosition
Auto Trait Implementations§
impl Freeze for TopocentricPosition
impl RefUnwindSafe for TopocentricPosition
impl Send for TopocentricPosition
impl Sync for TopocentricPosition
impl Unpin for TopocentricPosition
impl UnsafeUnpin for TopocentricPosition
impl UnwindSafe for TopocentricPosition
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more