Skip to main content

poliastro - Utilities and Python wrappers for Orbital Mechanics

Project description

=========
poliastro
=========

Overview
========

:Name: poliastro
:Website: http://pybonacci.github.io/poliastro/
:Author: Juan Luis Cano <juanlu001@gmail.com>
:Version: 0.1.0

These are some Python wrappers to Fortran and MATLAB subroutines useful in
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.

Fortran subroutines
-------------------

The core of poliastro is possible thanks to several Fortran subroutines,
written by David A. Vallado for his book "Fundamentals of Astrodynamics and
Applications" and available on the Internet as the `companion software of
the book`__.

.. __: http://celestrak.com/software/vallado-sw.asp

The author explicitly gave permission to redistribute these subroutines
in this project under the current license.

Some of them were slightly modified due to errors in the build process,
the handling of relative errors in comparisons and to make them more
suitable to use with different gravitational parameters.

Requirements
============

poliastro requires NumPy and SciPy and is usually tested in these
environments:

* Linux 64-bit
* Python 3.3
* NumPy 1.7.1
* SciPy 0.12.0
* oct2py 0.4.0 (optional, for numerical computation of bodies ephemerides)

Besides, a Fortran compiler is needed to build the extensions. poliastro
is usually built with gfortran.

There is no reason it shouldn't work under Windows or Mac OS X with
properly configured tools (not tested).

Python 2 compatibility might be accomplished with little syntax changes using
`3to2`_.

.. _3to2: https://pypi.python.org/pypi/3to2

Installation
============

To install poliastro from source, just type::

$ python setup.py install

This might require superuser privileges. To install in a local directory::

$ python setup.py install --user

Installations through PyPI are also supported::

$ pip install poliastro --user

It is recommended that you **never ever use sudo** with distutils, pip,
setuptools and friends in Linux because you might seriously break your
system [1_][2_][3_][4_]. Apart from `per user directories`_, other options
are using `virtualenv`_ or `local installations`_.

.. _1: http://wiki.python.org/moin/CheeseShopTutorial#Distutils_Installation
.. _2: http://stackoverflow.com/questions/4314376/how-can-i-install-a-python-egg-file/4314446#comment4690673_4314446
.. _3: http://workaround.org/easy-install-debian
.. _4: http://matplotlib.1069221.n5.nabble.com/Why-is-pip-not-mentioned-in-the-Installation-Documentation-tp39779p39812.html

.. _`per user directories`: http://stackoverflow.com/a/7143496/554319
.. _`virtualenv`: http://pypi.python.org/pypi/virtualenv
.. _`local installations`: http://stackoverflow.com/a/4325047/554319

Testing
=======

If installed correctly, this should work::

$ python -c "import poliastro; poliastro.test()"
Running unit tests for poliastro
[...]
OK
$

Bug reporting
=============

I am one of those that writes bug-free code every single time, but if you
think you've found one please refer to the `issue tracker`_ on GitHub.

.. _`issue tracker`: https://github.com/Pybonacci/poliastro/issues

Citing
======

If you use scikit-aero on your project, please
`drop me a line <mailto:juanlu001@gmail.com>`_.

License
=======

poliastro is released under a 2-clause BSD license, hence allowing commercial
use of the library. Please refer to the COPYING file.

TODO
====

These tasks are in my checklist:

* Test in Windows
* Look for better ephemeris
* Expand constants module
* Investigate astropy integration
* Add examples

FAQ
===

Does it work on Windows?
------------------------

I had some problems to find a free Fortran compiler for Windows 64-bit
(but I am `not alone`__). And probably configuring the paths to make
oct2py and Octave work will be a pain too.

.. __: http://spyder-ide.blogspot.it/2012/08/scientific-python-distribution-for.html

Have you considered `choosing another operative system`__?

.. __: http://www.ubuntu.com/

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've been studying while writing this
software. It's my tiny tribute to a place I've come to love. *Grazie mille!*

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

poliastro-0.1.0.tar.gz (83.7 kB view hashes)

Uploaded Source

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