Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Collection of versatile software libraries for space engineering applications.

License

NotificationsYou must be signed in to change notification settings

open-space-collective/open-space-toolkit

DiscordLicense

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.

Animation

Getting Started

Want to get started? This is the simplest and quickest way:

Binder

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! 🚀

Local JupyterLab in Docker

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.

Components

NameDescriptionVersion
CoreFundamental types, containers and utilities.GitHub version
I/OAddressing, networking, database connectors.GitHub version
MathematicsGeometry, curve fitting, optimization.GitHub version
PhysicsPhysical units, time, reference frames, environment modeling.GitHub version
AstrodynamicsOrbit, attitude, access.GitHub version

Support

Using OSTk in your applications

To help jump-start using OSTk, here is a simple Docker image that you can use to create your applications.

Docker

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"]

pyproject.toml

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",]

Build and Run

You can then build the Docker image via:

docker build . -t my-appdocker run -it --rm my-app

Enjoy!

Contributing

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.

Special Thanks

Loft Orbital

License

Apache License 2.0

About

Collection of versatile software libraries for space engineering applications.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors14


[8]ページ先頭

©2009-2025 Movatter.jp