mirror of
https://github.com/cosinekitty/astronomy.git
synced 2026-03-23 08:53:36 -04:00
119 lines
7.1 KiB
Handlebars
119 lines
7.1 KiB
Handlebars
# Astronomy Engine (JavaScript)
|
|
This is the complete programming reference for the JavaScript version
|
|
of Astronomy Engine. It supports client side programming
|
|
in the browser and backend use of [Node.js](https://nodejs.org).
|
|
Other programming languages are supported also.
|
|
See the [home page](https://github.com/cosinekitty/astronomy) for more info.
|
|
|
|
---
|
|
|
|
## Quick Start
|
|
To get started quickly, here are some [browser scripting examples](../../demo/browser/)
|
|
and some [Node.js examples](../../demo/nodejs/).
|
|
|
|
---
|
|
|
|
## Topic Index
|
|
|
|
### Position of Sun, Moon, and planets
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [HelioVector](#Astronomy.HelioVector) | Calculates vector with respect to the center of the Sun. |
|
|
| [GeoVector](#Astronomy.GeoVector) | Calculates vector with respect to the center of the Earth. |
|
|
| [Equator](#Astronomy.Equator) | Calculates right ascension and declination. |
|
|
| [Ecliptic](#Astronomy.Ecliptic) | Calculates ecliptic latitude, longitude, and Cartesian coordinates. |
|
|
| [Horizon](#Astronomy.Horizon) | Calculates horizontal coordinates (azimuth, altitude) for a given observer on the Earth. |
|
|
|
|
### Rise, set, and culmination times
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [SearchRiseSet](#Astronomy.SearchRiseSet) | Finds time of rise or set for a body as seen by an observer on the Earth. |
|
|
| [SearchHourAngle](#Astronomy.SearchHourAngle) | Finds when body reaches a given hour angle for an observer on the Earth. Hour angle = 0 finds culmination, the highest point in the sky. |
|
|
|
|
### Moon phases
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [MoonPhase](#Astronomy.MoonPhase) | Determines the Moon's phase expressed as an ecliptic longitude. |
|
|
| [SearchMoonQuarter](#Astronomy.SearchMoonQuarter) | Find the first quarter moon phase after a given date and time. |
|
|
| [NextMoonQuarter](#Astronomy.NextMoonQuarter) | Find the next quarter moon phase after a previous one that has been found. |
|
|
|
|
### Lunar perigee and apogee
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [SearchLunarApsis](#Astronomy.SearchLunarApsis) | Finds the next perigee or apogee of the Moon after a specified date. |
|
|
| [NextLunarApsis](#Astronomy.NextLunarApsis) | Given an already-found apsis, find the next perigee or apogee of the Moon. |
|
|
|
|
### Visual magnitude and elongation
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [Illumination](#Astronomy.Illumination) | Calculates visual magnitude and phase angle of bodies as seen from the Earth. |
|
|
| [SearchPeakMagnitude](#Astronomy.SearchPeakMagnitude) | Searches for the date and time Venus will next appear brightest as seen from the Earth. |
|
|
| [AngleFromSun](#Astronomy.AngleFromSun) | Returns full angle seen from Earth between body and Sun. |
|
|
| [Elongation](#Astronomy.Elongation) | Calculates ecliptic longitude angle between a body and the Sun, as seen from the Earth. |
|
|
| [SearchMaxElongation](#Astronomy.SearchMaxElongation) | Searches for the next maximum elongation event for Mercury or Venus that occurs after the given date. |
|
|
|
|
### Oppositions and conjunctions
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [SearchRelativeLongitude](#Astronomy.SearchRelativeLongitude) | Find oppositions and conjunctions of planets. |
|
|
|
|
### Equinoxes and solstices
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [Seasons](#Astronomy.Seasons) | Finds the equinoxes and solstices for a given calendar year. |
|
|
|
|
### Coordinate transforms
|
|
|
|
The following four orientation systems are supported.
|
|
Astronomy Engine can convert a vector from any of these orientations to any of the others.
|
|
It also allows converting from a vector to spherical (angular) coordinates and back,
|
|
within a given orientation. Note the 3-letter codes for each of the orientation systems;
|
|
these are used in function and type names.
|
|
|
|
- **EQJ = Equatorial J2000**: Uses the Earth's equator on January 1, 2000, at noon UTC.
|
|
- **EQD = Equator of-date**: Uses the Earth's equator on a given date and time, adjusted for precession and nutation.
|
|
- **ECL = Ecliptic**: Uses the mean plane of the Earth's orbit around the Sun. The x-axis is referenced against the J2000 equinox.
|
|
- **HOR = Horizontal**: Uses the viewpoint of an observer at a specific location on the Earth at a given date and time.
|
|
|
|
| Function | Description |
|
|
| -------- | ----------- |
|
|
| [RotateVector](#Astronomy.RotateVector) | Applies a rotation matrix to a vector, yielding a vector in another orientation system. |
|
|
| [InverseRotation](#Astronomy.InverseRotation) | Given a rotation matrix, finds the inverse rotation matrix that does the opposite transformation. |
|
|
| [CombineRotation](#Astronomy.CombineRotation) | Given two rotation matrices, returns a rotation matrix that combines them into a net transformation. |
|
|
| [VectorFromSphere](#Astronomy.VectorFromSphere) | Converts spherical coordinates to Cartesian coordinates. |
|
|
| [SphereFromVector](#Astronomy.SphereFromVector) | Converts Cartesian coordinates to spherical coordinates. |
|
|
| [VectorFromEquator](#Astronomy.VectorFromEquator) | Given angular equatorial coordinates, calculates equatorial vector. |
|
|
| [EquatorFromVector](#Astronomy.EquatorFromVector) | Given an equatorial vector, calculates equatorial angular coordinates. |
|
|
| [VectorFromHorizon](#Astronomy.VectorFromHorizon) | Given apparent angular horizontal coordinates, calculates horizontal vector. |
|
|
| [HorizonFromVector](#Astronomy.HorizonFromVector) | Given a vector in horizontal orientation, calculates horizontal angular coordinates. |
|
|
| [Rotation_EQD_EQJ](#Astronomy.Rotation_EQD_EQJ) | Calculates a rotation matrix from equatorial of-date (EQD) to equatorial J2000 (EQJ). |
|
|
| [Rotation_EQD_ECL](#Astronomy.Rotation_EQD_ECL) | Calculates a rotation matrix from equatorial of-date (EQD) to ecliptic J2000 (ECL). |
|
|
| [Rotation_EQD_HOR](#Astronomy.Rotation_EQD_HOR) | Calculates a rotation matrix from equatorial of-date (EQD) to horizontal (HOR). |
|
|
| [Rotation_EQJ_EQD](#Astronomy.Rotation_EQJ_EQD) | Calculates a rotation matrix from equatorial J2000 (EQJ) to equatorial of-date (EQD). |
|
|
| [Rotation_EQJ_ECL](#Astronomy.Rotation_EQJ_ECL) | Calculates a rotation matrix from equatorial J2000 (EQJ) to ecliptic J2000 (ECL). |
|
|
| [Rotation_EQJ_HOR](#Astronomy.Rotation_EQJ_HOR) | Calculates a rotation matrix from equatorial J2000 (EQJ) to horizontal (HOR). |
|
|
| [Rotation_ECL_EQD](#Astronomy.Rotation_ECL_EQD) | Calculates a rotation matrix from ecliptic J2000 (ECL) to equatorial of-date (EQD). |
|
|
| [Rotation_ECL_EQJ](#Astronomy.Rotation_ECL_EQJ) | Calculates a rotation matrix from ecliptic J2000 (ECL) to equatorial J2000 (EQJ). |
|
|
| [Rotation_ECL_HOR](#Astronomy.Rotation_ECL_HOR) | Calculates a rotation matrix from ecliptic J2000 (ECL) to horizontal (HOR). |
|
|
| [Rotation_HOR_EQD](#Astronomy.Rotation_HOR_EQD) | Calculates a rotation matrix from horizontal (HOR) to equatorial of-date (EQD). |
|
|
| [Rotation_HOR_EQJ](#Astronomy.Rotation_HOR_EQJ) | Calculates a rotation matrix from horizontal (HOR) to J2000 equatorial (EQJ). |
|
|
| [Rotation_HOR_ECL](#Astronomy.Rotation_HOR_ECL) | Calculates a rotation matrix from horizontal (HOR) to ecliptic J2000 (ECL). |
|
|
|
|
---
|
|
|
|
## API Reference
|
|
|
|
{{#namespace name="Astronomy"}}
|
|
{{>header~}}
|
|
{{>body}}
|
|
{{>separator~}}
|
|
{{>members~}}
|
|
{{/namespace}}
|