Power Flow Problem Formulation
Power flow analysis determines the voltage magnitudes, voltage angles, and power flows at every bus in an electrical network under steady-state conditions. It's the foundational calculation engineers use to verify that a planned or operating power system can deliver power within acceptable voltage and loading limits. This topic covers how the problem is mathematically set up, how buses are classified, and how the nonlinear equations are solved iteratively.
Bus Admittance Matrix and Power Balance Equations
The power flow problem starts with a model of the network. The bus admittance matrix () captures the entire network topology and the admittances of every transmission line and transformer in a single square matrix, with dimensions for an -bus system.
Each diagonal element equals the sum of all admittances connected to bus (including shunt elements). Each off-diagonal element equals the negative of the admittance directly connecting bus to bus . If buses and have no direct connection, , which is why is typically sparse for large systems.
Power balance equations are derived from Kirchhoff's Current Law (KCL). At each bus, the net injected power (generation minus load) must equal the total power flowing out through all connected lines. Written in terms of bus voltages and admittance elements:
where:
- and are the net active and reactive power injections at bus
- and are the voltage magnitude and angle at bus
- and are the magnitude and angle of the element of
Note the sign convention on the reactive power equation: the negative sign appears because of how the sine term relates to reactive power consumption versus generation. Some textbooks fold this sign into the angle convention, so always check which form your course uses.
Complex Power Injections
The complex power injection at bus is:
where is the complex conjugate of the net current injected at bus . This net injection equals the sum of power flows from bus to every connected bus :
The power flow on a single line from bus to bus is built up in three steps:
-
Express the line current using the admittance between the two buses:
-
Form the complex power flow using the sending-end voltage and the conjugate of the line current:
-
Separate into real and imaginary parts to get the active power flow and reactive power flow on that line.
This line-by-line formulation is what you use after solving the power flow to compute individual branch flows and losses.
Bus Classification in Power Systems
Every bus in the system is assigned one of three types, depending on which quantities are known (specified) and which must be solved for.

Slack Bus
The slack bus (also called the swing bus) serves as the voltage reference for the entire system. Its voltage magnitude and angle are both fixed, typically set to in per-unit. Because total system losses aren't known until after the solution converges, the slack bus absorbs whatever active and reactive power mismatch remains. There is exactly one slack bus per system.
PV Bus
A PV bus (generator bus) has its active power injection and voltage magnitude specified. The unknowns to solve for are the voltage angle and the reactive power output . Any bus with a voltage-regulating generator is modeled this way. In practice, the generator's reactive output must stay within its capability limits; if hits a limit during the iterative solution, the bus is temporarily converted to a PQ bus at that limit.
PQ Bus
A PQ bus (load bus) has both its active and reactive power injections and specified. The unknowns are the voltage magnitude and angle . Most buses in a real power system are PQ buses, representing loads such as residential areas, industrial facilities, or any bus without active voltage regulation.
Quick reference: For an -bus system with one slack bus and PV buses, the total number of unknowns is : one angle per non-slack bus ( angles) plus one voltage magnitude per PQ bus ( magnitudes).

Jacobian Matrix for Power Flow
Why an Iterative Method Is Needed
The power balance equations are nonlinear (they involve products of voltage magnitudes and trigonometric functions of angle differences). There's no closed-form solution, so you solve them iteratively. The Newton-Raphson method is the standard approach because of its fast (quadratic) convergence.
Jacobian Matrix Structure
At each iteration, Newton-Raphson linearizes the power balance equations around the current estimate. The linearized system is:
The four submatrices of the Jacobian matrix are:
- — sensitivity of active power to voltage angle changes
- — sensitivity of active power to voltage magnitude changes
- — sensitivity of reactive power to voltage angle changes
- — sensitivity of reactive power to voltage magnitude changes
Each element is obtained by partially differentiating the power balance equations with respect to the corresponding unknown. The Jacobian must be recalculated (or updated) at every iteration because the operating point changes.
Newton-Raphson Solution Steps
- Initialize all unknown voltages. A common starting point (flat start) is p.u. and for every unknown bus.
- Compute power mismatches and at each bus by substituting current voltage estimates into the power balance equations and comparing with the specified values.
- Check convergence. If all mismatches are below the tolerance (typically p.u. or smaller), stop. The current voltages are the solution.
- Build the Jacobian matrix using the current voltage estimates.
- Solve the linear system for the correction vector: where and . In practice, you solve using LU factorization rather than explicitly inverting .
- Update the unknowns:
- Return to Step 2 and repeat until convergence.
Most well-conditioned systems converge in 3–5 iterations with Newton-Raphson. If the system is heavily loaded or near a voltage collapse point, convergence may be slow or may fail entirely, which itself is a useful diagnostic indicator of system stress.