Configuration

class hermess.config.Config(**data)[source]

Holds all attributes controlling a simulation run.

Parameters:
  • data (Any)

  • testsystemfile (str)

  • system_root (Path | None)

  • omega_mode (Literal['coi', 'single', 'nom', 'dist'])

  • omega_single_idx (str | None)

  • fn (Literal[50, 60])

  • Sb (int)

  • ts (float)

  • T_start (float)

  • T_end (float)

  • int_scheme_sim (Literal['idas', 'collocation', 'cvodes', 'rk'])

  • int_scheme_sim_options (dict)

  • plot (bool)

  • plot_voltage (bool)

  • plot_diff (bool)

  • incl_lim (bool)

  • line_dyn (bool)

  • skip_disturance (bool)

  • debug_check_init (bool)

  • print_power_flow (bool)

  • small_signal_analysis (bool)

  • log_level (Literal['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'])

hermess.config.Config.updated(self, **kwargs)

Return a copy of this config with the given fields overridden.

Parameters:
  • testsystemfile (str) – The path to the system test case.

  • fn (float) – System frequency (currently only tested for 50 Hz).

  • omega_mode (str) – Reference frequency mode used in the simulation. Must be ‘coi’, ‘single’, ‘nom’ or ‘dist’.

  • omega_single_idx (str or None) – Reference device identifier (e.g. “SG1”) used only if omega_mode=’single’ (None → slack bus).

  • Sb (float) – Base power of the grid in [MW]. Line parameters are assumed to be calculated using this base power.

  • ts (float) – Simulation time step.

  • T_start (float) – Simulation start time (must currently be 0).

  • T_end (float) – End time of the simulation.

  • plot (bool) – Enable or disable plotting.

  • plot_voltage (bool) – Whether to plot voltage data.

  • plot_diff (bool) – Whether to plot differential state data.

  • incl_lim (bool) – If state limiters should be included in the simulation. If False, the simulation will be much faster.

  • line_dyn (bool) – Simulate with line dynamic models (differential equations).

  • skip_disturance (bool) – Skip disturbance simulation.

  • debug_check_init (bool) – Enable debug check for initialization of DAE system.

  • print_power_flow (bool) – Print initial power flow to output.

  • small_signal_analysis (bool) – Run the small-signal eigenvalue/participation analysis at the operating point (before the simulation) and show the frequency-banded participation figures plus the modal report.

  • kwargs (Any)

Returns:

A new instance of the Config class configured with the provided parameters.

Return type:

Config

Example:

For every run of the simulator an object of class Config needs to be passed. Custom configurations can be created as follows:

from hermess.config import config
new_config = config.updated(ts=0.001, T_end=12.0)