Welcome to Pure Python’s documentation!

This documentation provides a detailed API reference for the Pure Python physics simulation project. The project is a benchmark for Python performance, demonstrating the use of modern libraries like NumPy, SciPy, and Qt for Python to create a high-performance, multi-threaded application.

The simulation employs several key strategies to achieve high performance:

  • Data-Oriented Design: A Structure-of-Arrays (SoA) layout for efficient memory access.

  • Vectorisation: NumPy is used for fast, array-based calculations.

  • Parallel Processing: The multiprocessing module is used for parallelising intensive tasks.

  • Efficient Algorithms: Includes two-stage collision detection and adaptive time-stepping.

Licence

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public Licence as published by the Free Software Foundation; either version 3 of the licence, or (at your option) any later version. See the file named LICENSE in the project’s root directory or view it on-line.

User Interface

Indices and tables