System strength#
- solve_system_strength(case, buses=None, *, at_mw=None, scr_threshold=3.0, backend=None)#
Calculate three-phase fault level and short-circuit ratio by bus.
- Parameters:
case -- Case to analyze.
buses -- Bus numbers to analyze.
Noneselects every bus.at_mw -- MW capacity by bus for short-circuit ratio calculations.
scr_threshold -- Ratio below which a row is marked weak.
backend -- Backend name or
Nonefor automatic selection.
- Returns:
Fault level, fault current, and optional ratio rows in request order.
- class BusStrength(bus, scmva, ika, scr, weak, energized)#
Store system-strength results for one bus.
- bus#
Bus number.
- Type:
int
- scmva#
Three-phase short-circuit strength in MVA.
- Type:
float
- ika#
Fault current in kA, or
Nonewithout a base voltage.- Type:
float | None
- scr#
Short-circuit ratio, or
Nonewithout a power value.- Type:
float | None
- weak#
Weak-grid flag, or
Nonewhen SCR is unavailable.- Type:
bool | None
- energized#
Whether the bus island contains an in-service source.
- Type:
bool
- class SystemStrengthReport(rows, scr_threshold, stats=<factory>)#
Strength rows in request order, plus the threshold that defined
weak.to_markdownrenders the exhibit table.- doc()#
Return the result document: the scalar header, with the column bindings for the
strengthrow-table, which lives on the queryable slot and is queried in SQL.
- as_tables()#
Row-table for the SQL query surface:
strength(one row per bus -- three-phase short-circuit MVA, fault current kA, SCR, weak-grid flag).
- classmethod column_quantities()#
Return the quantity each
strengthcolumn binds, keyed by table then column. The short-circuit power is an apparent power at the fault and the ratio behind the weak-grid flag is dimensionless, so each binds its own quantity rather than sharing one by unit.
- to_markdown(path=None)#
Return the system-strength report as Markdown.