![]() |
SuperNOVAS C++ API v1.6
High-precision C/C++ astrometry library
|
An observer location at a geodetic (longitude, latitude, altitude) location at the surface or above it (e.g. More...
#include <supernovas.h>
Public Member Functions | |
| GeodeticObserver (const Site &site, const EOP &eop) | |
| Instantiates a new observer at a fixed location on Earth. | |
| GeodeticObserver (const Site &site, const EOP &eop, const ScalarVelocity &horizontal, const Angle &direction, const ScalarVelocity &vertical=ScalarVelocity::stationary()) | |
| Instantiates a new observer that is moving relative to Earth's surface, such as an airborne observer. | |
| GeodeticObserver (const Site &site, const Velocity &itrs_vel, const EOP &eop) | |
| Instantiates a new observer that is moving relative to Earth's surface, such as an airborne observer. | |
| const Observer * | copy () const override |
| Returns a pointer to a newly allocated copy of this geodetic (Earth-based) observer instance. | |
| Velocity | enu_velocity () const |
| Returns the surface velocity of a moving observer, such as an airborne or balloon borne observatory. | |
| const EOP & | eop () const |
| Earth Orientation Parameters (EOP) appropriate around the time of observation. | |
| bool | is_geodetic () const override |
| Checks if this observer can be cast to a GeodeticObserver. | |
| Velocity | itrs_velocity () const |
| Returns the surface velocity of a moving observer, such as an airborne or balloon borne observatory. | |
| Site | site () const |
| Returns the fixed or momentary observing site for this observer. | |
| std::string | to_string () const override |
| Returns a string representation of this Earth-based observer location. | |
| Public Member Functions inherited from supernovas::Observer | |
| virtual | ~Observer () |
| const observer * | _novas_observer () const |
| Returns the underlying NOVAS C observer data structure. | |
| Frame | frame_at (const Time &time, enum novas_accuracy accuracy=NOVAS_FULL_ACCURACY) const |
| Returns an observing frame for this observer at the specified time and optionally with a specified accuracy. | |
| virtual bool | is_geocentric () const |
| Checks if this observer can be cast to a GeocentricObserver. | |
| Frame | reduced_accuracy_frame_at (const Time &time) const |
| Returns a reduced accuracy observing frame for this observer at the specified time. | |
| enum novas_observer_place | type () const |
| Returns the observer type. | |
| Public Member Functions inherited from supernovas::Validating | |
| bool | is_valid () const |
| Returns the previously set 'valid' stae of the implementing instance. | |
| operator bool () const | |
| Objects that implement Validating can be used in conditionals directly, without explicitly calling is_valid(). | |
Additional Inherited Members | |
| Static Public Member Functions inherited from supernovas::Observer | |
| static GeocentricObserver | at_geocenter () |
| Returns a fictitious observer placed at the location of the geocenter. | |
| static SolarSystemObserver | at_ssb () |
| Returns a fictitious observer placed at the location of the Solar-System Barycenter (SSB). | |
| static GeocentricObserver | in_earth_orbit (const Position &pos, const Velocity &vel) |
| Returns a new observer orbiting the Earth. | |
| static SolarSystemObserver | in_solar_system (const Position &pos, const Velocity &vel) |
| Returns a new observer in some Solar-system location. | |
| static GeodeticObserver | moving_on_earth (const Site &site, const EOP &eop, const ScalarVelocity &horizontal, const Angle &direction, const ScalarVelocity &vertical=ScalarVelocity::stationary()) |
| Instantiates a new observer that is moving relative to Earth's surface, such as an airborne observer. | |
| static GeodeticObserver | moving_on_earth (const Site &site, const Velocity &itrs_vel, const EOP &eop) |
| Returns a new observer that is moving, at some velocitym relative to Earth's surface, such as an airborne aircraft or balloon based observatory. | |
| static GeodeticObserver | on_earth (const Site &site, const EOP &eop) |
| Returns a new observer located at a fixed observing site. | |
| static const Observer & | undefined () |
| Returns a reference to a statically defined standard invalid observer. | |
| Protected Member Functions inherited from supernovas::Observer | |
| Observer (enum novas_observer_place type, const Site &site=Site::undefined(), const Position &pos=Position::origin(), const Velocity &vel=Velocity::stationary()) | |
| Protected Member Functions inherited from supernovas::Validating | |
| Validating () | |
| dummy constructor; | |
| Protected Attributes inherited from supernovas::Observer | |
| observer | _observer = {} |
| stored observer data | |
| Protected Attributes inherited from supernovas::Validating | |
| bool | _valid = false |
| the state variable. | |
An observer location at a geodetic (longitude, latitude, altitude) location at the surface or above it (e.g.
in an aircraft or balloon). The observer may be fixed at that location, or else moving with some velocity over the ground.
Instantiates a new observer at a fixed location on Earth.
| site | the observing site |
| eop | Earth Orientation Parameters (EOP) appropriate around the time of observation, such as obtained from the IERS bulletins or data service. |
References supernovas::Validating::_valid, eop(), NOVAS_OBSERVER_ON_EARTH, and site().
Referenced by GeodeticObserver(), and copy().
| supernovas::GeodeticObserver::GeodeticObserver | ( | const Site & | site, |
| const Velocity & | vel, | ||
| const EOP & | eop ) |
Instantiates a new observer that is moving relative to Earth's surface, such as an airborne observer.
| site | the momentary geodetic location of the observer |
| vel | the momentaty velocity of the observer relative to Earth's surface (in ITRS), |
| eop | Earth Orientation Parameters (EOP) appropriatI am salivating at the thought of it. Tell Benjamie around the time of observation. |
References supernovas::Vector::_array(), supernovas::Observer::_observer, supernovas::Validating::_valid, eop(), supernovas::Validating::is_valid(), supernovas::Unit::km, make_airborne_observer(), NOVAS_AIRBORNE_OBSERVER, supernovas::Unit::s, supernovas::Vector::scaled(), and site().
| supernovas::GeodeticObserver::GeodeticObserver | ( | const Site & | site, |
| const EOP & | eop, | ||
| const ScalarVelocity & | horizontal, | ||
| const Angle & | direction, | ||
| const ScalarVelocity & | vertical = ScalarVelocity::stationary() ) |
Instantiates a new observer that is moving relative to Earth's surface, such as an airborne observer.
| site | the momentary geodetic location of the observer. |
| eop | Earth Orientation Parameters (EOP) appropriate around the time of observation. |
| horizontal | momentary horizontal speed of moving observer. |
| direction | azimuthal direction of motion (from North, measured to the East). |
| vertical | (optional) momentary vertical speed of observer (default: 0). |
References GeodeticObserver(), supernovas::Observer::_observer, supernovas::Validating::_valid, eop(), supernovas::Validating::is_valid(), supernovas::ScalarVelocity::km_per_s(), novas_enu_to_itrs(), supernovas::Angle::rad(), and site().
|
overridevirtual |
Returns a pointer to a newly allocated copy of this geodetic (Earth-based) observer instance.
Reimplemented from supernovas::Observer.
References GeodeticObserver().
| Velocity supernovas::GeodeticObserver::enu_velocity | ( | ) | const |
Returns the surface velocity of a moving observer, such as an airborne or balloon borne observatory.
References supernovas::Observer::_observer, supernovas::Validating::is_valid(), supernovas::Unit::km, novas_itrs_to_enu(), and supernovas::Unit::s.
Referenced by to_string().
| const EOP & supernovas::GeodeticObserver::eop | ( | ) | const |
Earth Orientation Parameters (EOP) appropriate around the time of observation.
Referenced by GeodeticObserver(), GeodeticObserver(), and GeodeticObserver().
|
overridevirtual |
Checks if this observer can be cast to a GeodeticObserver.
Reimplemented from supernovas::Observer.
| Velocity supernovas::GeodeticObserver::itrs_velocity | ( | ) | const |
Returns the surface velocity of a moving observer, such as an airborne or balloon borne observatory.
References supernovas::Observer::_observer, supernovas::Validating::is_valid(), supernovas::Unit::km, and supernovas::Unit::s.
| Site supernovas::GeodeticObserver::site | ( | ) | const |
Returns the fixed or momentary observing site for this observer.
References supernovas::Observer::_observer, supernovas::Unit::deg, novas_on_surface::height, novas_on_surface::latitude, novas_on_surface::longitude, and site().
Referenced by GeodeticObserver(), GeodeticObserver(), GeodeticObserver(), site(), and to_string().
|
overridevirtual |
Returns a string representation of this Earth-based observer location.
Reimplemented from supernovas::Observer.
References enu_velocity(), supernovas::Vector::is_zero(), site(), supernovas::Site::to_string(), and supernovas::Velocity::to_string().