What you'll learn
- Do a per-unit calculation
- Convert nameplate impedances to a common system base
- Estimate a three-phase fault current from per-unit impedances
- Solve a two-bus load flow with Gauss-Seidel iteration
Convert impedances to per-unit, change bases, estimate a fault current and solve a two-bus load flow.
Why it matters
Power system studies (load flowA study that finds the voltage magnitude and angle at every bus for given generation and loads., short circuit, stability) are how engineers check that a network can carry its loads, keep voltages in range and survive faults. Every one of them is done in the per-unitA value expressed as a fraction of a chosen base value: actual / base. system, because it turns a network with several voltage levels and transformers into one simple circuit. You will meet it in every power systems course, in the FE and PE Power exams, and in commercial tools such as PSS/E, PowerWorld and ETAP.
The per-unit idea
Pick a base for each quantity and express values as fractions of it:
per-unit value = actual value / base valueChoose one system-wide power baseOne system-wide MVA value, often 100 MVA, from which the other bases follow. S_base (often 100 MVA) and a voltage base V_base for each voltage zone, matched to the transformer ratios. The other bases follow (three-phase, line-to-line kV, MVA):
Z_base = kV_base^2 / MVA_base (ohms)
I_base = MVA_base / (sqrt(3) * kV_base) (kA)Because the voltage bases follow the transformer ratios, an ideal transformer disappears from the per-unit circuit: it becomes just its leakage impedance. Equipment of similar type also has similar per-unit values whatever its size, which makes errors easy to spot.
Worked example 1: bases and conversion
At 138 kV on a 100 MVA base:
Z_base = 138^2 / 100 = 190.44 Ω
I_base = 100 / (1.732 * 138) = 0.418 kA = 418 AA line with 19.044 Ω of reactance is 19.044 / 190.44 = 0.10 pu.
Changing base
Nameplates give impedance on the equipment's own rating. Convert to the system base:
Z_new = Z_old * (kV_old / kV_new)^2 * (MVA_new / MVA_old)A 50 MVA transformer with 10% (0.10 pu) reactance on its own base, on a 100 MVA system base with the same kV: 0.10 * (100 / 50) = 0.20 pu.
Worked example 2: a simplified fault estimate
Assume a stiff source at 1.0 pu behind the transformer (0.20 pu) and the line (0.10 pu), and a bolted three-phase fault at the far end of the line, ignoring resistance and load:
I_fault = V / Z_total = 1.0 / 0.30 = 3.33 pu
in amps at 138 kV: 3.33 * 418 A = 1,395 A (about 1.39 kA)Real short-circuit studies include the source impedance, generator and motor contributions, and the X/R ratio, following standards such as IEEE C37 and IEC 60909. This sketch shows the method, not a design value.
Load flow
A load flow (power flow) finds the voltage magnitude and angle at every bus for given generation and loads. Buses are typed: the slackThe bus with fixed voltage and angle that supplies whatever power is needed to balance the system. bus holds a fixed voltage and angle and supplies whatever balance is needed; PV (generator) buses fix real power and voltage magnitude; PQ (load) buses fix real and reactive power. The equations are nonlinear, so they are solved iteratively with Gauss-SeidelAn iterative method that repeatedly updates bus voltages until they converge. or Newton-Raphson.
For the smallest case, a slack bus V1 feeding a load S = P + jQ at bus 2 through series impedance Z, the load current is I = conj(S / V2) and Gauss-Seidel repeats:
v2 = 1 + 0j
for _ in range(50):
v2 = v1 - z * (s_load / v2).conjugate()Worked example 3: two buses
V1 = 1.0∠0° pu, Z = 0.02 + j0.08 pu, load 80 MW and 40 Mvar on 100 MVA (S = 0.8 + j0.4 pu). The iteration converges in a few steps to
V2 = 0.9459 - j0.0560 pu = 0.948 pu at -3.39°
I = 0.944 pu, line loss = |I|^2 * R = 0.0178 pu = 1.78 MW
sending end: 81.8 MW and 47.1 MvarThe voltage at the load is 5.2% low, which most planning criteria (often ±5%) would flag. Remedies include capacitor banks to supply reactive power locally, a tap-changing transformer, or a stronger line. Notice how much the reactive load matters: with X four times R, Q drives most of the voltage drop.
Common mistakes
- Mixing voltage zones, using 138 kV bases on the 13.8 kV side.
- Forgetting to change base for nameplate impedances.
- Using phase voltage with three-phase MVA (or the reverse) in
Z_base. - Dropping the conjugate in
I = conj(S / V). - Treating a hand estimate as a design study. Real studies use validated models and software and are reviewed and sealed by licensed engineers.
Recap
Z_base = kV^2 / MVA,I_base = MVA / (sqrt(3) kV); per-unit = actual / base.- Change base with
(kV_old / kV_new)^2 * (MVA_new / MVA_old). - Load flow solves bus voltages iteratively; reactive power drives voltage drop on mostly reactive lines.
Try it
Open the Do tab to code per-unit conversions, a fault estimate and a two-bus Gauss-Seidel load flow.
Key terms (5)
- per-unit
- A value expressed as a fraction of a chosen base value: actual / base.
- power base
- One system-wide MVA value, often 100 MVA, from which the other bases follow.
- load flow
- A study that finds the voltage magnitude and angle at every bus for given generation and loads.
- slack
- The bus with fixed voltage and angle that supplies whatever power is needed to balance the system.
- Gauss-Seidel
- An iterative method that repeatedly updates bus voltages until they converge.