Skip to main content

Native Rust astrodynamics algorithms with a Python API.

Project description

Python API

pykep_rust is the typed, collision-safe Python interface to the native pykep-core implementation. It covers foundations, epochs and anomalies, element conversion, two-body propagation and STMs, mission-design utilities, Lambert problems, ephemerides, evaluated dynamics, and low-thrust legs.

import pykep_rust as pk

assert pk.jd_to_mjd2000(2_451_544.5) == 0.0
assert pk.cross([1.0, 0.0, 0.0], [0.0, 1.0, 0.0]) == [0.0, 0.0, 1.0]
epoch = pk.Epoch.from_iso("2030-01")
assert epoch.to_iso() == "2030-01-01T00:00:00.000000"
eccentric = pk.mean_to_eccentric_anomaly(0.1, 0.5)
assert abs(pk.eccentric_to_mean_anomaly(eccentric, 0.5) - 0.1) < 1e-15
state = pk.classical_to_cartesian([7e6, 0.01, 0.4, 1.0, 0.5, 0.2], 3.986004418e14)
earth = pk.Planet.jpl_low_precision("earth")
earth_state = earth.state(0.0)

Angles are radians and Julian conversions are arithmetic day counts without an implied UTC, TT, or TDB time scale. Public numerical functions reject NaN and infinity. Sequence batch functions preserve order, release the GIL around native work, and do not create a thread pool. Numeric Epoch arithmetic uses days; add_seconds() and seconds_since() make second-based arithmetic explicit. Constructor data is copied into immutable native objects.

The wheel ships a py.typed marker and complete extension stub. The full units, shape, default, ownership, and error contract is in docs/python-api.md. Users moving from kep3 should read docs/python-migration.md; no partial legacy-name facade is installed.

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

pykep_rust-0.1.2.tar.gz (2.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pykep_rust-0.1.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pykep_rust-0.1.2-cp313-cp313-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.13Windows x86-64

pykep_rust-0.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pykep_rust-0.1.2-cp313-cp313-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pykep_rust-0.1.2-cp313-cp313-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pykep_rust-0.1.2-cp312-cp312-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.12Windows x86-64

pykep_rust-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pykep_rust-0.1.2-cp312-cp312-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pykep_rust-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pykep_rust-0.1.2-cp311-cp311-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11Windows x86-64

pykep_rust-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pykep_rust-0.1.2-cp311-cp311-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pykep_rust-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file pykep_rust-0.1.2.tar.gz.

File metadata

  • Download URL: pykep_rust-0.1.2.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2.tar.gz
Algorithm Hash digest
SHA256 22488eda2519a198387fe452adb9c877ec3ebdf9e33ea16242272c33d092d02c
MD5 7ea50ab85adaa0efa5a70ded51d08c18
BLAKE2b-256 0001ab04d0ecfe03776c1cde33dee115a05e27b6bf428ec312a946b305e3bfff

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: PyPy, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ca9991be8ed676f64a75f1e8133c0b72a58e8ac3c1b71b98a5ad57b40ca8b2d7
MD5 17d9c0d66060858a2a067e1ce40b1140
BLAKE2b-256 b164cdc7739ab0fd73bd6b3988dbab6ba912b160f96879fe7b976d991e09f581

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0e1c1c3071a664a1531efd04c41e8aa6610980c5e1bb1d1d3b10376fa8b38c73
MD5 2bc48854bf6daaff1995a7b9f20741ab
BLAKE2b-256 d8e4dd38d21db94b48fe28975cc228655198d0deb95d6f02662629d4a3a32642

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7b45e7c28972289560c4191860089a235706c6d94d79fc7580c7f09f18acdb58
MD5 e590a967c11aa797f4210e1fb1bc8dd5
BLAKE2b-256 4389b748acb60f46008459c4f10f369dc7952187421f1635dcdf438da30d72b8

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: CPython 3.13, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d91ec6c1745b80d6b7411158a70f772b2e8f72090e91ef90a6086b91805535ea
MD5 779a2daf8092b4c08216bdaa37a53487
BLAKE2b-256 c76f9d8a490691ee8ace3260c724b8bb0c78c4b163b509cf0f9b8ff317b085b0

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp313-cp313-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.13, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a9ab771ecc92b47419346d7b49590452e3a04dd93e4fefe4f8436a409a52f8a6
MD5 cef27f2b28da92c9655bb42ea81f27df
BLAKE2b-256 598c53b29ad874231e9ab087dce96a74fbd3b50ae84e024a1bfe57cba57574c4

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 df722da1e95160eb34d6830057830601befe8fb6173671db6615d96ead16b267
MD5 213690c1f0c353364fc0ca28d6ec879d
BLAKE2b-256 9d39b59d558983af8a9893f057214a6c95db819e6ef59b5cf48ce6e63612bfab

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 006de9983f298af3cc9aa0d4157bd98e81060a1c7cad0cb6ba26d3e836b45ec1
MD5 552ec92cace8bfab8be31aefb2b897f1
BLAKE2b-256 086c2a4cc62a1858ac09f2ba13fe0d3e74359787ad71edc0b2a5a253f2636e68

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2da0a8fa1e75a9179a22ac9117c9d0df8151157b2e21e2585cafd59209f56b8e
MD5 da3f43d2d4f0f5b0169d3286582f4d4e
BLAKE2b-256 254d6c068ea85b4bc8f6708f51f9c7289ae24dec7139ad09748fb051cf925e8b

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.12, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bee2fea51f7edc9f2c4fb854c1daa4205adcfb80016758a8574d3e0d9e9e1310
MD5 1b6b19f3b60600189b6787ce8bc2569b
BLAKE2b-256 269e011871c0a949f0db9e46badb9a625b3cb6946fbae3239a8c40b13add054e

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 51ff0fb985fb02a518c376c30981f717924dafd27e63314df993dd16e676ceb4
MD5 c71e0dd5e2e469950e0c48bb19ed45d5
BLAKE2b-256 00ac01a1d159a72c3d8722f9d7909f4cd1b38f967b15f88d399c80d054898f43

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e52873f62b314c137adcfd3cee9c171b51c3355bf2e560cafe88c29b7de01caa
MD5 34268c9c61e32b4e9540d37c08ee23a2
BLAKE2b-256 9530fdb71c8babfb8bf2216aec6af0c2731510bb2789fceaa7f638e029505932

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: CPython 3.11, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 91f5b84294d0066f10e33c16205042c80b0d586a1ec7366fbf04cea6c0b58e90
MD5 d2f17b1752a14019a98ac5d9a7bd6654
BLAKE2b-256 897fde394590f6f0bf0158c998b443f823dcebd8ad1b2aeec923219f7011c85a

See more details on using hashes here.

File details

Details for the file pykep_rust-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pykep_rust-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.11, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pykep_rust-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8d9cdb30344946e7a23ce7c739b83b6e7b64ae90fec6f8e20297ae220401fd10
MD5 acc6cc4395dea1248a88f4b3036b915b
BLAKE2b-256 2e15221a4c2b5c79d38ed5fc6f23b59e54cf97e18ff5348ecfd8ecba917ae81f

See more details on using hashes here.

Supported by

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