![]() |
SuperNOVAS C++ API v1.6
High-precision C/C++ astrometry library
|
Geometric locations are 3D positions and velocities relative to an observer location. More...
Classes | |
| class | supernovas::AstrometricPosition |
| The 3D geometric equatorial position of an object, relative to a reference Solar-system location and a specific instant of time, in the coordinate system of choice. More... | |
| class | supernovas::Geometric |
| The geometric (3D) position and velocity of a source relative to an observer location. More... | |
| class | supernovas::Position |
| A 3D physical position vector in space. More... | |
| class | supernovas::Velocity |
| A 3D physical velocity vector in space. More... | |
Functions | |
| Geometric | supernovas::Planet::approx_geometric_in (const Frame &frame) const |
| Returns approximate eometric posiitions and velocities for a major planet, Sun, Moon, Earth-Moon Barycenter (EMB) – typically to arcmin level accuracy – using Keplerian orbital elements. | |
| AstrometricPosition | supernovas::Apparent::astrometric_position () const |
| Returns the projected 3D position, relative to the SSB or other Solar-System place, which gave rise to these apparent place on sky. | |
| Geometric | supernovas::SolarSystemSource::barycentric_at (const Time &time, enum novas_accuracy accuracy=NOVAS_FULL_ACCURACY) const |
| Returns the Solar-system barycentric position and velocity of this Solar-system source, or else an undefined geometry if the source's place cannot be determined at the requested time or accuracy. | |
| Geometric | supernovas::Source::geometric_in (const Frame &frame, enum novas_reference_system system=NOVAS_TOD) const |
| Returns the geometric position of a source (if possible) relative to the observer, or else an invalid position if the source could not be positioned in the observing frame. | |
| Geometric | supernovas::Frame::geometric_moon_elp2000 (double limit_term=0.0) const |
| Returns the Moon's geometric position using the ELP/MPP02 model by Chapront & Francou (2003), down to the specified limiting term amplitude. | |
Geometric locations are 3D positions and velocities relative to an observer location.
They are corrected for light travel time to the observer, so they reflect the position and motion of a source when the observed light originated from the source.
Returns approximate eometric posiitions and velocities for a major planet, Sun, Moon, Earth-Moon Barycenter (EMB) – typically to arcmin level accuracy – using Keplerian orbital elements.
The orbitals can provide planet positions to arcmin-level precision for the rocky inner planets, and to a fraction of a degree precision for the gas and ice giants and Pluto. The accuracies for Uranus, Neptune, and Pluto are significantly improved (to the arcmin level) if used in the time range of 1800 AD to 2050 AD. For a more detailed summary of the typical accuracies, see either of the top two references below.
For accurate positions, you should use planetary ephemerides (such as the JPL ephemerides via the CALCEPH or CSPICE plugins) and novas_sky_pos() instead.
While this function is generally similar to creating an orbital object with an orbit initialized with novas_make_planet_orbit() or novas_make_moon_orbit(), and then calling novas_geom_posvel(), with an important difference:
REFERENCES:
| Observing frame | the observing frame for which to calculate geometric positions. |
References supernovas::Frame::_novas_frame(), supernovas::Unit::AU, supernovas::Unit::AU_per_day, supernovas::Validating::is_valid(), supernovas::Frame::jd(), novas_approx_heliocentric(), novas_id(), NOVAS_TDB, novas_frame::sun_pos, and novas_frame::sun_vel.
| AstrometricPosition supernovas::Apparent::astrometric_position | ( | ) | const |
Returns the projected 3D position, relative to the SSB or other Solar-System place, which gave rise to these apparent place on sky.
The position is antedated to the time the observed light originated from the observed body,
References astrometric_position(), supernovas::Unit::au, novas_app_to_geom(), NOVAS_TOD, and supernovas::Position::undefined().
Referenced by astrometric_position().
| Geometric supernovas::SolarSystemSource::barycentric_at | ( | const Time & | time, |
| enum novas_accuracy | accuracy = NOVAS_FULL_ACCURACY ) const |
Returns the Solar-system barycentric position and velocity of this Solar-system source, or else an undefined geometry if the source's place cannot be determined at the requested time or accuracy.
| Time of observation and astronomical timescales | The astrometric time |
| accuracy | (optional) NOVAS_FULL_ACCURACY (default), or NOVAS_REDUCED_ACCURACY. |
References supernovas::Source::_novas_object(), supernovas::Observer::at_ssb(), supernovas::Unit::AU, supernovas::Unit::AU_per_day, ephemeris(), supernovas::Time::jd(), NOVAS_BARYCENTER, NOVAS_ICRS, NOVAS_TDB, and supernovas::Geometric::undefined().
| Geometric supernovas::Source::geometric_in | ( | const Frame & | frame, |
| enum novas_reference_system | system = NOVAS_TOD ) const |
Returns the geometric position of a source (if possible) relative to the observer, or else an invalid position if the source could not be positioned in the observing frame.
After the return, you should probably check for validity:
There are multiple reasons why we might not be able to calculate valid geometric positions, such as:
A geometric position is the 3D location, relative to the observer location, where the light originated from the source before being detected by the observer at the time of observation. As such, geometric positions are necessarily antedated for light travel time (for Solar-system sources) or corrected for the differential light-travel between the Solar-system barycenter and the observer location (for sidereal sources).
In other words, geometric positions are not the same as ephemeris positions for the equivalent time for Solar-system bodies. Rather, geometric positions match the ephemeris positions for an earlier time, when the observed light originated from the source.
| Observing frame | observer frame, which defines the observer location and the time of observation, as well as the accuracy requirement. |
| system | coordinate reference system in which to return positions and velocities. |
References supernovas::Frame::_novas_frame(), _object, supernovas::Unit::au, supernovas::Unit::AU_per_day, novas_geom_posvel(), NOVAS_TOD, and supernovas::Geometric::undefined().
| Geometric supernovas::Frame::geometric_moon_elp2000 | ( | double | limit_term = 0.0 | ) | const |
Returns the Moon's geometric position using the ELP/MPP02 model by Chapront & Francou (2003), down to the specified limiting term amplitude.
NOTES:
REFERENCES:
| limit_term | (optional) [arcsec|km] Sum only the harmonic terms with amplitudes larger than this limit. |
References _novas_frame(), supernovas::Unit::AU, supernovas::Unit::AU_per_day, supernovas::Validating::is_valid(), NOVAS_ICRS, novas_moon_elp_posvel_fp(), and supernovas::Geometric::undefined().