Configuration
- class pydynamicestimator.config.Config(**data)[source]
Configuration class used to store all relevant attributes for the execution of simulation and estimation.
- 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)
te (float)
T_start (float)
T_end (float)
filter (Literal['iekf', 'ekf'])
int_scheme (Literal['backward', 'trapezoidal', 'forward'])
int_scheme_sim (Literal['idas', 'collocation', 'cvodes', 'rk'])
int_scheme_sim_options (dict)
init_error_diff (float)
init_error_alg (bool)
plot (bool)
plot_voltage (bool)
plot_diff (bool)
proc_noise_alg (float)
proc_noise_diff (float)
incl_lim (bool)
skip_est (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'])
- pydynamicestimator.config.Config.updated(self, **kwargs)
All keyword arguments listed below are optional and can be used to customize the configuration.
- 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.
te (float) – Estimation time step. Must be greater than or equal to the simulation time step.
T_start (float) – Estimation start time (must currently be 0).
T_end (float) – End time of the simulation/estimation.
int_scheme (str) – Integration scheme for the estimation. Must be ‘trapezoidal’ or ‘backward’.
init_error_diff (float) – Estimation initialization error for differential states. E.g., 1.0 corresponds to 10% error.
init_error_alg (bool) – Whether to use a flat start (True) or true values (False) for initialization.
plot (bool) – Enable or disable plotting.
skip_est (bool) – Skip estimation completely.
plot_voltage (bool) – Whether to plot voltage data.
plot_diff (bool) – Whether to plot differential state data.
proc_noise_alg (float) – Process noise for the algebraic equations. Default is 1e-3.
proc_noise_diff (float) – Process noise for the differential equations. Default is 1e-4.
incl_lim (bool) – If state limiters should be included in the simulation and the estimation. If False, the simulation will be much faster.
line_dyn (bool) – Simulate with line dynamic models (differential equations).
skip_disturance (bool) – Skip disturance simulation and estimation.
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
Configclass configured with the provided parameters.- Return type:
Example:
For every run of the estimator an object of class Config needs to be passed. Custom configurations can be created as follows:
from pydynamicestimator.config import config
new_config = config.updated(te=0.01, T_end=12.0)