![]() |
SuperNOVAS C++ API v1.6
High-precision C/C++ astrometry library
|
Defining the precise time of observation, and support for all relevant astronomical timescales, such as UT1, UTC, TAI, GPS, TT, TDB, TCG, TCB. More...
Classes | |
| class | supernovas::Calendar |
| Type of calendar used for representing dates, such as Gregorian, Roman, or astronomical. More... | |
| class | supernovas::CalendarDate |
| A time specified in a specific type of calendar (Gregorian, Roman, or astronomical). More... | |
| class | supernovas::Time |
| Precise astronomical time specification, supporting all relevant astronomical timescales (UT1, UTC, TAI, GPS, TT, TDB, TCG, and TCB). More... | |
Macros | |
| #define | NOVAS_GPS_TO_TAI 19.0 |
| [s] TAI - GPS time offset | |
| #define | NOVAS_JD_MJD0 2400000.5 |
| [day] Julian date at which the Modified Julian Date (MJD) is zero | |
| #define | NOVAS_JD_START_GREGORIAN 2299160.5 |
| [day] The Julian day the Gregorian calendar was introduced in 15 October 1582. | |
| #define | NOVAS_TAI_TO_TT 32.184 |
| [s] TT - TAI time offset | |
Enumerations | |
| enum | novas_timescale { NOVAS_TCB = 0 , NOVAS_TDB , NOVAS_TCG , NOVAS_TT , NOVAS_TAI , NOVAS_GPS , NOVAS_UTC , NOVAS_UT1 } |
| Constants to reference various astronomical timescales used. More... | |
Functions | |
| const Time & | supernovas::AstrometricPosition::emit_time () const |
| Returns the time at which the observed light was emitted from this position, that is antedated from the time of observation by the time it takes for light to travel to the observer. | |
| enum novas_timescale | novas_timescale_for_string (const char *restrict str) |
| Returns the timescale constant for a string that denotes the timescale in with a standard abbreviation (case insensitive). | |
| Time | supernovas::AstrometricPosition::obs_time () const |
| Returns the reference time at which this position was observed by an observer at the reference location. | |
| Time | supernovas::Source::rises_above (const Angle &el, const Frame &frame, RefractionModel ref=NULL, const Weather &weather=Weather::standard()) const |
| Returns the time when the source rises above the specified elevation next for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface. | |
| Time | supernovas::Source::sets_below (const Angle &el, const Frame &frame, RefractionModel ref=NULL, const Weather &weather=Weather::standard()) const |
| Returns the time when the source sets below the specified elevation next for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface. | |
| Time | supernovas::Source::transits_in (const Frame &frame) const |
| Returns the time when the source transits for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface. | |
| double | tt2tdb_fp (double jd_tt, double limit) |
| Returns the TDB-TT time difference with flexible precision. | |
Defining the precise time of observation, and support for all relevant astronomical timescales, such as UT1, UTC, TAI, GPS, TT, TDB, TCG, TCB.
| #define NOVAS_GPS_TO_TAI 19.0 |
[s] TAI - GPS time offset
| #define NOVAS_JD_MJD0 2400000.5 |
[day] Julian date at which the Modified Julian Date (MJD) is zero
Referenced by supernovas::Time::from_mjd(), supernovas::CalendarDate::mjd(), supernovas::Ecliptic::mjd(), supernovas::Equinox::mjd(), and supernovas::Time::mjd().
| #define NOVAS_JD_START_GREGORIAN 2299160.5 |
[day] The Julian day the Gregorian calendar was introduced in 15 October 1582.
The day prior to that was 4 October 1582 in the Julian Calendar.
Referenced by novas_day_of_year(), novas_jd_from_date(), and novas_jd_to_date().
| #define NOVAS_TAI_TO_TT 32.184 |
[s] TT - TAI time offset
Referenced by get_utc_to_tt().
| enum novas_timescale |
Constants to reference various astronomical timescales used.
| const Time & supernovas::AstrometricPosition::emit_time | ( | ) | const |
Returns the time at which the observed light was emitted from this position, that is antedated from the time of observation by the time it takes for light to travel to the observer.
| enum novas_timescale novas_timescale_for_string | ( | const char *restrict | str | ) |
Returns the timescale constant for a string that denotes the timescale in with a standard abbreviation (case insensitive).
The following values are recognised: "UTC", "UT", "UT0", "UT1", "GMT", "TAI", "GPS", "TT", "ET", "TCG", "TCB", and "TDB".
| str | String specifying an astronomical timescale |
References NOVAS_GPS, NOVAS_TAI, NOVAS_TCB, NOVAS_TCG, NOVAS_TDB, NOVAS_TT, NOVAS_UT1, and NOVAS_UTC.
Referenced by novas_parse_timescale().
| Time supernovas::AstrometricPosition::obs_time | ( | ) | const |
Returns the reference time at which this position was observed by an observer at the reference location.
References supernovas::Constant::c, supernovas::Position::distance(), supernovas::Validating::is_valid(), and supernovas::Coordinate::m().
Referenced by as_equatorial(), and referenced_to().
| Time supernovas::Source::rises_above | ( | const Angle & | el, |
| const Frame & | frame, | ||
| RefractionModel | ref = NULL, | ||
| const Weather & | weather = Weather::standard() ) const |
Returns the time when the source rises above the specified elevation next for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface.
The returned value may also be NAN if the source does not cross the specified elevation theshold within a day of the specified time of observation.
| el | elevation threshold angle |
| Observing frames | observing frame (observer location and the lower bound for the returned time). |
| ref | atmospheric refraction model to assume |
| weather | local weather parameters for the refraction calculation |
References supernovas::Frame::_novas_frame(), _object, supernovas::Angle::deg(), supernovas::Frame::eop(), supernovas::Validating::is_valid(), and novas_rises_above().
| Time supernovas::Source::sets_below | ( | const Angle & | el, |
| const Frame & | frame, | ||
| RefractionModel | ref = NULL, | ||
| const Weather & | weather = Weather::standard() ) const |
Returns the time when the source sets below the specified elevation next for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface.
The returned value may also be NAN if the source does not cross the specified elevation theshold within a day of the specified time of observation.
| el | elevation threshold angle |
| Observing frames | observing frame (observer location and the lower bound for the returned time). |
| ref | atmospheric refraction model to assume |
| weather | local weather parameters for the refraction calculation |
References supernovas::Frame::_novas_frame(), _object, supernovas::Angle::deg(), supernovas::Frame::eop(), supernovas::Validating::is_valid(), and novas_sets_below().
Returns the time when the source transits for an observer located on or near Earth's surface, or else std::nullopt if the observer is not near Earth's surface.
| Observing frames | observing frame (observer location and the lower bound for the returned time). |
References supernovas::Frame::_novas_frame(), _object, supernovas::Frame::eop(), supernovas::Validating::is_valid(), and novas_transit_time().
| double tt2tdb_fp | ( | double | jd_tt, |
| double | limit ) |
Returns the TDB-TT time difference with flexible precision.
This implementation uses the series expansion by Fairhead & Bretagnon 1990, terminating the terms at or below the specified limiting amplitude.
REFERENCES:
| jd_tt | [day] Terrestrial Time (TT) based Julian date, but Barycentric Dynamical Time (TDB) |
| limit | [us] Amplitude of limiting term to include in series. 0 or negative values will include all terms, producing the same result as tt2tdb_hp(). |
References NOVAS_JD_J2000.
Referenced by tt2tdb_hp().