Basilisk: Flexible, Fast, and Reconfigurable Space Simulation Framework#

Basilisk is an open-source software framework for real-time and faster-than-real-time spacecraft simulation, designed for both astrodynamics research and mission development. Developed by the Autonomous Vehicle Systems Lab and the Laboratory for Atmospheric and Space Physics (University of Colorado Boulder), Basilisk blends the flexibility of Python with the execution speed of C/C++.

Get Started#

🚀 Installation Instructions

Get started by installing a Basilisk development environment.

Installation instructions
📚 Learning Resources

Quickly grasp key concepts.

Learning resources
📖 API and Modules Reference

Detailed module documentation.

API and Modules Reference

Introduction#

Basilisk allows users to create, configure, and execute spacecraft simulations involving orbit and attitude dynamics, hardware-in-the-loop scenarios, and Monte-Carlo analyses. Its modular design supports rapid development and validation of flight software, autonomy solutions, and mission concepts.

Key features include:

  • Real-time and faster-than-real-time simulation capability

  • Reconfigurable Python interface over C/C++ core

  • Native Monte-Carlo engine for repeatable studies

  • Integrated unit-testing and validation support

  • Hardware-in-the-loop compatibility

  • Cross-platform (Linux, Windows, macOS)


Use Cases#

Basilisk is actively used for:

  • Astrodynamics research modeling

  • Guidance, estimation, and control algorithm development

  • Mission concept support and validation

  • Flight software (FSW) development and hardware-in-the-loop (HIL) testing

  • Spacecraft autonomy research and AI-based system development

  • Post-flight data analysis and validation


Who Uses Basilisk?#

Basilisk serves a diverse user community ranging from academic researchers to mission developers and commercial ventures.


Basilisk Design Goals#

At its core, Basilisk is designed to balance several challenging goals:

  • Speed: High-performance simulations via C/C++ back-end

  • Flexibility: Reconfiguration via Python scripting

  • Analysis Integration: Built-in numpy/matplotlib support

  • Realtime Capabilities: Hardware-in-the-loop synchronization

  • Data Control: Managed communication via message-passing interface (MPI)

  • Cross-Platform Compatibility: Linux, Windows, and macOS supported

  • Validation and Testing: Robust, integrated unit and scenario tests

  • Monte-Carlo Simulations: Bit-for-bit repeatability