HERMESS#
Hybrid EMT/RMS Modern Electric power System Simulator
HERMESS is a Python simulator for time-domain analysis of electromechanical and electromagnetic transients in power systems. It formulates the network and its devices as one nonlinear differential-algebraic system, integrates it with implicit and explicit schemes built on CasADi, and can keep every device parameter symbolic, so full trajectories can be differentiated with respect to them. Its results are benchmarked against ANDES, PSS/E, PowerSimulationsDynamics.jl and PSCAD.
Get started · GitHub · PyPI · Cite
IEEE 39-bus converter benchmark with dynamic lines: bus voltages through a fault and its clearing, electromagnetic transient included.#
Quick start#
pip install hermess
import hermess
hermess.list_systems() # the systems that ship with the package
dae = hermess.simulate("3bus", T_end=5.0) # run one and get the finished model back
See Installation to set up, Running simulations for the everyday entry points and System files for the system-file format and the analysis outputs.
Capabilities#
- Hybrid EMT/RMS network:
Quasi-static or fully dynamic (electromagnetic) line models, selected per run, in one DAE formulation; see network models.
- Differentiable:
Parametric sensitivities of full trajectories through CasADi, for optimization and learning-based control; see parametric sensitivities.
- Cross-validated:
Benchmarked against ANDES, PSS/E, PowerSimulationsDynamics.jl and PSCAD; see Validation.
- Model library:
Machines, AVRs, governors, PSS and shafts, and grid-forming, grid-supporting and grid-following converters as pluggable strategies; see the model library.
- Small-signal analysis:
Eigenvalues, participation factors and modal reports at the operating point; see reading the results.
- Desktop GUI:
Topology, time-domain, small-signal and power-flow views with
hermess-gui; see the graphical interface.- Test systems:
IEEE 39-bus with converter variants, Kundur two-area, and the 14-generator South East Australian system; see Test Cases.
If you use HERMESS in academic work, please cite the software release and
the accompanying paper; see About for the references, or the
CITATION.cff in the repository.