Python API Installation
stepss is a Python interface to the RAMSES dynamic simulator and the Helios AC power-flow engine, enabling users to define test cases, run simulations, extract results, and perform post-processing, all within Python scripts or Jupyter notebooks.
stepss supports Windows, Linux, and macOS, for both dynamic simulation and the bundled Helios power-flow engine, and integrates with standard scientific Python libraries (NumPy, SciPy, Matplotlib).
Installation
Section titled “Installation”Install stepss and all recommended dependencies via pip:
pip install jupyter ipython stepssRequired dependencies (matplotlib, scipy, numpy) are installed automatically.
For a minimal installation (no plotting or notebook support):
pip install stepssVersion numbers
Section titled “Version numbers”A stepss version is the bundled RAMSES version, optionally followed by a
counter: version 3.59 carries RAMSES 3.59. The counter is appended when
stepss is released without a new RAMSES behind it, so a 3.59.1 would bundle
RAMSES 3.59 as well. A new RAMSES release restarts the sequence with a bare
version.
stepss on PyPI starts at 3.59; nothing below that can be installed.
To pin an engine version, pin the matching stepss release:
pip install "stepss~=3.59.0" # any 3.59.x, all bundling RAMSES 3.59Check what an installed copy carries:
import stepssprint(stepss.__version__, stepss.__ramses_version__, stepss.__helios_version__)Linux System Prerequisites
Section titled “Linux System Prerequisites”On Linux, the following system libraries must be installed before running stepss:
sudo apt install libopenblas0 libgfortran5 libgomp1These packages provide:
| Package | Purpose |
|---|---|
libopenblas0 | OpenBLAS BLAS/LAPACK routines used by the solver |
libgfortran5 | GNU Fortran runtime required by the Fortran components of RAMSES |
libgomp1 | OpenMP runtime for multi-core parallel execution |
On most desktop Linux distributions these are already present. If stepss fails to import with a shared-library error, install the packages above and retry.
macOS System Prerequisites
Section titled “macOS System Prerequisites”On macOS (Apple Silicon), install the GNU compiler runtimes and OpenBLAS via Homebrew before running stepss:
brew install gcc openblasThese provide the libgfortran, libgomp, and libopenblas dylibs that the bundled arm64 binaries link against. Intel Macs are not supported.
Run-time observables
Section titled “Run-time observables”case.addRunObs(...) asks the engine to record chosen quantities while a
simulation runs, and RAMSES writes them to a curve file as it goes. Nothing has
to be installed for this.
The file is plain text, with a # header naming the columns and time in column
one, so any reader takes it:
import numpy as npdata = np.loadtxt('temp_display.cur')Live plotting
Section titled “Live plotting”stepss.monitor plots chosen quantities while the simulation runs, one panel
per observable:
import stepss
ram = stepss.sim()case = stepss.cfg('cmd.txt')ram.execSim(case, 0.0) # initialise, paused at t = 0
mon = stepss.monitor(ram, ['BV 4044', 'MS g6'])curves = mon.run(step=0.5) # run to the end of the scenarioIt polls the engine in process and draws with matplotlib, which pip installs with the package, so nothing further is needed. The API reference lists the descriptor vocabulary and the rest of the methods.
Platform Support
Section titled “Platform Support”| Platform | Library | Notes |
|---|---|---|
| Windows | ramses.dll | Primary platform, full support |
| Linux | ramses.so | Full support (requires the system libraries above) |
| macOS | ramses.so | Apple Silicon (arm64) only; requires the Homebrew runtimes above |
Next Steps
Section titled “Next Steps”- API Reference, Full API documentation
- Examples, Practical usage examples