Skip to content
SoRoMoX logo

Soft Robot Models in jaX (SoRoMoX)

SoRoMoX is a fully numerical, JIT-compilable Python/JAX implementation of control-oriented models for articulated and continuum soft robots. It provides articulated soft-robot, piecewise-constant strain (PCS), and geometric variable strain (GVS) models through a shared interface for kinematics, dynamics, energies, Jacobians and derivatives, and forward dynamics.

Successor to JSRM

SoRoMoX succeeds JSRM. It replaces symbolic derivations with scalable numerical implementations and extends the architecture to articulated, PCS, and GVS model families with common control and rendering interfaces.

Overview of SoRoMoX model families, JAX-native numerical infrastructure, and application case studies

SoRoMoX places control-oriented soft-robot models in the JAX computational stack.
  • Soft robot model implementations

    Articulated soft-robot models, planar and spatial PCS models, and spatial GVS models, with several actuation modalities and example robot instantiations.

    Explore the systems

  • JAX-native numerical core

    JIT compilation, automatic differentiation with respect to states, inputs, and parameters, vectorization, and CPU/GPU/TPU execution.

    Read the paper results

  • Control-oriented interface

    Kinematics, Jacobians, inertia and force terms, energies, actuation maps, and fused forward dynamics through consistent model contracts.

    Browse the API

  • Model-based control

    Configuration-, operational-, and actuation-space controller implementations complement the model layer, including potential compensation, computed-torque, and impedance controllers.

    Explore model-based control

  • Rendering

    Matplotlib, Open3D, Viser, and OpenCV renderers support static figures, interactive 3D visualization, real-time planar rendering, and video export.

    View the renderer gallery

Get started

Install the core package from PyPI:

python -m pip install soromox

Add the rendering backends and run an example:

python -m pip install "soromox[rendering,examples]"
python examples/simulation/pcs/simulate_planar_pcs.py

The Installation page explains optional extras and source installs. The Quick Start walks through model construction, simulation, control, and visualization.

Paper and application case studies

The accompanying paper benchmarks SoRoMoX's model implementations. Its six application case studies demonstrate how control-oriented quantities, differentiability, and parallel execution support system identification, learning, and control.

  • Paper & Results presents the benchmarks, all six application case studies, visual demonstrations, and reproduction pointers.
  • Citation provides the recommended paper BibTeX and exact-version software citation.

Choose your next step

  • Examples for complete simulation and control workflows.
  • API Reference for systems, control, rendering, actuation, and utilities.
  • Contributing for development setup and project conventions.

Citation

If you use SoRoMoX in academic work, please cite “SoRoMoX: Fast, Differentiable, and Parallelizable Soft Robot Models”. The Citation page provides copy-ready BibTeX and guidance for reporting the exact software version.

License

SoRoMoX is distributed under the MIT License.