pydynamicestimator.run

Functions

warn_filter_network_mismatch(→ None)

Warn (but continue) when an inverter's output-filter realization is

run(→ tuple[pydynamicestimator.system.DaeEst, ...)

Initialize function and run appropriate routines

fplot(config)

Plot voltage and differential states based on configuration settings.

clear_module(module_name)

Remove all attributes from a module, preparing it for a clean reload.

find_device_sim(idx_est)

Module Contents

pydynamicestimator.run.warn_filter_network_mismatch(device_list, line_dyn: bool) None[source]

Warn (but continue) when an inverter’s output-filter realization is physically incoherent with the network model.

A quasi-static filter (e.g. LCL_static – the six filter quantities realized as algebraic variables) zeroes the fast LCL dynamics and so presumes a quasi-static network (line_dyn=False); a dynamic filter (LCL – those quantities as differential states) keeps them and presumes a dynamic network (line_dyn=True). The opposite pairings are physically incoherent (design doc Section 6) – a deliberately odd pairing is allowed, but flagged.

An inverter’s filter realization is read from the filter strategy’s own algebs(): a quasi-static realization declares its quantities as private algebraics, a dynamic one declares none. (Asking the filter directly, rather than the host’s aggregate _algebs_int, keeps this correct once other strategies – e.g. a current limiter – start declaring their own algebraics.) Non-inverter devices have no _filter and are skipped.

Parameters:

line_dyn (bool)

Return type:

None

pydynamicestimator.run.run(config: pydynamicestimator.config.Config) tuple[pydynamicestimator.system.DaeEst, pydynamicestimator.system.DaeSim][source]

Initialize function and run appropriate routines

Parameters:

config (pydynamicestimator.config.Config)

Return type:

tuple[pydynamicestimator.system.DaeEst, pydynamicestimator.system.DaeSim]

pydynamicestimator.run.fplot(config: pydynamicestimator.config.Config)[source]

Plot voltage and differential states based on configuration settings.

Parameters:

config (pydynamicestimator.config.Config)

pydynamicestimator.run.clear_module(module_name)[source]

Remove all attributes from a module, preparing it for a clean reload.

pydynamicestimator.run.find_device_sim(idx_est)[source]