SatLib is a python library for constellation based calculations. Much of it is based on Poliastro and extends it for use with satellite constellations. Fundamental functionality such as propagating constellations, determining constellation access to ground stations, and determining when satellites in the constellation have windows of opportunity to perform inter-satellite links are included in the library. The main classes are contained in satbox.py and instructions to run an example notebook that showcase some of the capabilities are included below. Note: This library is still under development.
This tutorial assumes working knowledge of the terminal with git installed. There are many resources online to learn from if you need. You should also have a working version of python, or you can download it here. This tutorial was tested using python 3.7.3
Draft documentation is under docs/_build/html/index.html
, which you can open in your browser.
Begin by moving to a directory that you want to work in and initialize git if needed git init
I suggest creating a virtual environment
Example: python3 -m venv satelliteExample
, which you type in the terminal
source satelliteExample/bin/activate
git clone https://github.com/manweichan/SatLib.git
cd SatLib
pip install -r requirements.txt
Alternatively, install each library individually (Make sure correct version numbers are installed by looking at requirements.txt)
pip install notebook
pip install numpy
pip install poliastro
pip install poliastro czml3
pip install seaborn
pip install dill
Once the libraries are installed, open up a jupyter notebook with the command:
jupyter notebook
Open satbox_ex.ipynb