feat: accept ‘.’ as a component path delimiter in addition to ‘/‘ (#99)
Component paths passed to hasComponentAt / accessComponentAt can now use either ‘/‘ or ‘.’ between segments, and the two can be mixed. A leading delimiter of either kind is stripped, and an empty path now splits to an empty pair instead of throwing from a string accessor.
The header and Python docstrings already described dot-separated paths while the implementation only handled ‘/‘; they now match. Adds C++ and Python tests for the component holder path lookup and splitting.
Co-authored-by: Vishwa Shah vishwa@loftorbital.com Co-authored-by: Claude Fable 5.1 noreply@anthropic.com
Open Space Toolkit 仿真组件(动力学仿真求解)。镜像收录自 https://github.com/open-space-collective/open-space-toolkit-simulation,License:Apache-2.0
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802047560号
Open Space Toolkit ▸ Simulation
Spacecraft simulation.
This library is still in draft state. Do not use!
Getting Started
Want to get started? This is the simplest and quickest way:
Nothing to download or install! This will automatically start a JupyterLab environment in your browser with Open Space Toolkit libraries and example notebooks ready to use.
Alternatives
Docker Images
Docker must be installed on your system.
iPython
The following command will start an iPython shell within a container where the OSTk components are already installed:
Once the shell is up and running, playing with it is easy:
By default, OSTk fetches the ephemeris from JPL, Earth Orientation Parameters (EOP) and leap second count from IERS.
As a result, when running OSTk for the first time, it may take a minute to fetch all the necessary data.
Tip: Use tab for auto-completion!
JupyterLab
The following command will start a JupyterLab server within a container where the OSTk components are already installed:
Once the container is running, access http://localhost:8888/lab and create a Python 3 Notebook.
Installation
C++
The binary packages are hosted using GitHub Releases:
open-space-toolkit-simulation-X.Y.Z-1.x86_64-runtimeopen-space-toolkit-simulation-X.Y.Z-1.x86_64-developen-space-toolkit-simulation-X.Y.Z-1.x86_64-pythonDebian / Ubuntu
After downloading the relevant
.debbinary packages, install:Python
Install from PyPI:
Documentation
Documentation is available here:
Structure
The library exhibits the following detailed and descriptive structure:
Tutorials
Tutorials are available here:
Setup
Development Environment
Using Docker for development is recommended, to simplify the installation of the necessary build tools and dependencies. Instructions on how to install Docker are available here.
To start the development environment:
This will:
openspacecollective/open-space-toolkit-simulation-developmentDocker image.bashshell from the./buildworking directory.If installing Docker is not an option, you can manually install the development tools (GCC, CMake) and all required dependencies, by following a procedure similar to the one described in the Development Dockerfile.
Build
From the
./builddirectory:Tip:
ostk-buildsimplifies building from within the development environment.Test
To start a container to build and run the tests:
Or to run them manually:
Tip:
ostk-testsimplifies running tests from within the development environment.Dependencies
Contribution
Contributions are more than welcome!
Please read our contributing guide to learn about our development process, how to propose fixes and improvements, and how to build and test the code.
Special Thanks
License
Apache License 2.0