ROSS is a Python library for rotordynamic analysis, which allows the construction of rotor models and their numerical simulation. Shaft elements are modeled with the Timoshenko beam theory, which considers shear and rotary inertia effects, and discretized by means of the Finite Element Method. Disks are assumed to be rigid bodies, thus their strain energy is not taken into account. Bearings and seals are included as linear stiffness and damping coefficients.
After defining the elements for the model, you can plot the rotor geometry and run simulations such as static analysis, modal analysis, undamped critical speed, frequency response, unbalance response, time response, and more.
ROSS can be tried in the browser, without installation, on Binder.
To install it locally:
pip install ross-rotordynamicsROSS also provides a graphical interface, a local web application built on top of the library. Install it with the
interface extra and start it with a single command:
pip install "ross-rotordynamics[interface]"
ross-interfaceWindows users without a Python installation can download a prebuilt bundle from the releases page.
If you work with an AI coding agent (Claude Code, GitHub Copilot, Cursor, Codex), install the ROSS agent skill so the agent knows how to build rotors and run analyses:
ross-install-skillThe skill activates automatically whenever you ask the agent about rotordynamics with ROSS. In Claude Code it can also be invoked explicitly:
/ross create a rotor with 6 shaft elements, 2 disks and 2 bearings, then plot the Campbell diagram
Version 3 renamed the bearing and seal parameters. Rotor files, scripts and notebooks written for ROSS 2 can be converted with:
ross_2to3 my_rotor.toml analysis.py # preview
ross_2to3 -w my_rotor.toml analysis.py # rewrite in place (keeps .bak copies)The full documentation is available at ross.readthedocs.io.
Key sections:
ROSS supports AI-assisted workflows in two ways:
- In your coding agent. The ROSS agent skill, which follows the Agent Skills open
standard, teaches Claude Code, GitHub Copilot, Cursor and Codex how to build rotor models and run analyses. Install
it with
ross-install-skill(see Quick start above); in Claude Code, invoke it explicitly with/ross. - In your browser. ROSS GPT is the official chat assistant for the ROSS package. Use it to create and modify rotor models, request practical examples for modal analysis, Campbell diagrams, unbalance response and more, and get detailed technical explanations on elements such as shafts, disks, bearings and couplings.
For questions, guidance or discussion of ideas, please use the Discussions tab.
To report a bug, unexpected behavior or request a new feature, please open an issue describing the problem and how to reproduce it.
ROSS is a community-driven project. Contributions are welcome; please read CONTRIBUTING.md before opening a pull request.
The code was initially developed by Petrobras in cooperation with the Federal University of Rio de Janeiro (UFRJ), with contributions from the Federal University of Uberlândia (UFU). Currently, Petrobras has a cooperation agreement with UFRJ (LAVI) and UFU (LMEST) to develop and maintain the code.