Skip to main content

A Python Integrator for General Relativistic Orbits

Project description

PyGRO

A Python integrator for General Relativistic Orbits

PyGRO is a Python library that provides methods and functions to perform the numerical integration of the geodesic equations describing a particle or photon orbit in any metric theory of gravity, given an alaytic expression of the metric tensor.


Installation

PyGRO is distributed as a Python package that can be installed through the PyPi package mangaer via:

pip install pygro

or by cloning this GitHub repository.

Documentation

The complete documentation for PyGRO is available on docs.


Minimal example

PyGRO comes with several built-in spacetimes that can be used to study the motion of test massive and mass-less particles undergoing geodesic motion.

This is an example of time-like geodesic around a Kerr black hole in Boyer-Lindquist coordinates (default_metrics.KerrBL())

import pygro
import numpy as np

metric = pygro.default_metrics.KerrBL(m = 1, a = 0.95)
geo_engine = pygro.GeodesicEngine(metric)

geo = pygro.Geodesic("time-like", geo_engine)
geo.set_starting_point(0, 50, np.pi/2, 0)
geo.set_starting_velocity_direction(0, 90, v = 0.1, angles = "deg")

geo_engine.integrate(geo, 10000, initial_step = 1)

Which returns integrated coordinates in the Geodesic object.

alt text


Copyright

Copyright 2020 Riccardo Della Monica

PyGRO is a free software made available under the MIT License. For details see the LICENSE file.

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

PyGRO-0.0.9.1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

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

PyGRO-0.0.9.1-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file PyGRO-0.0.9.1.tar.gz.

File metadata

  • Download URL: PyGRO-0.0.9.1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for PyGRO-0.0.9.1.tar.gz
Algorithm Hash digest
SHA256 5f9bf9b0f891080dd11baeffac3b08ec3c613ade2b41c1ef958f97a8baac776a
MD5 d4e6ff502faf73410ef3a8aec64cf091
BLAKE2b-256 075138992d1835c9ca7b2d9c2ab7c3df243bda04b807cd9e141e40b2769a8854

See more details on using hashes here.

File details

Details for the file PyGRO-0.0.9.1-py3-none-any.whl.

File metadata

  • Download URL: PyGRO-0.0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for PyGRO-0.0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b51318f219475d2ba91d4d70e34fcbf642a8b596984c270086a974554f3ad858
MD5 b52f3431afb5141b0af3e66339917489
BLAKE2b-256 3817f46202564f46dbd4aa371a5569edee689543e089fcd4a9f9976f90acd40f

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