This component is a .NET presentation of the subroutines and function in the US Naval Observatory NOVAS 3.1 library. The following is extracted from its accompanying pdf document, which is also included in the ASCOM distribution
The Naval Observatory Vector Astrometry Software (NOVAS) is a source-code library in Fortran, C, and Python that provides common astrometric quantities and transformations. It can supply, in one or two function calls, the instantaneous celestial position of any star or planet in a variety of coordinate systems. The library also provides access to all of the “building blocks” that go into such computations—single-purpose functions for common astrometric algorithms, such as those for precession, nutation, aberration, parallax, etc. NOVAS calculations are accurate at the sub-milliarcsecond level.
The NOVAS algorithms are based on a vector and matrix formulation that is rigorous and consistent with recent recommendations of the International Astronomical Union (IAU). Objects inside and outside the solar system are treated similarly. The position vectors formed and operated on by the NOVAS functions are defined within either the Barycentric Celestial Reference System (BCRS) or the Geocentric Celestial Reference System (GCRS), as appropriate. Both of these systems are described in IAU resolutions passed in 2000. GCRS quantities are converted to more familiar coordinate systems, such as the equator and equinox of date, by applying standard rotations.
| Novas | NOVAS31: Class presenting the contents of the USNO NOVAS 3.1 library. NOVAS was developed by the Astronomical Applications department of the United States Naval Observatory. |
| CatEntry3 | Catalogue entry structure |
| FundamentalArgs | Structure to hold Sun and Moon fundamental arguments |
| InSpace | Observer’s position and velocity in a near-Earth spacecraft. |
| Object3 | Celestial object structure |
| Observer | General specification for the observer's location |
| OnSurface | Parameters of observer's location |
| PosVector | Structure to hold a position vector |
| RAOfCio | Right ascension of the Celestial Intermediate Origin (CIO) with respect to the GCRS. |
| SkyPos | Celestial object's place in the sky |
| VelVector | Structure to hold a velocity vector |
| Accuracy | Calculation accuracy |
| BodyType | Type of body, Major Planet, Moon, Sun or Minor Planet |
| CoordSys | Coordinate system of the output position |
| EarthDeflection | Location of observer, determining whether the gravitational deflection due to the earth itself is applied. |
| EquinoxType | Type of equinox |
| EventType | Type of event for which an ephemeris is required |
| FrameConversionDirection | Direction of frame conversion |
| GstType | Type of sidereal time |
| Method | Computation method |
| NutationDirection | Direction of nutation correction |
| ObjectType | Type of object |
| ObserverLocation | Location of observer |
| Origin | Co-ordinate origin: centre of Sun or solar system barycentre |
| OutputVectorOption | Output vector reference system |
| PoleOffsetCorrection | Type of pole offset |
| ReferenceSystem | Reference system in which right ascension is given |
| RefractionOption | Type of refraction correction |
| Target | Body or location |
| TransformationDirection | Direction of transformation: ITRS to Terrestrial Intermediate or vice versa |
| TransformationOption3 | Type of transformation |