Files
astronomy/demo/python
Don Cross 71cb92df08 Calculate barycentric state of Pluto.
The BaryState function did not support Pluto before.
Refactored the code so that the internal CalcPluto function
returns both the position and velocity, and its caller
can select from heliocentric or barycentric coordinates.
HelioVector asks for heliocentric coordinates and keeps
only the position vector. BaryState asks for barycentric
coordinates and returns both position and velocity.

I added test data for Pluto generated by JPL Horizons.
It turns out the Pluto system barycenter is the best fit
for TOP2013, presumably because Charon causes Pluto to
wobble quite a bit.

I also generated JPL Horizons test data for the Moon
and the Earth/Moon barycenter, anticipating that I will
support calculating their barycentric state vectors soon.

I had to increase the enforced size limit for minified
JavaScript from 100000 bytes to 120000 bytes.
I guess this is like raising the "debt ceiling".

Fixed a bug in Python unit tests: if "-v" verbose option
was specified, it was printing a summary line for every
single line of input, instead of a single summary after
processing the whole file, as was intended. This is one
of those Python whitespace indentation bugs!
2021-11-13 16:07:00 -05:00
..
2019-08-10 18:02:15 -04:00
2021-06-14 12:29:33 -04:00
2021-07-19 22:09:49 -04:00
2019-08-10 17:38:04 -04:00

Astronomy Engine examples in Python


Camera

Suppose you want to photograph the Moon, and you want to know what it will look like in the photo. Given a location on the Earth, and a date/time, this program calculates the orientation of the sunlit side of the Moon with respect to the top of your photo image. It assumes the camera faces directly toward the Moon's azimuth and tilts upward to its altitude angle above the horizon.

Constellation

This demo shows how to find what constellation a body is in at a given time. It also shows how to do a binary search to find the moment in time when a body moves across the border between constellations.

Culmination

Finds when the Sun, Moon, and planets reach their highest position in the sky on a given date, as seen by an observer at a specified location on the Earth. Culmination is also the moment a body crosses the meridian, the imaginary semicircle in the sky that passes from due north on the horizon, through the zenith (straight up), and then toward due south on the horizon.

Galactic to Horizontal Converter

A demonstration of how to convert galactic coordinates to horizontal coordinates. This could be useful for backyard radio astronomers who know the galactic coordinates of a distant radio source and want to aim a radio dish at it. Given the galactic coordinates, the geographic coordinates of the observer, and the date and time of the observation, this program shows how to obtain the altitude and azimuth to aim the dish at the radio source.

Horizon Intersection

This is a more advanced example. It shows how to use coordinate transforms to find where the ecliptic intersects with an observer's horizon at a given date and time.

Jupiter's Moons

Calculates the coordinates of Jupiter and its four major moons (Io, Europa, Ganymede, and Callisto) as seen from the Earth at a given date and time. This program illustrates how to correct for the delay caused by the time it takes for light to reach the Earth from the Jupiter system.

Lunar Angles

This is an example of how to implement your own custom search function using Astronomy Engine. This program searches for the next few times the Moon reaches a relative ecliptic longitude with respect to another body (as seen from the Earth) that is a multiple of 30 degrees.

Lunar Eclipse

Calculates details about the first 10 partial/total lunar eclipses after the given date and time.

Moon Phase Calculator

This example shows how to determine the Moon's current phase, and how to predict when the next few quarter phases will occur.

Positions

Calculates equatorial and horizontal coordinates of the Sun, Moon, and planets.

Rise/Set

Shows how to calculate sunrise, sunset, moonrise, and moonset times.

Seasons

Calculates the equinoxes and solstices for a given calendar year.

Triangulate

Given the geographic coordinates of two observers, and angular directions they are looking in, determines geographic coordinates of the point they are both looking at. This example demonstrates use of the geoid functions VectorObserver and ObserverVector that convert between geographic coordinates and vectors.


API Reference

Complete documentation for all the functions and types available in the Python version of Astronomy Engine.