Loading...
Searching...
No Matches
Observing frame

Observing frames are a combination of an observer place, and a specific time of observation. More...

## Classes

class | supernovas::Frame
| An observing frame, defined by an observer location and precise time of observation. More...

## Enumerations

enum | novas_accuracy { NOVAS_FULL_ACCURACY = 0 , NOVAS_REDUCED_ACCURACY }
| Constants to control the precision of NOVAS nutation calculations. More...

## Functions

Frame | supernovas::Observer::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.
Frame | supernovas::Observer::reduced_accuracy_frame_at (const Time &time) const
| Returns a reduced accuracy observing frame for this observer at the specified time.

## Detailed Description

Observing frames are a combination of an observer place, and a specific time of observation.

SuperNOVAS observing frames are not to be confused with coordinate reference frames, even if the two do have aspects in common. Both are referenced to an observer location and a specific time of observation. But, a coordinate reference frame (such as ICRF) also implies a particular choice of a coordinate system, whereas a SuperNOVAS observing frame does not.

The power of observing frames is that they make it easy to express locations on the celestial sphere in any coordinate system, and allow to convert apparent places and geometric coordinates between different coordinate systems with superior efficiency.

## Enumeration Type Documentation

## novas_accuracy

enum novas_accuracy

Constants to control the precision of NOVAS nutation calculations.

See also
  novas_make_frame()

Enumerator
NOVAS_FULL_ACCURACY | Use full precision calculations to micro-arcsecond accuracy. It can be computationally intensive when using the dynamical equator.
NOVAS_REDUCED_ACCURACY | Calculate with truncated terms. It can be significantly faster if a few milliarcsecond accuracy is sufficient.

## Function Documentation

## frame_at()

Frame supernovas::Observer::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.

Full accuracy frames (default) require that a high-precision planet provider is configured prior, to the call.

Parameters

  time | Astrometric time of observation
  accuracy | (optional) NOVAS_FULL_ACCYRACY (default) or NOVAS_REDUCED_ACCURACY

Returns
  An observing frame, which may be invalid if a valid observing frame could not be created with the accuracy, for example because no high accuracy planetary position provider was specified, or because either this observer or the time itself were invalid. The caller should typically check for validity after the call.

Since
  1.6

See also
  reduced_accuracy_frame_at()
  set_planet_provider_hp(), novas_use_calceph(), novas_use_calceph_planets(), novas_use_cspice()

References frame_at(), and supernovas::Validating::is_valid().

Referenced by frame_at().

## reduced_accuracy_frame_at()

Frame supernovas::Observer::reduced_accuracy_frame_at | ( | const Time & | time | ) | const

Returns a reduced accuracy observing frame for this observer at the specified time.

Reduced accuracy frames provide 1 mas accuracy typically, and do not require a planetary or other ephemeris provider to be configured. As such, they offer a simple way for obtaining astrometric positions for catalog and orbital sources at the 1 mas level.

Note, that the returned frame may be invalid, if the this observer or the time argument themselves are invalid.

Parameters

  time | Astrometric time of observation

Returns
  A reduced accuracy observing frame for the specified time of observation.

Since
  1.6

See also
  frame_at()

References supernovas::Validating::is_valid(), supernovas::Frame::reduced_accuracy(), and reduced_accuracy_frame_at().

Referenced by reduced_accuracy_frame_at().