Jaxonomy documentation
Jaxonomy is a Python package for simulating hybrid dynamical systems described as block diagrams: wired blocks (integrators, gains, custom subsystems, acausal networks, and more), continuous and discrete states, and event/zero-crossing logic. The runtime is built around JAX, so you get JIT-friendly execution and automatic differentiation where the model allows it, while keeping a NumPy-style API for numerics.
The library runs entirely locally and can serialise models to Collimator-format JSON. There is no hosted cloud service — see the About page for the project's scope.
The source lives at github.com/machinavitalis/jaxonomy.
Install
pip install jaxonomy
Use a virtual environment when possible. Platform notes, optional extras ([safe], [nmpc], [all]), and development installs from a git clone are covered in the installation guide.
Where to go next
| Goal | Link |
|---|---|
| First simulation walkthrough | Tutorials → Getting started |
| Shorter topical guides | Tutorials index |
| Applied notebooks (control, MPC, ML, …) | Examples |
DiagramBuilder, LeafSystem, ports |
Framework |
| Built-in blocks | Block library |
simulate, solvers, options |
Simulation |
| Training / optimization helpers | Optimization |
Minimal pattern
- Add blocks with
DiagramBuilder,connectoutputs to inputs, thenbuild(). - Call
jaxonomy.simulate(diagram, start_time, end_time, ...)(see Simulation forSimulatorOptionsand results handling).
The Getting started tutorial builds a simple mass–spring–damper-style diagram step by step.
Build this site locally
pip install -r requirements.docs.txt
mkdocs serve
Source for this page: docs/index.md.
License and attribution
This project is released under the MIT License. See the LICENSE.md file in the repository for the full text.
Provenance: This library is derived from the MIT-licensed open-source Python package pycollimator, developed by Collimator, Inc.