Research — Circuit · Precomputed (draft, unvalidated)

Feeder protection: fault slide

Press play, or drag the lightning bolt along the feeder: the further the fault is from the source, the smaller the current and the slower the relay. The relay curve and the cable's thermal withstand line share one log-log plot, and a fault point that lands to the right of the withstand line is a cable the data says exceeds its withstand. Six stories show what fixes it: a faster dial, another curve, a bigger cable, a weaker source or a different pickup.

Story

Draft, unvalidated harness (no SME sign-off) · illustrative geometry: a generic 12.47 kV feeder, not any real one · withstand values UNVERIFIED, possibly non-conservative (the harness flags its own ICEA K factors) · fault current is internal self-consistency only · three-phase faults only.

Anchoring limits, verbatim from the data file

DRAFT, UNVALIDATED harness. Illustrative 12.47 kV feeder (a uniform conductor whose per-mile Z is the calculate_line_constants output for the harness test's inputs, 8 mi long, utility source 250 / 500 / 1000 MVA at X/R 10, relay at the source bus with no CT ratio): not any real feeder. Three-phase bolted faults only. The functions compute values and never judge; 'exceeds_withstand' / 'within_withstand' is this demo's own comparison (src 'demo-logic'). FAULT CURRENT: internal self-consistency only. Tested for internal self-consistency only — no independent reference value yet. `calculate_available_fault_current` (hand-calc tests recompute the same symmetrical-components formula with round input numbers — no independently published worked fault-current example was used) CABLE WITHSTAND, ICEA K factors UNVERIFIED: Elevated to a likely defect, NOT fixed, 2026-07-17 — an AI-assisted pre-review pass found the K factors below don't reconcile with independent published sources, by a source-independent check. For a 350 kcmil copper conductor at 0.5s, this module's formula gives ~40% higher withstand capacity than Southwire's published 90/250C copper figure — the non-conservative direction. Neither the K factors nor the citation are changed in this pass — this repo does not guess replacement values for a safety-relevant constant without a primary source. `withstand_amps`/`withstand_ka` should be treated as UNVERIFIED, not just "not yet reviewed," until a human confirms the K factors and citation against the actual ICEA text. The harness cable function takes no insulation class or temperature rating: This function's single per-material K silently assumes one unstated temperature pair for every cable of that material. RELAY CURVES: A conflicting secondary source exists for IEEE Moderately Inverse and Very Inverse's A/B constants — the two curves this file's own tiering already flags weakest. An AI-assisted pre-review pass found a source (industrialmonitordirect.com's curve table) giving materially different constants for these two curves (Moderately Inverse: A=0.0055, B=0.0254 vs. this module's A=0.0515, B=0.1140; Very Inverse: A=3.0457, B=0.1023 vs. this module's A=19.61, B=0.491) while agreeing with this module on Extremely Inverse and all three IEC curves. The same pass found other independent sources (an Eaton Digitrip TCC-curve datasheet, a third-party relay-calculator table) matching this module's values for all six curves. Net read from that pass: majority support for the current values, but a real, unresolved conflict on exactly the two curves already tiered "literature-only" — do not treat these two curves' constants as settled without a primary IEEE C37.112-1996 check. The IEC curves are independently corroborated at M=2/TMS=1 only; the IEEE extremely inverse curve is corroborated against a secondary web table. Axes: dist_mi (fault distance from the source bus), source_mva, curve (string), td (time dial: IEEE TDS or IEC TMS, one harness parameter), pickup_a. Main cols: i_a (fault current), m (multiple of pickup), trip_s, m_gt_ceiling (1 when m exceeds 18.5, the harness's own calibrated ceiling; the formula is still evaluated). Table cable: withstand_a at that cell's trip time, margin_a = i_a - withstand_a, exceeds (exporter comparison, demo-logic). Tables tcc (trip_s per curve, td and m; current = m x pickup is a plot scaling) and withstand_line (withstand_a per cable and time) draw the log-log chart. Cable areas are exporter inputs; the harness has no conductor catalog.

Free play · drag the fault, or pick any exported setting

Fault position · exported stops only

Source strength

Relay curve

Time dial (TDS / TMS)

Relay pickup

Cable · size and material only

The harness has no insulation-class or temperature input, so there is no chip for one.

Nothing between two exported values is estimated: the fault snaps to an exported stop, and a stepper and the arrow keys (focus the one-line) do the same job as dragging. The time dial is one number for both curve families.

Feeder one-line · to scale, relay at the source

stop: within the withstandstop: exceeds the withstandStops are coloured by the exporter's comparison for the chosen source, relay and cable. The surge, clock and violet tone replay the exported trip time (illustrative).

Time-current plot · log-log

Curves are drawn through exported points only. The fault current is the horizontal position (current = multiple of pickup × pickup is a plot scaling), the relay trip time the vertical. Drag the filled marker to move the fault along the curve; it snaps to the hollow dots. Amber line: withstand UNVERIFIED, possibly non-conservative. A short bar over a dot marks a fault above the calibrated range of the relay curve.

Live readout · the cell or step on screen

Assumptions: the fixed illustrative inputs

    Every check at this state · the row where the exporter's comparison says “exceeds the withstand” is highlighted

    Rule column: the citation the data file gives for each check. The harness verdict on every row is “value”; the Status chip on the last row is the exporter's wording (demo logic).

    How the checks read it

    Every check · first step, a middle step, the last step of the story

    Columns are named by the story's own steps. Every value is read from the data file; the highlighted comparison wording is the exporter's own, never a harness verdict.

    Precomputed results:every verdict, required value and margin on this page was computed by the real Python harness at export time and is played back from a data file. The page runs no harness logic and holds no standards tables, and it never interpolates between exported values. Not a live API call. Precomputed by the real functions calculate_line_constants, source_impedance_from_fault_mva, calculate_path_impedance, calculate_available_fault_current, calculate_overcurrent_relay_trip_time and calculate_cable_fault_withstand in circuit-calc-harness (recorded commit 2589b99), a draft, unvalidated harness. Fault current is tested for internal self-consistency only (no independently published worked example). The cable withstand values rest on ICEA K factors that the harness itself flags UNVERIFIED and possibly non-conservative. The IEEE moderately inverse and very inverse constants conflict between two secondary sources and are unresolved. The functions compute values and never judge: every verdict in the file is "value", and "exceeds the withstand" or "within the withstand" is this demo's own comparison of two harness values (demo logic). The feeder is a generic 12.47 kV uniform conductor with fixed illustrative inputs (listed under Assumptions), not any real feeder.Real functions this maps to:calculate_line_constants, source_impedance_from_fault_mva, calculate_path_impedance, calculate_available_fault_current, calculate_overcurrent_relay_trip_time, calculate_cable_fault_withstand.Not modeled: a real feeder, laterals, load current, relay coordination with other devices, CT ratios and saturation, single-line-to-ground and line-to-line faults (three-phase only), fault asymmetry, definite-time relays, cable insulation class or temperature, cable catalogs, and any value between two exported stops. The surge, clearing-time cursor, relay dial and violet tone are an illustrative replay of the exported trip time.See also:Feeder protection, hands-off walkthrough · Grounding grid: touch and step · Fault current along a feeder