The Bus Impedance Matrix and Building Algorithm
Chapter 16 built a matrix that turns voltages into currents; this chapter builds its inverse — and because the inverse of a sparse matrix is full, \(\mathbf{Z}_{bus}\) is never obtained by inverting anything but is grown element by element from an empty network.
- What a single entry of \(\mathbf{Z}_{bus}\) means physically — an open-circuit driving-point or transfer impedance — and why that is the opposite measurement to the one that defines \(Y_{ij}\).
- Why \(\mathbf{Z}_{bus}=\mathbf{Y}_{bus}^{-1}\) is a definition and not a method, and what goes wrong when a large network is inverted.
- The distinction between a branch, which brings a new bus, and a link, which closes a loop between buses already present.
- All four modification types, each derived from \(\mathbf{V}=\mathbf{Z}\mathbf{I}\) rather than quoted, and why Types 1 and 3 are only special cases of Types 2 and 4.
- How Kron reduction reappears here as the way a link is absorbed, exactly as it eliminated a bus in Chapter 16.
- How to remove or change a line in a finished matrix by adding a link of negative impedance, without rebuilding anything.
- Why \(Z_{kk}\) is the Thevenin impedance at bus \(k\), and how one column of \(\mathbf{Z}_{bus}\) delivers every fault current and every faulted bus voltage for Chapters 21 to 25.
What the Entries of Z-Bus Actually Mean
Chapter 16 assembled the nodal equation of a per-unit network, \(\mathbf{I}_{bus}=\mathbf{Y}_{bus}\mathbf{V}_{bus}\), and closed with a table contrasting that matrix with its inverse. This chapter takes the inverse seriously. Whenever \(\mathbf{Y}_{bus}\) is non-singular — which, as Section 16-6 established, requires at least one admittance connecting the network to the reference — the relation can be turned around:
Written out, \(V_i = \sum_{k=1}^{n} Z_{ik} I_k\). The equation says that every bus voltage is a superposition of contributions, one from each injected current, and the coefficients \(Z_{ik}\) are what the network contributes. To find out what a particular coefficient means, use the standard device for reading any linear system: switch on one input at a time.
Set every injection to zero except \(I_k\). The sum collapses to \(V_i = Z_{ik}I_k\) for every bus \(i\), so
\(Z_{kk}\) is the driving-point impedance of bus \(k\): the voltage that appears at \(k\) per unit of current injected there. \(Z_{ik}\) with \(i \neq k\) is a transfer impedance: the voltage that the same injection raises at the distant bus \(i\).
The condition \(I_m=0\) is the crucial one, and it is routinely misread. It does not mean that the other buses are disconnected from the network — every line is still in place, and current still flows through every one of them. It means only that no current is injected from outside at those buses; each of them is left open-circuited at its own terminal. This is why the entries of \(\mathbf{Z}_{bus}\) are called open-circuit impedances, in direct contrast with Chapter 16, where \(Y_{ik}\) was defined by holding every bus but \(k\) at zero volts, that is, by shorting them to the reference.
Two structural consequences follow at once. First, \(\mathbf{Z}_{bus}\) is symmetric: the inverse of a symmetric matrix is symmetric, and \(\mathbf{Y}_{bus}\) is symmetric for any network of ordinary passive elements. Physically this is reciprocity — a unit injection at bus 3 raises bus 7 by exactly as much as a unit injection at bus 7 raises bus 3. Second, \(\mathbf{Z}_{bus}\) is full. A current pushed into any bus of a connected network alters the voltage at every other bus, however faintly, so no entry has any reason to vanish. Where \(\mathbf{Y}_{bus}\) recorded which buses are wired together, \(\mathbf{Z}_{bus}\) records how strongly each bus feels a disturbance anywhere else, and every bus feels every disturbance.
There is one more reading of the diagonal that will carry the whole of Part 5. Injecting a current at bus \(k\) with all other injections zero and all internal sources dead is precisely the measurement one performs to find a Thevenin impedance at a pair of terminals. So \(Z_{kk}\) is the Thevenin impedance of the entire network looking back into bus \(k\), with the reference as the other terminal. Section 17-9 turns that single observation into a complete method for fault calculation.
Why Inversion Is the Wrong Route
\(\mathbf{Z}_{bus}=\mathbf{Y}_{bus}^{-1}\) is a definition, not an instruction. For a two-bus or three-bus problem, inverting by cofactors is the quickest path and Example 1 does exactly that. Beyond that size, three separate objections appear.
The first is arithmetic. Inverting an \(n \times n\) matrix costs of the order of \(n^3\) complex operations and stores \(n^2\) complex numbers. Chapter 16 made the point that a \(400\)-bus admittance matrix holds only about \(1200\) non-zero entries; its inverse holds \(160{,}000\), every one of which must be computed and kept. All the structure that made the nodal formulation attractive is thrown away in the first step.
The second is that the input data does not arrive as a matrix. A power system is described by a branch list — from-bus, to-bus, impedance, charging — and the natural question is what each new element does to the answer, not what the assembled matrix inverts to. A method that consumes the branch list directly is closer to the physics and easier to program.
The third is decisive in practice. Networks change constantly: a line is switched out for maintenance, a second circuit is commissioned, a transformer is bypassed. In \(\mathbf{Y}_{bus}\) each such change touches four entries. In \(\mathbf{Z}_{bus}\) it touches all \(n^2\). If the only available tool is inversion, then every contingency in a list of several hundred requires a fresh \(n^3\) computation. What is wanted instead is an update rule: given the matrix of the present network, produce the matrix of the modified network directly. That rule turns out to be the same rule that builds the matrix in the first place, which is the subject of the next five sections.
Growing a Network One Element at a Time
The idea behind the building algorithm is disarmingly simple. Begin with nothing at all — a reference node and no buses. Add the network's elements one at a time, and at every stage keep the bus impedance matrix of the partial network built so far. When the last element has been added, the partial network is the real network and its matrix is the answer.
Everything therefore depends on one question: given \(\mathbf{Z}_{orig}\) for a partial network of \(n\) buses, what is the matrix after one more element of impedance \(Z_b\) is connected? The answer depends only on what the new element joins, and there are two possibilities.
If the element brings in a bus that the partial network does not yet contain, it is a branch. The matrix must grow by one row and one column, because there is a new voltage to account for. Crucially, a branch cannot create a loop: the new bus hangs off the existing network by a single element, so current reaching it has only one way in and one way out.
If both ends of the element are nodes already present — two existing buses, or an existing bus and the reference — it is a link. The dimension of the matrix does not change, since no new voltage has appeared. But a link closes a loop, and once a loop exists current redistributes throughout the network. Every single entry of the matrix changes.
Cross-classifying by whether the far end is the reference node gives the four cases the algorithm is normally stated in.
| Type | Element \(Z_b\) connects | Kind | Effect on the matrix |
|---|---|---|---|
| 1 | New bus \(p\) → reference | Branch | Order \(n \to n+1\); new row and column are zero except \(Z_{pp}=Z_b\) |
| 2 | New bus \(p\) → old bus \(q\) | Branch | Order \(n \to n+1\); new row and column copy row and column \(q\); \(Z_{pp}=Z_{qq}+Z_b\) |
| 3 | Old bus \(q\) → reference | Link | Order unchanged; every entry reduced by a Kron term |
| 4 | Old bus \(h\) → old bus \(q\) | Link | Order unchanged; every entry reduced by a Kron term |
A fifth case can be imagined — an element joining two buses that are both new. It is not a case the algorithm handles, and it does not need to be. Such an element would create an island with no connection to the reference, so the partial network would have a singular admittance matrix and no bus impedance matrix at all. The remedy is to choose the order of addition so that the situation never arises, which is always possible for a connected network: add elements outwards from the reference, so that each new bus arrives already attached to something.
The same requirement fixes the very first step. Before anything is added there are no buses, so the first element must be of Type 1 — some element connected to the reference, in practice a generator's subtransient reactance or a shunt. If a network has no element touching the reference at all, \(\mathbf{Z}_{bus}\) does not exist, exactly as Example 1 of Chapter 16 showed from the other direction.
Type 1 — A Branch from a New Bus to the Reference
An impedance \(Z_b\) is connected between the reference and a bus \(p\) that did not previously exist. The partial network had \(n\) buses; it now has \(n+1\).
Ask what happens when a current \(I_p\) is injected at the new bus while every old injection is held at zero. The only path away from bus \(p\) is through \(Z_b\) to the reference; the old network is reached only by way of the reference node, which is the common return for everything and carries no potential difference of its own. So none of the injected current enters the old network, and none of the old bus voltages moves:
The voltage of the new bus itself is the drop across the single element it owns, \(V_p = Z_b I_p\), so \(Z_{pp}=Z_b\). Conversely an injection at any old bus \(q\) drives current round the old network and returns it through the reference; bus \(p\) is connected to that reference through \(Z_b\) but carries no current, so no drop appears across \(Z_b\) and \(V_p = 0\) — confirming \(Z_{pq}=0\) from the other side and preserving symmetry. The old entries are untouched, since the old network is electrically unchanged.
The order rises by one. The bordering row and column are entirely zero apart from the corner, which holds the branch impedance itself.
The zeros are worth pausing over, because they are the only zeros that will ever appear in a \(\mathbf{Z}_{bus}\) built this way, and they are temporary. As soon as a later element ties bus \(p\) to the rest of the system, the link modifications of Sections 17-6 and 17-7 fill them in. A zero transfer impedance in a finished matrix would mean two parts of the network that cannot influence one another at all.
Type 2 — A Branch from a New Bus to an Old Bus
Now \(Z_b\) joins a new bus \(p\) to an existing bus \(q\). Again inject \(I_p\) at \(p\) with all old injections zero, and follow the current. It has exactly one route: through \(Z_b\) into bus \(q\), and from there into the old network. As far as the old network can tell, a current \(I_p\) has been injected at bus \(q\) and nothing else has changed. Its own equations therefore give, for every old bus \(i\),
The new column is a copy of column \(q\), and by symmetry the new row is a copy of row \(q\). This is the single most useful fact in the whole algorithm: a bus reached through a radial branch sees the network exactly as its parent does.
Only the corner entry needs separate work. The voltage at \(p\) is the voltage at \(q\) plus the drop along the new element, and the whole of \(I_p\) flows through that element:
The order rises by one; the old block is unchanged; the border reproduces row and column \(q\) and the corner adds \(Z_b\) to \(Z_{qq}\).
Type 3 — A Link from an Old Bus to the Reference
The element \(Z_b\) now runs from an existing bus \(q\) to the reference. No new bus appears, so the matrix keeps its order — but the element closes a loop, current redistributes, and every entry must change. The trick that handles this, and that will handle Type 4 as well, is to convert the hard case into the easy one and then remove the scaffolding.
Step one. Pretend for a moment that the far end of \(Z_b\) is not the reference but a new bus, numbered \(n+1\). That is a Type-2 addition, and Section 17-5 gives its result immediately: the augmented matrix of order \(n+1\) has
Step two. Now impose what is actually true: that node \(n+1\) is the reference, which is to say \(V_{n+1}=0\). The augmented system reads \(V_i = \sum_{k=1}^{n+1} Z_{ik}I_k\) for every \(i\), and its last equation with \(V_{n+1}=0\) determines the fictitious injection:
The bracket is the new matrix. It is the Kron reduction of Chapter 16 all over again, applied to \(\mathbf{Z}\) instead of \(\mathbf{Y}\) — which is not a coincidence but the same algebra: a variable is constrained to zero and eliminated, and the price is a rank-one correction spread over every remaining entry.
Written out with the border substituted, \(\;Z_{ij}^{\,act} = Z_{ij} - \dfrac{Z_{iq}Z_{qj}}{Z_{qq}+Z_b}\). The order is unchanged; row and column \(n+1\) are discarded once the correction is applied; symmetry is preserved because the correction term is symmetric in \(i\) and \(j\).
Two sanity checks confirm the formula behaves. If \(Z_b \to \infty\) the new element is an open circuit, the denominator grows without bound, the correction vanishes and the matrix is unchanged — as it must be. If \(Z_b \to 0\) the bus \(q\) is bolted to the reference, and the correction reduces \(Z_{qq}\) to \(Z_{qq}-Z_{qq}^2/Z_{qq}=0\), which is right: a bus tied solidly to the reference can develop no voltage no matter what is injected into it. Every other diagonal is reduced too, because a new path to the reference always makes the network stiffer.
Type 4 — A Link Between Two Old Buses
This is the case that closes loops inside the network, and it is the one that occurs most often, because the branches of a spanning tree are always outnumbered by the links that complete the real topology. An impedance \(Z_b\) is connected between two existing buses \(h\) and \(q\).
Let \(I_b\) be the current the new element carries from bus \(q\) to bus \(h\). To the old network — which does not know the element exists — this looks like two extra injections: \(+I_b\) at bus \(h\) and \(-I_b\) at bus \(q\). Superposing them on whatever else is injected,
The column of coefficients multiplying \(I_b\) is therefore the difference of columns \(h\) and \(q\), and this already tells us what the border of the augmented matrix must be. What remains is the equation that determines \(I_b\) itself, and it comes from the element's own Ohm's law. The current flows from \(q\) to \(h\) through \(Z_b\), so the drop across it is \(V_q - V_h = Z_b I_b\); equivalently the quantity
Substituting the expressions for \(V_h\) and \(V_q\) from the boxed equation above and collecting terms in \(I_b \equiv I_{n+1}\):
The row is the difference of rows \(h\) and \(q\), matching the column found earlier, so the augmented matrix is symmetric as required. Its corner entry has a clean interpretation: \(Z_{hh}+Z_{qq}-2Z_{hq}\) is the Thevenin impedance the network presents between buses \(h\) and \(q\), and adding \(Z_b\) gives the total impedance around the newly formed loop. Finally, imposing \(V_{n+1}=0\) — the statement that the element is genuinely connected — and eliminating node \(n+1\) exactly as in Section 17-6 gives the answer.
Build the border \(Z_{i,n+1}=Z_{ih}-Z_{iq}\) and the corner \(Z_{n+1,n+1}=Z_{hh}+Z_{qq}-2Z_{hq}+Z_b\), apply the Kron correction to every pair \((i,j)\), then delete row and column \(n+1\). The order of the matrix is unchanged.
The Complete Procedure, and Modifying a Finished Matrix
Assembling the rules gives a procedure that can be carried out on paper for a small system and coded in a few dozen lines for a large one.
| Step | Action | Reason |
|---|---|---|
| 1 | Draw the per-unit impedance diagram; number the buses and identify the reference | Chapter 4 supplies the common base; the reference is the neutral or ground bus |
| 2 | List the elements in an order in which every new bus arrives attached to something already present | Prevents the impossible fifth case and keeps every partial network referenced |
| 3 | Start with a Type-1 element | Nothing else can be first; without it the partial network has no reference connection |
| 4 | Add all remaining branches (Types 1 and 2) until every bus exists | Branch additions are cheap: they only border the matrix, leaving old entries alone |
| 5 | Add the links (Types 3 and 4) one at a time | Each closes one loop; the Kron correction spreads its effect over every entry |
| 6 | Check symmetry, and check one row against \(\mathbf{Y}_{bus}\mathbf{Z}_{bus}=\mathbf{1}\) | An arithmetic slip in a link correction propagates to everything after it |
Steps 4 and 5 amount to building a spanning tree first and then closing its loops. Nothing forces that order — the rules are valid in any admissible sequence — but it minimises the number of expensive link corrections applied to matrices that are still growing.
A few cheap checks catch most errors. The matrix must be symmetric at every stage. For a network of pure reactances with no series capacitors, every entry must come out as \(+j(\text{positive})\). The diagonal entry of a bus must never be smaller in magnitude than any transfer impedance in its own row, because injecting at a bus raises that bus more than it raises any other. And adding a link can only ever reduce a driving-point impedance, since a new path to the rest of the system makes the network stiffer, never softer.
The second half of this section is where the algorithm repays the effort spent learning it. Once \(\mathbf{Z}_{bus}\) exists, changes to the network are handled by the very same link rules — no rebuilding is needed.
Connecting \(-Z_b\) in parallel with \(Z_b\) gives an equivalent admittance \(1/Z_b + 1/(-Z_b) = 0\), an open circuit. The pair is electrically absent, so the network that results is the original one with the element removed. The same trick with \(q =\) reference removes a shunt.
Changing an element rather than removing it is the same idea with one more line of algebra. To replace \(Z_b\) by \(Z_b'\), add a link \(Z_p\) in parallel such that the combination has the desired value:
Two cautions apply. Removing the only element that connects a bus to the rest of the system isolates that bus; its driving-point impedance becomes infinite and the formula fails, signalled by a denominator \(Z_{hh}+Z_{qq}-2Z_{hq}+Z_b\) that has gone to zero. That is not a defect of the method but a correct report that the modified network has no \(\mathbf{Z}_{bus}\). And the corrections are exact, not approximate, so a sequence of outages may be applied one after another with no accumulation of modelling error — only of rounding, which is why link corrections should be carried to more digits than the final answer needs.
Thevenin Equivalents and the Handoff to Fault Analysis
Section 17-1 identified \(Z_{kk}\) as the Thevenin impedance seen at bus \(k\). That identification, combined with superposition, converts \(\mathbf{Z}_{bus}\) into a complete fault-calculation engine, and it is the reason the matrix is built at all.
Consider a network operating normally, with known prefault bus voltages \(V_i^{(0)}\) — from a load flow, or in hand calculation from the flat assumption \(V_i^{(0)}=1.0\angle 0^\circ\). A three-phase fault now occurs at bus \(k\) through a fault impedance \(Z_f\), drawing a current \(I_f\) out of that bus and into the ground.
Split the faulted network into two by superposition. The first component is the prefault network, with its sources and its voltages \(V_i^{(0)}\). The second is the same passive network with all sources dead and a single injection of \(-I_f\) at bus \(k\) — the fault current, drawn out of the bus, is a negative injection. The passive network is described by \(\mathbf{Z}_{bus}\), so the change in every bus voltage follows immediately:
Only one unknown remains, and the faulted bus supplies the equation that fixes it. At bus \(k\) the voltage during the fault is the drop across the fault impedance, \(V_k = Z_f I_f\), while the same superposition gives \(V_k = V_k^{(0)} - Z_{kk}I_f\). Equating and solving:
Everything needed for a fault at bus \(k\) sits in column \(k\) of \(\mathbf{Z}_{bus}\). Setting \(Z_f=0\) gives the solid or bolted fault, the severest case and the one used for equipment ratings.
The line currents follow at once, because the bus voltages are now all known. For a line between buses \(i\) and \(j\) of series impedance \(z_{ij}\),
and the sum of the currents arriving at bus \(k\) along all its lines must equal \(I_f\), which is a complete check on the arithmetic. Example 4 carries it out.
One number in this scheme is used so often that it has its own name. With a flat prefault voltage of \(1.0\) per unit and a bolted fault, \(I_f = 1/Z_{kk}\) per unit, so the apparent power delivered into the fault is
This is the fault level a circuit breaker at that bus must interrupt, and Chapter 25 uses it directly to select breaker ratings. A small \(Z_{kk}\) means a strong bus — good for voltage regulation, expensive in switchgear — and the tension between those two consequences runs through the whole of system planning.
Everything above is written for a balanced three-phase fault, where a single positive-sequence network suffices. Chapter 22 decomposes an unbalanced fault into symmetrical components, Chapter 23 constructs a separate positive-, negative- and zero-sequence network, and Chapter 24 shows that each of those networks has its own bus impedance matrix, built by the very algorithm of this chapter. The three diagonal entries \(Z_{kk}^{1}, Z_{kk}^{2}, Z_{kk}^{0}\) at the faulted bus are then combined — in series for a single line-to-ground fault, in parallel for a line-to-line fault — to give the answer. The algorithm is used three times over; only the interconnection at the end changes.
Worked Examples
Examples 1 to 3 build one network in stages, using every modification type in turn; Examples 4 to 6 then put the finished matrix to work. The network is the one in the figure, all values per unit on a common base, resistance neglected.
Problem. Add element \(a\) (\(j0.20\), bus 1 to reference) and then element \(b\) (\(j0.10\), bus 1 to bus 2). Form \(\mathbf{Z}_{bus}\) and verify it by inverting the corresponding \(\mathbf{Y}_{bus}\).
Solution. Element \(a\) is Type 1 into an empty network, so the matrix is the single entry \(\mathbf{Z}_{bus}=[\,j0.20\,]\).
Element \(b\) brings the new bus 2 off the existing bus 1, which is Type 2 with \(q=1\). The new column copies column 1 and the new diagonal adds \(Z_b\):
Read the entries physically before checking them. Bus 2 hangs off bus 1 through \(j0.10\), and bus 1 reaches the reference through \(j0.20\). Inject one unit at bus 2: the current runs through both elements in series, so \(V_2 = j0.30\) — the diagonal. It also raises bus 1 by the drop across \(j0.20\) alone, giving \(V_1 = j0.20\) — the transfer impedance. Inject instead at bus 1: the current returns through \(j0.20\) and none of it flows in \(j0.10\), so bus 2 floats at the potential of bus 1, again \(j0.20\). Symmetry is not an accident here; it is visible in the circuit.
Now the check. By the rules of Chapter 16, with \(1/j0.20=-j5\) and \(1/j0.10=-j10\),
Problem. Add element \(c\), an impedance \(j0.25\) from the existing bus 2 to the reference. Update \(\mathbf{Z}_{bus}\).
Solution. This is Type 3 with \(q=2\). Build the temporary border from column 2 of the present matrix and form the corner:
Apply \(Z_{ij}^{\,act}=Z_{ij}-Z_{i3}Z_{3j}/Z_{33}\). Each correction term is a product of two purely imaginary numbers divided by a third, so keep track of the signs carefully: \((j\alpha)(j\beta)/(j\gamma) = -\alpha\beta/(j\gamma) = j\,\alpha\beta/\gamma\).
Both diagonals have fallen, as promised in Section 17-6: the new path to the reference stiffens the network at every bus, not only at bus 2. The check by inversion is quick — the admittance matrix is now \(\begin{bmatrix} -j15 & j10\\ j10 & -j14\end{bmatrix}\) with determinant \(-210+100=-110\), giving \(Z_{11}=-j14/(-110)=j0.127273\) and \(Z_{22}=-j15/(-110)=j0.136364\), both confirmed.
Problem. Add element \(d\) (\(j0.30\), new bus 3 from bus 2) and then element \(e\) (\(j0.40\), bus 1 to bus 3). Obtain the final \(\mathbf{Z}_{bus}\).
Solution. Element \(d\) is Type 2 with \(q=2\): copy row and column 2, and set \(Z_{33}=Z_{22}+j0.30 = j0.136364+j0.30 = j0.436364\).
Element \(e\) is Type 4 with \(h=1\) and \(q=3\). The temporary column is the difference of columns 1 and 3:
The negative entries in the temporary column are expected and carry meaning: injecting a unit current into the loop raises bus 1 relative to bus 3 but depresses buses 2 and 3 relative to it. Now correct every entry with \(Z_{ij}^{\,act}=Z_{ij}-Z_{i4}Z_{4j}/Z_{44}\), again using \((j\alpha)(j\beta)/(j\gamma)=j\alpha\beta/\gamma\):
Every entry is positive imaginary, the matrix is symmetric, each diagonal exceeds every off-diagonal in its own row, and each diagonal has fallen from the pre-link value — the four structural checks of Section 17-8 all pass. Note also how much the link changed \(Z_{33}\): from \(j0.436\) to \(j0.284\), because bus 3 gained a second route to the sources.
Problem. A bolted three-phase fault occurs at bus 3 of the completed network. Prefault voltages are \(1.0\angle0^\circ\) per unit everywhere. Find the fault current, the voltage at every bus during the fault, the current in each line, and the short-circuit level at bus 3 on a \(100\) MVA base.
Solution. With \(Z_f=0\) and \(V_3^{(0)}=1.0\),
Now sweep column 3 of the matrix through \(V_i = V_i^{(0)} - Z_{i3}I_f\):
The faulted bus collapses to zero, as a bolted fault demands, and that identity is the arithmetic check on \(Z_{33}\) and \(I_f\) together. The healthy buses sag to \(62\%\) and \(59\%\) of nominal — bus 2 lower than bus 1 because it is electrically nearer the fault.
The line currents follow from the voltages:
The two lines entering bus 3 carry \(1.557+1.967=3.524\) per unit, which is \(I_f\) to within rounding — the Kirchhoff check closes. Finally,
so a breaker at bus 3 must interrupt a symmetrical fault level of about \(353\) MVA. Chapter 25 refines this into an asymmetrical rating.
Problem. Line \(e\) between buses 1 and 3 is switched out for maintenance. Update \(\mathbf{Z}_{bus}\) without rebuilding it, and comment on the effect at bus 3.
Solution. Apply the Type-4 modification between buses 1 and 3 with \(Z_b = -j0.40\), starting from the completed matrix of Example 3. The temporary column is the difference of columns 1 and 3 of that matrix:
The corner is now negative imaginary, and each correction therefore adds to the entry it modifies rather than subtracting — precisely what removing a path should do:
The result is exactly the matrix of Example 3 before the link was added, which is the strongest possible confirmation that the negative-impedance device is exact and not an approximation. The consequence for operations is read off the diagonal: \(Z_{33}\) rises from \(j0.284\) to \(j0.436\), so the fault level at bus 3 falls from \(353\) MVA to \(100/0.436364 = 229\) MVA, and the bus becomes correspondingly weaker — a larger voltage dip for the same disturbance.
Problem. Instead of removing line \(e\), a second identical circuit of \(j0.40\) is strung between buses 1 and 3. Update \(\mathbf{Z}_{bus}\) and verify the result against a direct calculation with a single line of \(j0.20\).
Solution. Type 4 again, \(h=1\), \(q=3\), \(Z_b=+j0.40\), starting from the completed matrix of Example 3. The temporary column is therefore identical to the one used in Example 5 — \(j0.018604\), \(-j0.023256\), \(-j0.176744\) — since only the sign of \(Z_b\) has changed. The corner is
Check independently. Two circuits of \(j0.40\) in parallel are a single \(j0.20\), so rebuild the network with element \(e\) replaced by \(j0.20\). Its admittance matrix is
and inverting it returns \(Z_{11}=j0.125000\), \(Z_{13}=j0.112500\), \(Z_{33}=j0.231250\), matching entry for entry. The fault level at bus 3 now rises to \(100/0.23125 = 432\) MVA — the price of the stronger bus that a second circuit buys, and the reason reinforcement studies and switchgear studies are never done independently of one another.
Chapter Summary
\(\mathbf{V}_{bus}=\mathbf{Z}_{bus}\mathbf{I}_{bus}\), with \(\mathbf{Z}_{bus}=\mathbf{Y}_{bus}^{-1}\) whenever something connects the network to the reference.
\(Z_{ik}=V_i/I_k\) with all other injections zero — open-circuit driving-point and transfer impedances.
Symmetric and completely full; a zero entry would mean two parts of the network that cannot influence each other.
A branch brings a new bus and only borders the matrix; a link closes a loop and changes every entry.
New row and column copy row and column \(q\) (all zeros if \(q\) is the reference); \(Z_{pp}=Z_{qq}+Z_b\).
Border \(Z_{ih}-Z_{iq}\), corner \(Z_{hh}+Z_{qq}-2Z_{hq}+Z_b\), then Kron-eliminate the fictitious node.
Remove an element by adding a link of \(-Z_b\); change one by adding \(Z_p=Z_bZ_b'/(Z_b-Z_b')\).
\(I_f=V_k^{(0)}/(Z_{kk}+Z_f)\) and \(V_i=V_i^{(0)}-Z_{ik}I_f\); SC MVA \(=\) base MVA \(/|Z_{kk}|\).
Practice Problems
All impedances are per unit on a common base and resistance is neglected unless stated. Carry link corrections to at least six decimal places; the errors they make are the errors that survive into every later entry.
- A generator of subtransient reactance \(j0.15\) is connected at bus 1, a transformer of \(j0.10\) joins bus 1 to a new bus 2, and a second generator of \(j0.25\) is connected at bus 2. Build \(\mathbf{Z}_{bus}\) by the algorithm, naming the type of each of the three additions, and check it by inverting \(\mathbf{Y}_{bus}\).
- Starting from \(\mathbf{Z}_{bus}=\begin{bmatrix} j0.20 & j0.10\\ j0.10 & j0.30\end{bmatrix}\), add a line of \(j0.25\) between buses 1 and 2 and obtain the new matrix. Verify that both diagonal entries have decreased and explain why they must.
- Show from the Type-4 formula that when a link of impedance \(Z_b\) is added between two buses whose voltages are always equal — that is, \(Z_{ih}=Z_{iq}\) for every \(i\) — the matrix does not change at all. What network condition produces that situation, and does any current flow in the new element?
- A four-bus network has elements: \(j0.20\) from bus 1 to reference, \(j0.10\) from bus 1 to bus 2, \(j0.30\) from bus 2 to bus 3, \(j0.15\) from bus 3 to reference and \(j0.25\) from bus 2 to bus 4. Build \(\mathbf{Z}_{bus}\), stating the type of each addition and the order you chose.
- For the completed network of Section 17-10, compute the fault current and all three bus voltages for a fault at bus 1 through a fault impedance of \(Z_f=j0.05\). Compare the fault level at bus 1 with that at bus 3 and account for the difference.
- The line of \(j0.10\) between buses 1 and 2 in the running example is to be replaced by one of \(j0.05\). Find the impedance of the link that effects the change, apply the Type-4 modification, and state the new value of \(Z_{22}\).
- Prove that \(Z_{hh}+Z_{qq}-2Z_{hq}\) is the Thevenin impedance the network presents between buses \(h\) and \(q\), by injecting \(+1\) at \(h\) and \(-1\) at \(q\) and computing \(V_h-V_q\). Hence explain why the Type-4 denominator is the impedance of the loop the new link completes.
- A network is built entirely of branches, with no links at all. Show that its \(\mathbf{Z}_{bus}\) satisfies \(Z_{ik}=Z_{kk}\) whenever bus \(k\) lies on the path from the reference to bus \(i\), and explain the result in terms of where current does and does not flow in a radial system.