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.

Bus voltage magnitudes of the IEEE 39-bus converter system through a fault and its clearing

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.