Skip to main content

ADAM Core Propagator class using ASSIST

Project description

adam-assist

PyPI - Version PyPI - Python Version


Table of Contents

Overview

adam-assist is a pluggable propagator class for the adam-core package that uses ASSIST for propagating orbits.

Installation

pip install adam-assist

Usage

Propagating Orbits

Here we initialize a set of adam_core.orbit.Orbit objects from the JPL Small Bodies Database and propagate them using the AdamAssistPropagator class. You can manually initialize the orbits as well.

from adam_core.orbits.query.sbdb import query_sbdb
from adam_core.time import Timestamp
from adam_core.propagator.adam_assist import ASSISTPropagator

# Query the JPL Small Bodies Database for a set of orbits
sbdb_orbits = query_sbdb(["2020 AV2", "A919 FB", "1993 SB"])
times = Timestamp.from_mjd([60000, 60365, 60730], scale="tdb")


propagator = ASSISTPropagator()

propagated = propagator.propagate_orbits(sbdb_orbits, times)

Of course you can define your own orbits as well.

import pyarrow as pa
from adam_core.orbits import Orbit
from adam_core.coordinates import CartesianCoordinates, Origin
from adam_core.time import Timestamp
from adam_core.propagator.adam_assist import ASSISTPropagator

# Define an orbit
orbits = Orbit.from_kwargs(
  orbit_id=["1", "2", "3"],
  coordinates=CartesianCoordinates.from_kwargs(
    # use realistic cartesian coords in AU and AU/day
    x=[-1.0, 0.0, 1.0],
    y=[-1.0, 0.0, 1.0],
    z=[-1.0, 0.0, 1.0],
    vx=[-0.1, 0.0, 0.1],
    vy=[-0.1, 0.0, 0.1],
    vz=[-0.1, 0.0, 0.1],
    time=Timestamp.from_mjd([60000, 60365, 60730], scale="tdb"),
    origin=Origin.from_kwargs(code=pa.repeat("SUN", 3)),
    frame="eliptic"
  ),
)

propagator = ASSISTPropagator()

propagated = propagator.propagate_orbits(orbits)

Generating Ephemerides

The ASSISTPropagator class uses the adam-core default ephemeris generator to generate ephemerides from the ASSIST propagated orbits. The default ephemeris generator accounts for light travel time and aberration. See adam_core.propagator.propagator.EphemerisMixin for implementation details.

from adam_core.orbits.query.sbdb import query_sbdb
from adam_core.time import Timestamp
from adam_core.observers import Observers
from adam_core.propagator.adam_assist import ASSISTPropagator

# Query the JPL Small Bodies Database for a set of orbits
sbdb_orbits = query_sbdb(["2020 AV2", "A919 FB", "1993 SB"])
times = Timestamp.from_mjd([60000, 60365, 60730], scale="utc")
observers = Observers.from_code("399", times)
propagator = ASSISTPropagator()

ephemerides = propagator.generate_ephemeris(sbdb_orbits, observers)

Project details


Download files

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

Source Distribution

adam_assist-0.1.4.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

adam_assist-0.1.4-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file adam_assist-0.1.4.tar.gz.

File metadata

  • Download URL: adam_assist-0.1.4.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.19.2 CPython/3.12.7 Darwin/23.6.0

File hashes

Hashes for adam_assist-0.1.4.tar.gz
Algorithm Hash digest
SHA256 0b94acc6404255800a945db785c5366c0faca3251607048d8693dc7f5646ae7d
MD5 fe8819a07e3340f208dabe0bb433010b
BLAKE2b-256 2ddb74a5d546b638ee964f3052255f1f4203d4790dc05eabcf898952dd786c01

See more details on using hashes here.

File details

Details for the file adam_assist-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: adam_assist-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.19.2 CPython/3.12.7 Darwin/23.6.0

File hashes

Hashes for adam_assist-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b9bb5daa49ffa98b4b9ba0c9de375dd39a6c6ce8175076b0ca99a3047a7369ca
MD5 900e3a14f0d594a6ca021fa7deffee6a
BLAKE2b-256 03f1a28dabde97ccc2b6a006de6efef40e82a2099622c2861e87f41e29380aa4

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