Name | poliastro |
---|---|
Website | https://poliastro.github.io/ |
Author | Juan Luis Cano Rodríguez |
Version | 0.15.dev0 |
poliastro is an open source pure Python package dedicated to problems
arising in Astrodynamics and Orbital Mechanics, such as orbit
propagation, solution of the Lambert's problem, conversion between
position and velocity vectors and classical orbital elements and orbit
plotting, focusing on interplanetary applications. It is released under
the MIT license.
from poliastro.examples import molniya
molniya.plot()
{.align-center}
Documentation
Complete documentation, including a user guide and an API reference, can
be read on the wonderful Read the Docs.
Examples
In the examples directory you can find several Jupyter notebooks with
specific applications of poliastro. You can launch a cloud Jupyter
server using binder to edit the notebooks
without installing anything. Try it out!
https://beta.mybinder.org/v2/gh/poliastro/poliastro/master?filepath=index.ipynb
Requirements
poliastro requires the following Python packages:
- NumPy, for basic numerical routines
- Astropy, for physical units and time handling
- numba (optional), for accelerating the code
- jplephem, for the planetary ephemerides using SPICE kernels
- matplotlib, for orbit plotting
- plotly, for 2D and 3D interactive orbit plotting
- SciPy, for root finding and numerical propagation
poliastro is tested on Linux, OS X and Windows on Python 3.7 and 3.8
against latest NumPy.
Installation
The easiest and fastest way to get the package up and running is to
install poliastro using conda:
$ conda install poliastro --channel conda-forge
Please check out the documentation for alternative installation
methods.
Problems and suggestions
If for any reason you get an unexpected error message or an incorrect
result, or you want to let the developers know about your use case,
please open a new issue in the issue
tracker and we will try
to answer promptly.
Contributing
poliastro is a community project, hence all contributions are more than
welcome! For more information, head to
CONTRIBUTING.rst.
Support
Release announcements and general discussion take place on our Mailing
List .
For further clarifications and discussions, feel free to join Poliastro
Chat Room.
Citing
If you use poliastro on your project, please drop me a
line.
You can also use the DOI to cite it in your publications. This is the
latest one:
And this is an example citation format:
Juan Luis Cano Rodríguez et al.. (2015). poliastro: poliastro 0.4.0. Zenodo. 10.5281/zenodo.17462
License
poliastro is released under the MIT license, hence allowing commercial
use of the library. Please refer to the COPYING file.
FAQ
What's up with the name?
poliastro comes from Polimi, which is the shortened name of the
Politecnico di Milano, the Italian university where I was studying while
writing this software. It's my tiny tribute to a place I came to love.
Grazie mille!
Can I do <insert awesome thing> with poliastro?
poliastro is focused on interplanetary applications. This has two
consequences:
- It tries to be more general than other Flight Dynamics core
libraries more focused on Earth satellites (see Related
software
for a brief list), allowing the algorithms to work also for orbits
around non-Earth bodies. - It leaves out certain features that would be too Earth-specific,
such as TLE reading, SGP4 propagation, groundtrack plotting and
others.
What's the future of the project?
poliastro is actively maintained and receiving an influx of new
contributors thanks to the generous sponsorship of Google and the
European Space Agency. The best way to get an idea of the roadmap is to
see the Milestones
of the project.