- Notifications
You must be signed in to change notification settings - Fork10
Collection of versatile software libraries for space engineering applications.
License
open-space-collective/open-space-toolkit
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
The Open Space Toolkit (OSTk) is a collection of versatile libraries for aerospace engineering use, available in:
- C++ – the reference implementation, for portability and performance.
- Python – via C++ bindings, formidable for interactive use and prototyping.
Want to get started? This is the simplest and quickest way:
This will automatically start aJupyterLab environment in your web browser with Open Space Toolkit libraries and example notebooks ready to use. Nothing to download or install! 🚀
Alternatively, you can run a pre-installed OSTk environment on your local machine. This process has the following requirements:
The following commands will start aJupyterLab server within a Docker container where the OSTk components are already installed:
# clone this repogit clone https://github.com/open-space-collective/open-space-toolkit.git&&cd open-space-toolkit# Run the jupyter server inside of Dockermake run-jupyter
Once the container is running, accesshttp://localhost:8888/lab and create a Python 3 Notebook.
| Name | Description | Version |
|---|---|---|
| Core | Fundamental types, containers and utilities. | |
| I/O | Addressing, networking, database connectors. | |
| Mathematics | Geometry, curve fitting, optimization. | |
| Physics | Physical units, time, reference frames, environment modeling. | |
| Astrodynamics | Orbit, attitude, access. |
To help jump-start using OSTk, here is a simple Docker image that you can use to create your applications.
ARG PYTHON_BASE_VERSION="3.11"ARG OSTK_DATA_LOCAL_CACHE="/var/cache/open-space-toolkit-data"# Open Space Toolkit install imageFROM mcr.microsoft.com/vscode/devcontainers/python:${PYTHON_BASE_VERSION}## Install OSTk data install dependenciesRUN apt-get update && \ apt-get install -y git-lfs && \ rm -rf /var/lib/apt/lists/*## Seed OSTk DataARG OSTK_DATA_LOCAL_CACHEENV OSTK_PHYSICS_DATA_LOCAL_REPOSITORY="${OSTK_DATA_LOCAL_CACHE}/data"RUN git clone \ --branch=v1 \ --single-branch \ --depth=1 \ https://github.com/open-space-collective/open-space-toolkit-data.git ${OSTK_DATA_LOCAL_CACHE} && \ chmod -R g+w ${OSTK_DATA_LOCAL_CACHE}## Update libstdc++ for Cpp20 supportRUN echo "deb http://deb.debian.org/debian testing main" > /etc/apt/sources.list.d/testing.list && \ apt-get update && \ apt-get install --yes -t testing libstdc++6 && \ rm -rf /var/lib/apt/lists/*## Update user id and group id with local onesARG USERNAME="vscode"ARG USER_UID="1000"ARG USER_GID=${USER_UID}RUN sudo groupmod --gid ${USER_GID} ${USERNAME} && \ sudo usermod --uid ${USER_UID} --gid ${USER_GID} ${USERNAME}## Update permissions of OSTk data repoARG OSTK_DATA_LOCAL_CACHERUN chown -R ${USER_GID}:${USER_GID} ${OSTK_DATA_LOCAL_CACHE}## Change userUSER ${USERNAME}## Install dependenciesCOPY --chown=${USER_UID}:${USER_GID} pyproject.toml /home/${USERNAME}/tmp/RUN cd /home/${USERNAME}/tmp/ && \ pip --no-cache-dir install --user .[dev] && \ rm -rf /home/${USERNAME}/tmp/## Change default entrypoint folder to /appWORKDIR /app## Change default entrypoint to bin/zshENTRYPOINT ["/bin/zsh"]And an accompanyingpyproject.toml file that should be in the same folder.
[project]name ="my-app"requires-python =">=3.11"dynamic = ["version"]dependencies = ["open-space-toolkit-simulation~=X.Y.Z",][project.optional-dependencies]dev = [# Development libraries"ipython~=8.24",]
You can then build the Docker image via:
docker build . -t my-appdocker run -it --rm my-appEnjoy!
Contributions are more than welcome!
Please read ourcontributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test the code.
Apache License 2.0
About
Collection of versatile software libraries for space engineering applications.
Topics
Resources
License
Code of conduct
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors14
Uh oh!
There was an error while loading.Please reload this page.

