Skip to main content

A python package for querying NASA's JPL HORIZONS API

Project description

Author: Behrouz Safari
License: MIT

hypatie

A python package for querying NASA's JPL HORIZONS API

Installation

You can install the latest version of hypatie from PyPI:

pip install hypatie

The only requirement is numpy.

Quick start

Let's get the positions of the sun between two times:

import hypatie as hp

t1 = '2021-03-20 08:00:00'
t2 = '2021-03-20 10:00:00'

If you want the apparent RA and DEC of the Sun with respect to Earth's center (geocentric):

obs = hp.Observer('sun', t1, t2, step=5)

Now you can access the time intervals with .time attribute:

print(obs.time)

[datetime.datetime(2021, 3, 20, 8, 0)
 datetime.datetime(2021, 3, 20, 8, 24)
 datetime.datetime(2021, 3, 20, 8, 48)
 datetime.datetime(2021, 3, 20, 9, 12)
 datetime.datetime(2021, 3, 20, 9, 36)
 datetime.datetime(2021, 3, 20, 10, 0)]

To acces the position you can use obs.pos, obs.ra, or obs.dec:

print(obs.pos)

[[ 3.59938235e+02 -2.66803120e-02]
 [ 3.59953431e+02 -2.00920520e-02]
 [ 3.59968627e+02 -1.35038600e-02]
 [ 3.59983823e+02 -6.91573600e-03]
 [ 3.59999018e+02 -3.27680000e-04]
 [ 1.42132560e-02  6.26030600e-03]]

The first column in the above array is RA and the second column is DEC.

It is possible to the apparent RA & DEC of a targer with respect to a specified coordinates on the surface of a body. For example, if you want to get the apparent RA & DEC of the Sun for the Eiffel Tower :

obs = hp.Observer('sun', t1, t2, step=5, center='2.2945,48.8584,300@399')

Note that 2.2945 is the lingtitude, 48.8584 is the latitude and 300 (meters) is the elevation of the Eiffel Tower. We have specified '@399' at the end which means that this coordinates is situated on the Earth (399 is the Earth's code).

You can request the cartesian positions (x,y,z) of a target with Vector class.

vec = hp.Vector('sun', t1, t2, step=5)

As with the Observer class, there are two attributes .time and .pos for Vector class. Note the when creating a Vector class, you have .x, .y and .z attributes instead of .ra and .des.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hypatie-0.0.6.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

hypatie-0.0.6-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file hypatie-0.0.6.tar.gz.

File metadata

  • Download URL: hypatie-0.0.6.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.0

File hashes

Hashes for hypatie-0.0.6.tar.gz
Algorithm Hash digest
SHA256 089c92eb12d9cc9591c860858f2fea5abd8b198376775953bea4d1364359fdf5
MD5 d644c2895ffbbca9dc352e57cea349cb
BLAKE2b-256 0ee4fc75c200ed476c31d92b3c20ff75c5345077715a277dc2f03ad7fa00c594

See more details on using hashes here.

File details

Details for the file hypatie-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: hypatie-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.0

File hashes

Hashes for hypatie-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 57956c77812117c484e638d1d85505bc0c34693770d6fce35f38c8a79f14a15e
MD5 9c9842776a627a8b9cf6c8227b2aa4bc
BLAKE2b-256 28054ca5d8ae79bc12936f6b701c0686233230bd3a4473cb2c4e5a6a3387e5bc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page