Overview
The Earth Fault Loop Impedance calculator computes Zs, the total earth fault loop impedance of a circuit, and verifies that it is low enough for the protective device to disconnect the supply within the required time during an earth fault.
The calculator provides:
- Zs calculation — total earth fault loop impedance using complex R+jX math
- Transformer source impedance (optional) — from MVA rating and Z% with assumed X/R=10
- Supplementary earthing (optional) — parallel combination of main and supplementary earth conductors
- Zmax compliance check — Zs ≤ Uo / (In × trip multiplier)
- Table 8.2 check — cable resistance limit by conductor size and CB rating
- Table B1 check — cable length limit by conductor size and CB rating
- Prospective fault current — If = Uo / Zs
Input Parameters
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
use_transformer |
Boolean | false | — | Include transformer source impedance in calculation |
transformer_mva |
Number | 1.0 | ≥ 0.1 | Transformer MVA rating (conditional on use_transformer) |
transformer_z_percent |
Number | 6.0 | 1 – 15 | Transformer impedance percentage (conditional on use_transformer) |
insulation_type |
Enum | pvc | pvc / xlpe | Cable insulation type: PVC (75°C) or XLPE (90°C) |
active_csa |
Enum | 4 | 1 – 500 mm² | Active conductor cross-sectional area (19 standard sizes) |
earth_csa |
Enum | 4 | 1 – 500 mm² | Main earth conductor cross-sectional area |
cable_length |
Number | 50 | 0.1 – 10000 m | Cable route length in metres |
use_supplementary |
Boolean | false | — | Add supplementary earthing conductor in parallel |
supplementary_csa |
Enum | 4 | 1 – 500 mm² | Supplementary conductor CSA (conditional on use_supplementary) |
nominal_voltage |
Number | 230 | 1 – 1000 V | Nominal phase-to-neutral voltage (Uo) |
breaker_rating |
Number | 20 | 0.5 – 600 A | Circuit breaker nominal current rating (In) |
trip_curve |
Enum | 7.5 (C) | 4 (B) / 7.5 (C) / 12.5 (D) | MCB trip curve multiplier |
Output Results
| Output | Symbol | Unit | Description |
|---|---|---|---|
| Loop Impedance | Zs | Ω | Total earth fault loop impedance magnitude |
| Maximum Impedance | Zmax | Ω | Maximum allowed impedance = Uo / Ia |
| Fault Current | If | A | Prospective earth fault current = Uo / Zs |
| Trip Current | Ia | A | In × trip curve multiplier |
| Component Impedances | Zt, Z1, Z2, Ze, Zcable | Ω | All intermediate impedances as R + jX |
| Table 8.2 Check | — | PASS / FAIL / N/A | Cable resistance vs. maximum permitted resistance |
| Table B1 Check | — | PASS / FAIL / N/A | Cable length vs. maximum permitted length |
| Compliance Status | — | PASS / FAIL | All three checks must pass |
Formulas
Transformer Source Impedance (optional)
where \(V_{base} = U_o \times \sqrt{3}\), \(S_{base} = \text{MVA} \times 10^6\). The impedance is resolved into R and X using an assumed X/R ratio of 10:
\[ R_t = \frac{|Z_t|}{\sqrt{1 + (X/R)^2}} \qquad X_t = R_t \times (X/R) \]Conductor Impedance
where \(r_{/km}\) and \(x_{/km}\) are per-kilometre resistance and reactance from lookup tables (50 Hz), and \(L\) is the cable length in metres.
Parallel Earth Path (supplementary earthing)
Complex parallel impedance of main earth (Z2) and supplementary earth (Z3).
Cable Loop Impedance
Sum of active conductor impedance and equivalent earth path impedance.
Total Earth Fault Loop Impedance
If no transformer is selected, Zt = 0.
Trip Current and Maximum Impedance
The circuit is compliant when \(|Z_s| \leq Z_{max}\).
Prospective Fault Current
Data Tables
Resistance Data (Ω/km @ 50 Hz)
| CSA (mm²) | 1 | 1.5 | 2.5 | 4 | 6 | 10 | 16 | 25 | 35 | 50 | 70 | 95 | 120 | 150 | 185 | 240 | 300 | 400 | 500 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PVC | 25.8 | 16.5 | 9.01 | 5.61 | 3.75 | 2.23 | 1.4 | 0.884 | 0.638 | 0.471 | 0.327 | 0.236 | 0.188 | 0.153 | 0.123 | 0.0948 | 0.077 | 0.062 | 0.0506 |
| XLPE | 27 | 17.3 | 9.45 | 5.88 | 3.93 | 2.33 | 1.47 | 0.927 | 0.668 | 0.494 | 0.342 | 0.247 | 0.197 | 0.16 | 0.129 | 0.0991 | 0.0803 | 0.0646 | 0.0525 |
Reactance Data (Ω/km @ 50 Hz)
| CSA (mm²) | 1 | 1.5 | 2.5 | 4 | 6 | 10 | 16 | 25 | 35 | 50 | 70 | 95 | 120 | 150 | 185 | 240 | 300 | 400 | 500 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PVC | 0.119 | 0.111 | 0.102 | 0.102 | 0.0967 | 0.0906 | 0.0861 | 0.0853 | 0.0826 | 0.0797 | 0.077 | 0.0766 | 0.0743 | 0.0745 | 0.0744 | 0.0735 | 0.0732 | 0.0728 | 0.0723 |
| XLPE | 0.114 | 0.107 | 0.0988 | 0.093 | 0.0887 | 0.084 | 0.0805 | 0.0808 | 0.0786 | 0.0751 | 0.0741 | 0.0725 | 0.0713 | 0.0718 | 0.072 | 0.0709 | 0.0704 | 0.0702 | 0.0707 |
Table 8.2 — Maximum Cable Resistance (Ω)
| Active CSA (mm²) | CB Rating (A) | Max R — B Curve | Max R — C Curve | Max R — D Curve |
|---|---|---|---|---|
| 2.5 | 16 | 2.32 | 1.24 | 0.74 |
| 2.5 | 20 | 1.86 | 1.00 | 0.60 |
| 4 | 25 | 1.50 | 0.80 | 0.48 |
| 4 | 32 | 1.17 | 0.62 | 0.37 |
| 6 | 40 | 0.93 | 0.50 | 0.30 |
| 10 | 50 | 0.76 | 0.40 | 0.24 |
| 16 | 63 | 0.60 | 0.32 | 0.19 |
Table B1 — Maximum Cable Length (m)
| Active CSA (mm²) | CB Rating (A) | Max L — B Curve | Max L — C Curve | Max L — D Curve |
|---|---|---|---|---|
| 1 | 6 | 170 | 91 | 55 |
| 1 | 10 | 102 | 55 | 33 |
| 1.5 | 10 | 153 | 82 | 49 |
| 1.5 | 16 | 96 | 51 | 31 |
| 2.5 | 16 | 160 | 85 | 51 |
| 2.5 | 20 | 128 | 68 | 41 |
| 4 | 20 | 126 | 67 | 40 |
| 4 | 32 | 98 | 52 | 31 |
| 6 | 40 | 90 | 48 | 29 |
| 10 | 50 | 117 | 62 | 37 |
| 16 | 63 | 142 | 76 | 45 |
| 16 | 80 | 112 | 59 | 36 |
| 25 | 80 | 124 | 66 | 40 |
| 25 | 100 | 99 | 53 | 32 |
| 35 | 100 | 159 | 85 | 51 |
| 35 | 125 | 127 | 68 | 41 |
| 50 | 125 | 198 | 106 | 63 |
| 50 | 160 | 155 | 83 | 51 |
| 70 | 160 | 235 | 126 | 75 |
| 70 | 200 | 188 | 100 | 60 |
Worked Examples
The 10 examples below are the validation cases for this calculation. Each one was produced by the calculation engine from the inputs shown, every figure was checked against the independent reference quoted at the end of the example, and the same cases are run against every engine build (see validation scorecard, tool fe_calc_efli; worked examples for every calculation).
| # | Case | Zs (Ω) | Zmax (Ω) | If (A) | Lmax (m) | Governing | Result |
|---|---|---|---|---|---|---|---|
| 1 | 16 mm² with 6 mm² earth and 16 mm² supplementary earth, 63 A type C | 0.1697 | 0.4868 | 1,355.7 | 76 | table b1 route length | PASS |
| 2 | 16 mm² PVC, 40 m, 80 A type D — exceeds Table B1 | 0.1122 | 0.2300 | 2,049.7 | 36 | table b1 route length | FAIL |
| 3 | 1 mm² PVC, 100 m, 6 A type B | 5.1601 | 9.5833 | 44.6 | 170 | table b1 route length | PASS |
| 4 | 1.5 mm² XLPE, 100 m, 20 A type C — too long | 3.4601 | 1.5333 | 66.5 | 44 | earth fault loop impedance | FAIL |
| 5 | 25 mm² XLPE sub-main at Uo = 400 V with a 2 MVA source | 0.1114 | 0.5333 | 3,590.4 | 53 | table b1 route length | PASS |
| 6 | 2.5 mm² lighting circuit, 20 A type C | 0.5406 | 1.5333 | 425.4 | 55 | table 8 2 loop resistance | PASS |
| 7 | 4 mm² with 2.5 mm² earth, 50 m, 32 A type C | 0.7311 | 0.9583 | 314.6 | 42 | table 8 2 loop resistance | FAIL |
| 8 | 4 mm² PVC, 50 m, 20 A type C (help-page example 1) | 0.5611 | 1.5333 | 409.9 | 67 | table b1 route length | PASS |
| 9 | 50 m circuit with a 1 MVA 6 % source transformer (help-page example 2) | 0.5623 | 1.5333 | 409.0 | 67 | table b1 route length | PASS |
| 10 | 50 mm² PVC sub-main, 80 m, 100 A type C, 500 kVA 5 % source | 0.1137 | 0.3067 | 2,022.2 | 221 | earth fault loop impedance | PASS |
Example 1 — 16 mm² with 6 mm² earth and 16 mm² supplementary earth, 63 A type C
A supplementary earth in parallel with the main earth lowers the earth-path impedance; all four checks pass.
Given: 16 mm² PVC active with 6 mm² earth plus a 16 mm² supplementary earth in parallel over the same route, route length 70 m, Uo = 230 V, 63 A type C MCB (trip multiple 7.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 16 mm² table: 1.40 + j0.0861 Ω/km → Z1 = (1.40 + j0.0861) × 70/1000 = 0.0980 + j0.0060 Ω |
| Earth conductor | PVC 6 mm² table: 3.75 + j0.0967 Ω/km → Z2 = (3.75 + j0.0967) × 70/1000 = 0.2625 + j0.0068 Ω |
| Supplementary earth | PVC 16 mm² table: 1.40 + j0.0861 Ω/km → Z3 = 0.0980 + j0.0060 Ω; in parallel: Ze = Z2·Z3 / (Z2 + Z3) = (0.2625 + j0.0068)(0.0980 + j0.0060) / (0.3605 + j0.0128) = 0.0714 + j0.0037 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.0980 + j0.0060) + (0.0714 + j0.0037) = 0.1694 + j0.0097 Ω; loop resistance R = 0.1694 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.1694 + j0.0097| = √(0.1694² + 0.0097²) = 0.1697 Ω |
| Trip current | Ia = In × k = 63 × 7.5 = 472.5 A; Zmax = Uo / Ia = 230 / 472.5 = 0.4868 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 34.9 % of Zmax → 0.1697 vs limit 0.4868 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.1697 = 1,355.7 A ≥ Ia → 1,355.7 vs limit 472.5 A PASS |
| Table 8.2 | AS/NZS 3000 Table 8.2 row (16 mm², 63 A, type C) maximum loop resistance 0.32 Ω vs R = 0.1694 Ω → 0.1694 vs limit 0.3200 Ω PASS |
| Table B1 | AS/NZS 3000 Table B1 row (16 mm², 63 A, type C) maximum length 76 m vs route 70 m → 70 vs limit 76 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.00242 + j0.00014)| = 0.4868 Ω → L = 200 m (≈ 0.4868 / 0.00242 Ω/m); Table 8.2: 0.32 / 0.00242 Ω/m = 132.2 → 132 m; Table B1: 76 m. Governing: 76 m (AS/NZS 3000 Table B1 length) |
| Result | 4/4 checks pass → PASS; Zs 0.1697 Ω vs Zmax 0.4868 Ω; max route 76 m (AS/NZS 3000 Table B1 length); governing: table b1 route length |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 16 mm² 1.4 + j0.0861 Ω/km → Z1 = 0.09800 + j0.00603 Ω; earth 6 mm² 3.75 + j0.0967 Ω/km → Z2 = 0.26250 + j0.00677 Ω; supplementary 16 mm² Z3 = 0.09800 + j0.00603 Ω; Ze = Z2·Z3/(Z2+Z3) = 0.07138 + j0.00370 Ω; Zloop = 0.16938 + j0.00972 Ω; Zs = |0.16938 + j0.00972| = 0.16966 Ω; Ia = 63 × 7.5 = 472.5 A, Zmax = 230/472.5 = 0.48677 Ω; If = 230/0.1697 = 1355.7 A; Zs = Zmax at 200.8 m → 200 m; Table 8.2 (16 mm², 63 A, C) 0.32 Ω: Rloop 0.1694 Ω ≤ limit; 0.32/0.00242 = 132.2 → 132 m; Table B1 (16 mm², 63 A, C) 76 m: L 70 m ≤ limit (validation case c0034-16-6mm2-pvc-70m-63a-c-supp-16) |
Example 2 — 16 mm² PVC, 40 m, 80 A type D — exceeds Table B1
Type D (12.5 × In) on a 16 mm² circuit: Zs is half of Zmax, Table 8.2 has no 80 A row, but the 40 m run exceeds the Table B1 length so the circuit fails on the length table.
Given: 16 mm² PVC active with 16 mm² earth, route length 40 m, Uo = 230 V, 80 A type D MCB (trip multiple 12.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 16 mm² table: 1.40 + j0.0861 Ω/km → Z1 = (1.40 + j0.0861) × 40/1000 = 0.0560 + j0.0034 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 0.0560 + j0.0034 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.0560 + j0.0034) + (0.0560 + j0.0034) = 0.1120 + j0.0069 Ω; loop resistance R = 0.1120 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.1120 + j0.0069| = √(0.1120² + 0.0069²) = 0.1122 Ω |
| Trip current | Ia = In × k = 80 × 12.5 = 1,000 A; Zmax = Uo / Ia = 230 / 1,000 = 0.2300 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 48.8 % of Zmax → 0.1122 vs limit 0.2300 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.1122 = 2,049.7 A ≥ Ia → 2,049.7 vs limit 1,000.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 16 mm², 80 A, type D — resistance table not checked |
| Table B1 | AS/NZS 3000 Table B1 row (16 mm², 80 A, type D) maximum length 36 m vs route 40 m → 40 vs limit 36 m FAIL |
| Max route length | Zs = Zmax when |Zt + L × (0.00280 + j0.00017)| = 0.2300 Ω → L = 81 m (≈ 0.2300 / 0.00281 Ω/m); Table B1: 36 m. Governing: 36 m (AS/NZS 3000 Table B1 length) |
| Result | 2/3 checks pass → FAIL; Zs 0.1122 Ω vs Zmax 0.2300 Ω; max route 36 m (AS/NZS 3000 Table B1 length); governing: table b1 route length. Fails: table_b1_route_length. Options: shorten the route below 36 m, increase the active/earth size, use a lower-multiple curve, or provide additional protection such as an RCD (not assessed by this engine). |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 16 mm² 1.4 + j0.0861 Ω/km → Z1 = 0.05600 + j0.00344 Ω; earth 16 mm² same → Z2 = Z1; Zloop = 0.11200 + j0.00689 Ω; Zs = |0.11200 + j0.00689| = 0.11221 Ω; Ia = 80 × 12.5 = 1000 A, Zmax = 230/1000 = 0.23000 Ω; If = 230/0.1122 = 2049.7 A; Zs = Zmax at 82.0 m → 81 m; Table 8.2 has no row for 16 mm² / 80 A; Table B1 (16 mm², 80 A, D) 36 m: L 40 m > limit (validation case c0034-16mm2-pvc-40m-80a-d-fail) |
Example 3 — 1 mm² PVC, 100 m, 6 A type B
Smallest conductor on a type B breaker: Zs is well under Zmax and the Table B1 length (not Zs) sets the maximum route.
Given: 1 mm² PVC active with 1 mm² earth, route length 100 m, Uo = 230 V, 6 A type B MCB (trip multiple 4); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 1 mm² table: 25.8 + j0.119 Ω/km → Z1 = (25.8 + j0.119) × 100/1000 = 2.5800 + j0.0119 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 2.5800 + j0.0119 Ω |
| Cable loop | Zcable = Z1 + Ze = (2.5800 + j0.0119) + (2.5800 + j0.0119) = 5.1600 + j0.0238 Ω; loop resistance R = 5.1600 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |5.1600 + j0.0238| = √(5.1600² + 0.0238²) = 5.1601 Ω |
| Trip current | Ia = In × k = 6 × 4 = 24 A; Zmax = Uo / Ia = 230 / 24 = 9.5833 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 53.8 % of Zmax → 5.1601 vs limit 9.5833 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 5.1601 = 44.6 A ≥ Ia → 44.6 vs limit 24.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 1 mm², 6 A, type B — resistance table not checked |
| Table B1 | AS/NZS 3000 Table B1 row (1 mm², 6 A, type B) maximum length 170 m vs route 100 m → 100 vs limit 170 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.05160 + j0.00024)| = 9.5833 Ω → L = 185 m (≈ 9.5833 / 0.05160 Ω/m); Table B1: 170 m. Governing: 170 m (AS/NZS 3000 Table B1 length) |
| Result | 3/3 checks pass → PASS; Zs 5.1601 Ω vs Zmax 9.5833 Ω; max route 170 m (AS/NZS 3000 Table B1 length); governing: table b1 route length |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 1 mm² 25.8 + j0.119 Ω/km → Z1 = 2.58000 + j0.01190 Ω; earth 1 mm² same → Z2 = Z1; Zloop = 5.16000 + j0.02380 Ω; Zs = |5.16000 + j0.02380| = 5.16005 Ω; Ia = 6 × 4 = 24 A, Zmax = 230/24 = 9.58333 Ω; If = 230/5.1601 = 44.6 A; Zs = Zmax at 185.7 m → 185 m; Table 8.2 has no row for 1 mm² / 6 A; Table B1 (1 mm², 6 A, B) 170 m: L 100 m ≤ limit (validation case c0034-1mm2-pvc-100m-6a-b) |
Example 4 — 1.5 mm² XLPE, 100 m, 20 A type C — too long
A long run on an undersized conductor fails Zs ≤ Zmax outright; no table row exists for 1.5 mm² at 20 A so only the two impedance checks run.
Given: 1.5 mm² XLPE active with 1.5 mm² earth, route length 100 m, Uo = 230 V, 20 A type C MCB (trip multiple 7.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | XLPE 1.5 mm² table: 17.3 + j0.107 Ω/km → Z1 = (17.3 + j0.107) × 100/1000 = 1.7300 + j0.0107 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 1.7300 + j0.0107 Ω |
| Cable loop | Zcable = Z1 + Ze = (1.7300 + j0.0107) + (1.7300 + j0.0107) = 3.4600 + j0.0214 Ω; loop resistance R = 3.4600 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |3.4600 + j0.0214| = √(3.4600² + 0.0214²) = 3.4601 Ω |
| Trip current | Ia = In × k = 20 × 7.5 = 150 A; Zmax = Uo / Ia = 230 / 150 = 1.5333 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 225.7 % of Zmax → 3.4601 vs limit 1.5333 Ω FAIL |
| Fault current | If = Uo / Zs = 230 / 3.4601 = 66.5 A ≥ Ia → 66.5 vs limit 150.0 A FAIL |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 1.5 mm², 20 A, type C — resistance table not checked |
| Table B1 | No AS/NZS 3000 Table B1 row for 1.5 mm², 20 A, type C — length table not checked |
| Max route length | Zs = Zmax when |Zt + L × (0.03460 + j0.00021)| = 1.5333 Ω → L = 44 m (≈ 1.5333 / 0.03460 Ω/m). Governing: 44 m (Zs = Zmax) |
| Result | 0/2 checks pass → FAIL; Zs 3.4601 Ω vs Zmax 1.5333 Ω; max route 44 m (Zs = Zmax); governing: earth fault loop impedance. Fails: earth_fault_loop_impedance, disconnection_instantaneous_trip. Options: shorten the route below 44 m, increase the active/earth size, use a lower-multiple curve, or provide additional protection such as an RCD (not assessed by this engine). |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); XLPE 1.5 mm² 17.3 + j0.107 Ω/km → Z1 = 1.73000 + j0.01070 Ω; earth 1.5 mm² same → Z2 = Z1; Zloop = 3.46000 + j0.02140 Ω; Zs = |3.46000 + j0.02140| = 3.46007 Ω; Ia = 20 × 7.5 = 150 A, Zmax = 230/150 = 1.53333 Ω; If = 230/3.4601 = 66.5 A; Zs = Zmax at 44.3 m → 44 m; Table 8.2 has no row for 1.5 mm² / 20 A; Table B1 has no row for 1.5 mm² / 20 A (validation case c0034-1mm5-xlpe-100m-20a-c-fail) |
Example 5 — 25 mm² XLPE sub-main at Uo = 400 V with a 2 MVA source
A 400 V phase-to-earth system: Zmax scales with Uo, the transformer impedance is computed at 400 V and Table B1 (25 mm², 100 A) applies.
Given: 25 mm² XLPE active with 16 mm² earth, route length 45 m, Uo = 400 V, 100 A type C MCB (trip multiple 7.5); 2 MVA, 6 % source transformer (X/R 10). Engine c0034 (unrounded).
| Source impedance | Vbase = 400 × √3 = 692.8 V; |Zt| = 6/100 × 692.8² / (2 × 10⁶) = 0.01440 Ω; with X/R = 10: Rt = 0.01440 / √(1 + 10²) = 0.00143 Ω, Xt = 10 × Rt = 0.01433 Ω |
|---|---|
| Active conductor | XLPE 25 mm² table: 0.927 + j0.0808 Ω/km → Z1 = (0.927 + j0.0808) × 45/1000 = 0.0417 + j0.0036 Ω |
| Earth conductor | XLPE 16 mm² table: 1.47 + j0.0805 Ω/km → Z2 = (1.47 + j0.0805) × 45/1000 = 0.0662 + j0.0036 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.0417 + j0.0036) + (0.0662 + j0.0036) = 0.1079 + j0.0073 Ω; loop resistance R = 0.1079 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.1093 + j0.0216| = √(0.1093² + 0.0216²) = 0.1114 Ω |
| Trip current | Ia = In × k = 100 × 7.5 = 750 A; Zmax = Uo / Ia = 400 / 750 = 0.5333 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 20.9 % of Zmax → 0.1114 vs limit 0.5333 Ω PASS |
| Fault current | If = Uo / Zs = 400 / 0.1114 = 3,590.4 A ≥ Ia → 3,590.4 vs limit 750.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 25 mm², 100 A, type C — resistance table not checked |
| Table B1 | AS/NZS 3000 Table B1 row (25 mm², 100 A, type C) maximum length 53 m vs route 45 m → 45 vs limit 53 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.00240 + j0.00016)| = 0.5333 Ω → L = 220 m; Table B1: 53 m. Governing: 53 m (AS/NZS 3000 Table B1 length) |
| Result | 3/3 checks pass → PASS; Zs 0.1114 Ω vs Zmax 0.5333 Ω; max route 53 m (AS/NZS 3000 Table B1 length); governing: table b1 route length |
| Reference | Hand calculation (help-page formulas and tables): Vbase = 400 × √3 = 692.8 V, |Zt| = 6/100 × 692.8² / 2,000,000 = 0.01440 Ω, Rt = 0.01440/√101 = 0.00143 Ω, Xt = 0.01433 Ω; XLPE 25 mm² 0.927 + j0.0808 Ω/km → Z1 = 0.04172 + j0.00364 Ω; earth 16 mm² 1.47 + j0.0805 Ω/km → Z2 = 0.06615 + j0.00362 Ω; Zloop = 0.10787 + j0.00726 Ω; Zs = |0.10930 + j0.02159| = 0.11141 Ω; Ia = 100 × 7.5 = 750 A, Zmax = 400/750 = 0.53333 Ω; If = 400/0.1114 = 3590.4 A; Zs = Zmax at 220.9 m → 220 m; Table 8.2 has no row for 25 mm² / 100 A; Table B1 (25 mm², 100 A, C) 53 m: L 45 m ≤ limit (validation case c0034-25-16mm2-xlpe-45m-100a-c-400v-2mva) |
Example 6 — 2.5 mm² lighting circuit, 20 A type C
A short PVC final sub-circuit with equal active and earth; both AS/NZS 3000 tables apply and Table 8.2 sets the maximum route length.
Given: 2.5 mm² PVC active with 2.5 mm² earth, route length 30 m, Uo = 230 V, 20 A type C MCB (trip multiple 7.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 2.5 mm² table: 9.01 + j0.102 Ω/km → Z1 = (9.01 + j0.102) × 30/1000 = 0.2703 + j0.0031 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 0.2703 + j0.0031 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.2703 + j0.0031) + (0.2703 + j0.0031) = 0.5406 + j0.0061 Ω; loop resistance R = 0.5406 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.5406 + j0.0061| = √(0.5406² + 0.0061²) = 0.5406 Ω |
| Trip current | Ia = In × k = 20 × 7.5 = 150 A; Zmax = Uo / Ia = 230 / 150 = 1.5333 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 35.3 % of Zmax → 0.5406 vs limit 1.5333 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.5406 = 425.4 A ≥ Ia → 425.4 vs limit 150.0 A PASS |
| Table 8.2 | AS/NZS 3000 Table 8.2 row (2.5 mm², 20 A, type C) maximum loop resistance 1.00 Ω vs R = 0.5406 Ω → 0.5406 vs limit 1.0000 Ω PASS |
| Table B1 | AS/NZS 3000 Table B1 row (2.5 mm², 20 A, type C) maximum length 68 m vs route 30 m → 30 vs limit 68 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.01802 + j0.00020)| = 1.5333 Ω → L = 85 m (≈ 1.5333 / 0.01802 Ω/m); Table 8.2: 1.00 / 0.01802 Ω/m = 55.5 → 55 m; Table B1: 68 m. Governing: 55 m (AS/NZS 3000 Table 8.2 resistance) |
| Result | 4/4 checks pass → PASS; Zs 0.5406 Ω vs Zmax 1.5333 Ω; max route 55 m (AS/NZS 3000 Table 8.2 resistance); governing: table 8 2 loop resistance |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 2.5 mm² 9.01 + j0.102 Ω/km → Z1 = 0.27030 + j0.00306 Ω; earth 2.5 mm² same → Z2 = Z1; Zloop = 0.54060 + j0.00612 Ω; Zs = |0.54060 + j0.00612| = 0.54063 Ω; Ia = 20 × 7.5 = 150 A, Zmax = 230/150 = 1.53333 Ω; If = 230/0.5406 = 425.4 A; Zs = Zmax at 85.1 m → 85 m; Table 8.2 (2.5 mm², 20 A, C) 1.00 Ω: Rloop 0.5406 Ω ≤ limit; 1.00/0.01802 = 55.5 → 55 m; Table B1 (2.5 mm², 20 A, C) 68 m: L 30 m ≤ limit (validation case c0034-2mm5-pvc-30m-20a-c) |
Example 7 — 4 mm² with 2.5 mm² earth, 50 m, 32 A type C
Reduced earth conductor: Zs clears Zmax but the loop resistance exceeds the Table 8.2 row, so the circuit fails on the table check.
Given: 4 mm² PVC active with 2.5 mm² earth, route length 50 m, Uo = 230 V, 32 A type C MCB (trip multiple 7.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 4 mm² table: 5.61 + j0.102 Ω/km → Z1 = (5.61 + j0.102) × 50/1000 = 0.2805 + j0.0051 Ω |
| Earth conductor | PVC 2.5 mm² table: 9.01 + j0.102 Ω/km → Z2 = (9.01 + j0.102) × 50/1000 = 0.4505 + j0.0051 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.2805 + j0.0051) + (0.4505 + j0.0051) = 0.7310 + j0.0102 Ω; loop resistance R = 0.7310 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.7310 + j0.0102| = √(0.7310² + 0.0102²) = 0.7311 Ω |
| Trip current | Ia = In × k = 32 × 7.5 = 240 A; Zmax = Uo / Ia = 230 / 240 = 0.9583 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 76.3 % of Zmax → 0.7311 vs limit 0.9583 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.7311 = 314.6 A ≥ Ia → 314.6 vs limit 240.0 A PASS |
| Table 8.2 | AS/NZS 3000 Table 8.2 row (4 mm², 32 A, type C) maximum loop resistance 0.62 Ω vs R = 0.7310 Ω → 0.7310 vs limit 0.6200 Ω FAIL |
| Table B1 | AS/NZS 3000 Table B1 row (4 mm², 32 A, type C) maximum length 52 m vs route 50 m → 50 vs limit 52 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.01462 + j0.00020)| = 0.9583 Ω → L = 65 m (≈ 0.9583 / 0.01462 Ω/m); Table 8.2: 0.62 / 0.01462 Ω/m = 42.4 → 42 m; Table B1: 52 m. Governing: 42 m (AS/NZS 3000 Table 8.2 resistance) |
| Result | 3/4 checks pass → FAIL; Zs 0.7311 Ω vs Zmax 0.9583 Ω; max route 42 m (AS/NZS 3000 Table 8.2 resistance); governing: table 8 2 loop resistance. Fails: table_8_2_loop_resistance. Options: shorten the route below 42 m, increase the active/earth size, use a lower-multiple curve, or provide additional protection such as an RCD (not assessed by this engine). |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 4 mm² 5.61 + j0.102 Ω/km → Z1 = 0.28050 + j0.00510 Ω; earth 2.5 mm² 9.01 + j0.102 Ω/km → Z2 = 0.45050 + j0.00510 Ω; Zloop = 0.73100 + j0.01020 Ω; Zs = |0.73100 + j0.01020| = 0.73107 Ω; Ia = 32 × 7.5 = 240 A, Zmax = 230/240 = 0.95833 Ω; If = 230/0.7311 = 314.6 A; Zs = Zmax at 65.5 m → 65 m; Table 8.2 (4 mm², 32 A, C) 0.62 Ω: Rloop 0.7310 Ω > limit; 0.62/0.01462 = 42.4 → 42 m; Table B1 (4 mm², 32 A, C) 52 m: L 50 m ≤ limit (validation case c0034-4-2mm5-pvc-50m-32a-c) |
Example 8 — 4 mm² PVC, 50 m, 20 A type C (help-page example 1)
4 mm² on a 20 A breaker has a Table B1 row but no Table 8.2 row, so only the length table is appended to the Zs check.
Given: 4 mm² PVC active with 4 mm² earth, route length 50 m, Uo = 230 V, 20 A type C MCB (trip multiple 7.5); no source impedance (circuit cable only). Engine c0034 (unrounded).
| Source impedance | No source transformer given: Zt = 0 — Zs is the circuit cable's own contribution only |
|---|---|
| Active conductor | PVC 4 mm² table: 5.61 + j0.102 Ω/km → Z1 = (5.61 + j0.102) × 50/1000 = 0.2805 + j0.0051 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 0.2805 + j0.0051 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.2805 + j0.0051) + (0.2805 + j0.0051) = 0.5610 + j0.0102 Ω; loop resistance R = 0.5610 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.5610 + j0.0102| = √(0.5610² + 0.0102²) = 0.5611 Ω |
| Trip current | Ia = In × k = 20 × 7.5 = 150 A; Zmax = Uo / Ia = 230 / 150 = 1.5333 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 36.6 % of Zmax → 0.5611 vs limit 1.5333 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.5611 = 409.9 A ≥ Ia → 409.9 vs limit 150.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 4 mm², 20 A, type C — resistance table not checked |
| Table B1 | AS/NZS 3000 Table B1 row (4 mm², 20 A, type C) maximum length 67 m vs route 50 m → 50 vs limit 67 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.01122 + j0.00020)| = 1.5333 Ω → L = 136 m (≈ 1.5333 / 0.01122 Ω/m); Table B1: 67 m. Governing: 67 m (AS/NZS 3000 Table B1 length) |
| Result | 3/3 checks pass → PASS; Zs 0.5611 Ω vs Zmax 1.5333 Ω; max route 67 m (AS/NZS 3000 Table B1 length); governing: table b1 route length |
| Reference | Hand calculation (help-page formulas and tables): no source impedance (Zt = 0); PVC 4 mm² 5.61 + j0.102 Ω/km → Z1 = 0.28050 + j0.00510 Ω; earth 4 mm² same → Z2 = Z1; Zloop = 0.56100 + j0.01020 Ω; Zs = |0.56100 + j0.01020| = 0.56109 Ω; Ia = 20 × 7.5 = 150 A, Zmax = 230/150 = 1.53333 Ω; If = 230/0.5611 = 409.9 A; Zs = Zmax at 136.6 m → 136 m; Table 8.2 has no row for 4 mm² / 20 A; Table B1 (4 mm², 20 A, C) 67 m: L 50 m ≤ limit (validation case c0034-4mm2-pvc-50m-20a-c) |
Example 9 — 50 m circuit with a 1 MVA 6 % source transformer (help-page example 2)
Adds the supply transformer impedance (X/R 10) to the loop; the extra 0.0095 Ω barely moves Zs.
Given: 4 mm² PVC active with 4 mm² earth, route length 50 m, Uo = 230 V, 20 A type C MCB (trip multiple 7.5); 1 MVA, 6 % source transformer (X/R 10). Engine c0034 (unrounded).
| Source impedance | Vbase = 230 × √3 = 398.4 V; |Zt| = 6/100 × 398.4² / (1 × 10⁶) = 0.00952 Ω; with X/R = 10: Rt = 0.00952 / √(1 + 10²) = 0.00095 Ω, Xt = 10 × Rt = 0.00947 Ω |
|---|---|
| Active conductor | PVC 4 mm² table: 5.61 + j0.102 Ω/km → Z1 = (5.61 + j0.102) × 50/1000 = 0.2805 + j0.0051 Ω |
| Earth conductor | Same size as the active: Z2 = Z1 = 0.2805 + j0.0051 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.2805 + j0.0051) + (0.2805 + j0.0051) = 0.5610 + j0.0102 Ω; loop resistance R = 0.5610 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.5619 + j0.0197| = √(0.5619² + 0.0197²) = 0.5623 Ω |
| Trip current | Ia = In × k = 20 × 7.5 = 150 A; Zmax = Uo / Ia = 230 / 150 = 1.5333 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 36.7 % of Zmax → 0.5623 vs limit 1.5333 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.5623 = 409.0 A ≥ Ia → 409.0 vs limit 150.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 4 mm², 20 A, type C — resistance table not checked |
| Table B1 | AS/NZS 3000 Table B1 row (4 mm², 20 A, type C) maximum length 67 m vs route 50 m → 50 vs limit 67 m PASS |
| Max route length | Zs = Zmax when |Zt + L × (0.01122 + j0.00020)| = 1.5333 Ω → L = 136 m; Table B1: 67 m. Governing: 67 m (AS/NZS 3000 Table B1 length) |
| Result | 3/3 checks pass → PASS; Zs 0.5623 Ω vs Zmax 1.5333 Ω; max route 67 m (AS/NZS 3000 Table B1 length); governing: table b1 route length |
| Reference | Hand calculation (help-page formulas and tables): Vbase = 230 × √3 = 398.4 V, |Zt| = 6/100 × 398.4² / 1,000,000 = 0.00952 Ω, Rt = 0.00952/√101 = 0.00095 Ω, Xt = 0.00947 Ω; PVC 4 mm² 5.61 + j0.102 Ω/km → Z1 = 0.28050 + j0.00510 Ω; earth 4 mm² same → Z2 = Z1; Zloop = 0.56100 + j0.01020 Ω; Zs = |0.56195 + j0.01967| = 0.56229 Ω; Ia = 20 × 7.5 = 150 A, Zmax = 230/150 = 1.53333 Ω; If = 230/0.5623 = 409.0 A; Zs = Zmax at 136.5 m → 136 m; Table 8.2 has no row for 4 mm² / 20 A; Table B1 (4 mm², 20 A, C) 67 m: L 50 m ≤ limit (validation case c0034-4mm2-pvc-50m-20a-c-1mva) |
Example 10 — 50 mm² PVC sub-main, 80 m, 100 A type C, 500 kVA 5 % source
No table row for 50 mm² at 100 A: the maximum route length comes only from solving Zs = Zmax with the transformer impedance included.
Given: 50 mm² PVC active with 25 mm² earth, route length 80 m, Uo = 230 V, 100 A type C MCB (trip multiple 7.5); 0.5 MVA, 5 % source transformer (X/R 10). Engine c0034 (unrounded).
| Source impedance | Vbase = 230 × √3 = 398.4 V; |Zt| = 5/100 × 398.4² / (0.5 × 10⁶) = 0.01587 Ω; with X/R = 10: Rt = 0.01587 / √(1 + 10²) = 0.00158 Ω, Xt = 10 × Rt = 0.01579 Ω |
|---|---|
| Active conductor | PVC 50 mm² table: 0.471 + j0.0797 Ω/km → Z1 = (0.471 + j0.0797) × 80/1000 = 0.0377 + j0.0064 Ω |
| Earth conductor | PVC 25 mm² table: 0.884 + j0.0853 Ω/km → Z2 = (0.884 + j0.0853) × 80/1000 = 0.0707 + j0.0068 Ω |
| Cable loop | Zcable = Z1 + Ze = (0.0377 + j0.0064) + (0.0707 + j0.0068) = 0.1084 + j0.0132 Ω; loop resistance R = 0.1084 Ω |
| Loop impedance | Zs = |Zt + Zcable| = |0.1100 + j0.0290| = √(0.1100² + 0.0290²) = 0.1137 Ω |
| Trip current | Ia = In × k = 100 × 7.5 = 750 A; Zmax = Uo / Ia = 230 / 750 = 0.3067 Ω |
| Zs ≤ Zmax | AS/NZS 3000 Clause 8.3.9 basis, Zs at 37.1 % of Zmax → 0.1137 vs limit 0.3067 Ω PASS |
| Fault current | If = Uo / Zs = 230 / 0.1137 = 2,022.2 A ≥ Ia → 2,022.2 vs limit 750.0 A PASS |
| Table 8.2 | No AS/NZS 3000 Table 8.2 row for 50 mm², 100 A, type C — resistance table not checked |
| Table B1 | No AS/NZS 3000 Table B1 row for 50 mm², 100 A, type C — length table not checked |
| Max route length | Zs = Zmax when |Zt + L × (0.00135 + j0.00016)| = 0.3067 Ω → L = 221 m. Governing: 221 m (Zs = Zmax) |
| Result | 2/2 checks pass → PASS; Zs 0.1137 Ω vs Zmax 0.3067 Ω; max route 221 m (Zs = Zmax); governing: earth fault loop impedance |
| Reference | Hand calculation (help-page formulas and tables): Vbase = 230 × √3 = 398.4 V, |Zt| = 5/100 × 398.4² / 500,000 = 0.01587 Ω, Rt = 0.01587/√101 = 0.00158 Ω, Xt = 0.01579 Ω; PVC 50 mm² 0.471 + j0.0797 Ω/km → Z1 = 0.03768 + j0.00638 Ω; earth 25 mm² 0.884 + j0.0853 Ω/km → Z2 = 0.07072 + j0.00682 Ω; Zloop = 0.10840 + j0.01320 Ω; Zs = |0.10998 + j0.02899| = 0.11374 Ω; Ia = 100 × 7.5 = 750 A, Zmax = 230/750 = 0.30667 Ω; If = 230/0.1137 = 2022.2 A; Zs = Zmax at 221.8 m → 221 m; Table 8.2 has no row for 50 mm² / 100 A; Table B1 has no row for 50 mm² / 100 A (validation case c0034-50-25mm2-pvc-80m-100a-c-0mva5) |
Standards & References
- IEC 60364-4-41 — Protection against electric shock. Defines earth fault loop impedance requirements for automatic disconnection.
- BS 7671 (IET Wiring Regulations) — Requirements for electrical installations. Tables 41.2–41.4 provide maximum Zs values.
- AS/NZS 3000:2018 — Electrical installations (Wiring Rules). Section 5.8 covers earth fault loop impedance requirements.
- AS/NZS 3008.1:2017 — Selection of cables. Provides conductor impedance data and Table 8.2 / Table B1 compliance checks.
Tips & Limitations
Developer Guide — Architecture
File Layout
components/c0034_earth_fault_loop_impedance/
├─ __init__.py # Docstring
├─ apps.py # Django AppConfig
├─ calculations.py # Pure Python — all math, no Django
├─ component.py # Schema, Calculator class, builders, registration
├─ equations.py # LaTeX equation templates
└─ templates/.../sidebar_form.html # Vue 3 sidebar form
Data flow: Sidebar form → EarthFaultLoopImpedanceCalculator.calculate()
→ calculate_earth_fault_loop_impedance() (pure Python) → results dict
→ equation_builder() / summary_cards_builder() → UI rendering
Shared utilities:
calcs.core.electrical_utils.ComplexNumber— R+jX impedance classcalcs.core.electrical_utils.calculate_parallel_impedance()— parallel Z combinationcalcs.core.electrical_utils.calculate_transformer_impedance()— Zt from nameplate
Developer Guide — Code Paths
| Purpose | File | Key Function / Class |
|---|---|---|
| Conductor impedance | calculations.py |
calculate_conductor_impedance(csa, length, insulation_type) |
| Table 8.2 check | calculations.py |
check_table_8_2(active_csa, breaker_rating, trip_multiplier, cable_resistance) |
| Table B1 check | calculations.py |
check_table_b1(active_csa, breaker_rating, trip_multiplier, cable_length) |
| Main entry | calculations.py |
calculate_earth_fault_loop_impedance(data) |
| Validation | component.py |
EarthFaultLoopImpedanceCalculator.validate_parameters() |
| Registration | component.py |
register_component(registry) |
Developer Guide — Testing
pytest calcs/test_c0034_earth_fault_loop_impedance.py -v
The worked examples on this page are generated from the MCP validation corpus (mcp_public/validation/cases/fe_calc_efli/) by
python manage.py generate_help_examples --tool fe_calc_efli; calcs/test_help_examples.py fails when the committed fragment is stale.
Test coverage includes:
TestCalculateConductorImpedance— PVC/XLPE lookups, zero length, invalid CSA, magnitudeTestCheckTable82— matching/non-matching rows, B/C/D curves, pass/failTestCheckTableB1— matching/non-matching rows, B/C/D curves, pass/failTestCalculateEarthFaultLoopImpedance— basic, transformer, supplementary, complianceTestCalculatorClass— validation, round-trip, registration