Skip to main content
DD-CAT IDE logoDD-CAT IDE

Article · Tech Insights

Kirchhoff's Laws as a Fairy Tale: KCL, KVL, and the Negative Signs of Direction

Favorite

KCL and KVL are the foundation of circuit analysis, but what actually trips people up is never the formulas — it's reference directions, supply polarity, and knowing when they can't be applied directly. I use a forest water-channel fairy tale to explain the two iron rules: at a splitter post, inflow equals outflow (KCL), and around any loop the water level returns to where it started (KVL). A 12 V/6 V three-branch worked example is then solved by hand to 1.6 A, −1.2 A, and −0.4 A and checked with power conservation, followed by four of the easiest pitfalls to fall into (including why you can't blindly apply KVL to a transformer's magnetic core loop).

ShareWeiboXLinkedIn

Key points

Kirchhoff's laws are the two iron rules of circuit analysis: KCL states that at any node the sum of currents flowing in equals the sum flowing out; KVL states that the algebraic sum of voltage rises and falls around any closed loop is zero. In practice, the key is a self-consistent reference direction — a negative result only means the actual direction is opposite the assumption, not that a mistake was made; going from "−" to "+" across a source is a rise, and crossing a resistor with the current is a fall. A worked 12 V/6 V three-branch example yields branch currents of 1.6 A, −1.2 A, and −0.4 A with a node voltage of 7.2 V, verified by power conservation (19.2 W delivered). Note that loops with changing magnetic flux (transformers, switching-supply power loops, ground loops) cannot use KVL directly, and at high frequencies both laws are only approximations.

This is the third installment of the "Black-Box Castle" series: the first two covered how to collapse a complex network into just two components (Thévenin's theorem, Norton's theorem); this one goes back to an even more fundamental layer — the two iron laws no circuit can escape: Kirchhoff's Current Law (KCL) and Kirchhoff's Voltage Law (KVL).

The formulas contain only a couple of symbols, and many people can recite them flawlessly, yet the moment they do a hand calculation something goes wrong: arrows labeled backwards, supply rises and drops mixed up, loop direction switched midway, and the final numbers don't match. The problem has never been the formulas — it's the sign conventions and the boundaries of the knowledge. This article clarifies both once and for all.

The Story: The Forest's Water Channels

Ari the little fox isn't fetching water this time; he's building a network of water channels for three households in the forest: water is drawn from the castle and distributed to the three homes along the way. The channel network has splitter posts, loops, and elevation changes.

Grandpa Copper Nail says: laying the channels only requires obeying two iron laws; everything after that is just arithmetic.

Iron Law #1 (KCL): At a Splitter Post, What Flows In Must Flow Out

Water can't appear out of nowhere or vanish into nowhere. So at any splitter post (a node in the circuit), the water flowing in must equal the water flowing out:

∑kIk=0(inflow positive, outflow negative)\sum_{k} I_k = 0 \qquad\text{(inflow positive, outflow negative)}

Or, more plainly:

∑Iin=∑Iout\sum I_{\text{in}} = \sum I_{\text{out}}

Two points are the easiest for beginners to get fuzzy on:

  • A "node" is an entire piece of conductor, not just a dot on paper. The whole copper pour connected by a wire, an entire ground plane — all count as one and the same node (a so-called generalized node). When a schematic draws several ground symbols, physically they're the same post.
  • Current must have a direction before you can write an equation. The direction is the reference direction we ourselves assume — pick anything first; a negative result simply means the actual direction is opposite to your assumption. The physics is perfectly fine.

Figure 1: Four branches at node A; green arrows show inflow (i1, i4), red arrows show outflow (i2, i3); inflow equals outflow

Figure 1: Green arrows = assumed inflow, red arrows = assumed outflow. However much flows out, that's how much must flow in; when written as the algebraic sum ∑I=0\sum I = 0, as long as the entire article consistently takes "inflow as positive", the signs won't get scrambled.

Iron Law #2 (KVL): Walk a Full Loop Back to the Start, and the Water Level Must Return

Walking around any closed water route, you'll climb and you'll descend, but when you return to the starting point, the elevation is necessarily the elevation you started with: the total rise equals the total fall:

∑kUk=0(along the loop direction: rise positive, fall negative)\sum_{k} U_k = 0 \qquad\text{(along the loop direction: rise positive, fall negative)}

To actually keep the books, just watch two things:

  • Power sources: walking from "−" to "+" is a rise (+U); walking the other way is a fall (−U);
  • Resistors: crossing a resistor in the direction of current is a fall (−IR); crossing against the current is a rise (+IR).

A one-line mnemonic: downhill with the water, uphill against it.

Figure 2: Left, a single-loop circuit (12 V, 2 Ω, 4 Ω, clockwise current i) with the loop direction marked by a red dashed line; right, itemized bookkeeping: +12 V, −2i, −4i, sum is zero, giving i = 2 A

Figure 2: Walk clockwise around the red dashed line once and write down every potential change: the source rises +12+12, the two resistors each fall −2i-2i and −4i-4i; returning to the start must bring the total to zero, so i=2 Ai = 2\,\mathrm{A}.

KVL has another often-overlooked strength: it holds for any closed path, not just "meshes". You can go around a big loop, a small loop, or even a figure "8" — as long as it's closed, the algebraic sum is zero.

The Two Iron Laws Together Can Solve Any Circuit

For a connected network with bb branches and nn nodes, the total number of independent equations is exactly bb:

Law Number of independent equations Where it applies
KCL n−1n-1 Nodes (including generalized nodes)
KVL b−n+1b-n+1 Loops (meshes)

Why is KCL one short? Because the currents flowing into all nodes necessarily sum to 0 — the last node's equation is a linear combination of all the previous ones, so writing it down is pointless. Likewise, for KVL writing just the "meshes" is enough; if you also write every larger loop you'll pile up a bunch of dependent equations that you can't solve cleanly and that are easy to get wrong.

The Trial: 12 V and 6 V Fight Over One Node

Three branches hang off node A, all connected down to node B below (take VB=0V_B = 0):

  • Left branch: a 12 V12\,\mathrm{V} source (+ up) in series with R1=3 ΩR_1 = 3\,\Omega;
  • Middle branch: R2=6 ΩR_2 = 6\,\Omega;
  • Right branch: a 6 V6\,\mathrm{V} source (+ up) in series with R3=3 ΩR_3 = 3\,\Omega.

All three currents are assumed to flow from B to A (upward). Write the equations under that assumption:

KCL at node A (all three branches point up, i.e., all flow into A):

i1+i2+i3=0i_1 + i_2 + i_3 = 0

KVL for the left loop (clockwise: start at B, go up through the source, right through R1R_1, down through R2R_2, back to B):

+12−3i1+6i2=0+12 - 3i_1 + 6i_2 = 0

Note the third term: i2i_2 is assumed upward, and we pass downward through R2R_2 — against the current — so it's a rise, taken as +6i2+6i_2.

KVL for the right loop (clockwise: up through R2R_2, right along the top, down through R3R_3 and the 6 V source, left back to B):

−6i2+3i3−6=0-6i_2 + 3i_3 - 6 = 0

Item-by-item bookkeeping: this time R2R_2 is traversed upward with i2i_2, a fall of −6i2-6i_2; R3R_3 is traversed downward against i3i_3, a rise of +3i3+3i_3; the 6 V source goes from "+" to "−", a fall of −6-6.

Solving the three equations together (just substitute i1i_1 and i3i_3 from the last two into the first):

i1=1.6 A,i2=−1.2 A,i3=−0.4 Ai_1 = 1.6\ \mathrm{A},\qquad i_2 = -1.2\ \mathrm{A},\qquad i_3 = -0.4\ \mathrm{A}

The node voltage comes out for free:

VA−VB=12−3×1.6=7.2 VV_A - V_B = 12 - 3\times 1.6 = 7.2\ \mathrm{V}

Verification (don't skip this step):

  • KCL: 1.6+(−1.2)+(−0.4)=01.6 + (-1.2) + (-0.4) = 0 ✓
  • Left KVL: 12−3×1.6+6×(−1.2)=12−4.8−7.2=012 - 3\times1.6 + 6\times(-1.2) = 12 - 4.8 - 7.2 = 0 ✓
  • Right KVL: −6×(−1.2)+3×(−0.4)−6=7.2−1.2−6=0-6\times(-1.2) + 3\times(-0.4) - 6 = 7.2 - 1.2 - 6 = 0 ✓

How do you read the result? i2i_2 and i3i_3 are negative, meaning their actual direction is opposite to our assumption — they flow downward, at 1.2 A and 0.4 A respectively. Physically this is perfectly normal: the middle 6 Ω branch has node A at a higher potential (7.2 V) than B, so current naturally flows from A to B; the right-side 6 V source is "pushed against" by the 7.2 V, and current is forced back into it (it's charging / absorbing power).

Verify power conservation once more (a direct consequence of KCL + KVL):

Component Power
12 V source delivers 12×1.6=19.2 W12\times1.6 = 19.2\ \mathrm{W}
6 V source absorbs 6×0.4=2.4 W6\times0.4 = 2.4\ \mathrm{W}
R1R_1 dissipates 1.62×3=7.68 W1.6^2\times3 = 7.68\ \mathrm{W}
R2R_2 dissipates 1.22×6=8.64 W1.2^2\times6 = 8.64\ \mathrm{W}
R3R_3 dissipates 0.42×3=0.48 W0.4^2\times3 = 0.48\ \mathrm{W}

Delivered 19.2 W19.2\ \mathrm{W}; where it goes: 2.4+7.68+8.64+0.48=19.2 W2.4 + 7.68 + 8.64 + 0.48 = 19.2\ \mathrm{W} ✓ — exact to the last decimal. After solving a circuit, reconcile the power once and you'll catch nearly every sign error.

Figure 3: Three parallel branches between nodes A and B (12 V in series with 3 Ω, 6 Ω, 6 V in series with 3 Ω); all three reference currents assumed upward; solving gives i1 = 1.6 A, i2 = −1.2 A, i3 = −0.4 A, VAB = 7.2 V

Figure 3: All three currents are first assumed upward. The computed i2i_2 and i3i_3 come out negative, meaning they actually flow downward — not a mistake; the reference directions are opposite.

4 Cautions (each one a pit I've stepped in)

1. You can label reference directions however you like, but stay consistent throughout

For the same wire, labeling "upward" or "downward" are both fine — the computed number just differs by a sign. The negative sign isn't an error; it's information: it tells you the actual direction is opposite to your assumption. What's truly fatal is switching direction midway: if the equation was set up assuming "upward" and you then plug in numbers as if "downward", it's guaranteed wrong.

Figure 4: Two labelings of the same wire: reference direction A→B gives i = +2 A; B→A gives i = −2 A; both actually describe 2 A flowing from A to B

Figure 4: The left and right computations describe the same current. Changing the reference direction doesn't change the answer — it only flips the sign. But never switch midway.

2. A source's "rise/fall" is the easiest thing to get backwards

Going from "−" to "+" is a rise; going from "+" to "−" is a fall. And it depends only on the direction you walk, not on the current direction — the voltage across a voltage source is dictated by the source itself, not by the current. This is the single highest-failure-rate spot in KVL.

3. In loops with changing magnetic flux, KVL can't be applied directly

This is a point almost no introductory textbook emphasizes, but people who build power supplies run into it every day. Once magnetic flux is accounted for, the algebraic sum of voltages around a closed loop is not zero, but:

∑kUk=−dΦdt\sum_k U_k = -\frac{d\Phi}{dt}

So KVL cannot be applied as-is in these places:

  • Transformers / coupled inductors: primary and secondary each form their own loop, and the magnetic core couples the two sides together;
  • The power loop in a switching supply: the small loop formed by the MOSFET, inductor, and diode, where at the moment of commutation di/dtdi/dt is huge and the induced voltage across parasitic inductance makes the oscilloscope waveform look "unconserved";
  • Ground loops: when an alternating magnetic field passes between two grounding points, an induced EMF appears on the ground conductor — this is the source of "ground-loop noise".

KVL's standard premise is a lumped-element circuit: every component's dimensions are far smaller than the signal wavelength, the magnetic field is confined inside inductors, and the electric field is confined inside capacitors.

4. At high frequencies and long lines, both iron laws are only approximations

Once a trace length becomes comparable to the wavelength (engineering rule of thumb: beyond λ/10\lambda/10), the distribution of voltage and current along the line can't be ignored, and you must switch to transmission-line equations. KCL/KVL aren't wrong, but the implicit assumption that "everywhere on a node is at the same potential" no longer holds. This is why on a 100 MHz board, two points on the same ground trace can differ by tens of millivolts.

A Little Exercise for Yourself

  1. Reverse the 6 V source in the trial (+ down) and recompute i1i_1, i2i_2, i3i_3, and VAV_A. (Hint: the −6-6 in the right-loop KVL becomes +6+6.)
  2. Write only the KVL of the two meshes plus the KCL of one node, solve for i1i_1, i2i_2, i3i_3, then verify once more with the outer-loop KVL "around the big loop": 12−3i1+3i3−6=012 - 3i_1 + 3i_3 - 6 = 0 — check whether it also holds.
  3. Think about this: why can both the "inflow positive" and "outflow positive" conventions work, yet mixing them yields useless equations like 0 = 0?

Remembering the two iron laws is enough: at a splitter post, in equals out; walk a full loop and you return to where you started. All that's left is labeling directions clearly, substituting signs correctly, and reconciling the power when you're done.

Get new articles by email

Enter your email — we notify you about new articles and releases (unsubscribe anytime).

Related reading

Tech Insights

MOS 管参数速查:水闸讲清工作区、损耗、小信号、SOA 与选型折中(附数据手册读法)

MOS 管的数据手册动辄二十页,真正决定设计成败的只有十几行和几条曲线。这篇用「城堡水闸」把阈值电压、过驱动、R_DS(on)、跨导、Qg、米勒平台串成一条线,再单独讲清两件最容易含糊的事:饱和区的小信号模型(gm、ro、Cgs、Cgd 到底怎么来)和安全工作区 SOA(为什么功率没超却会炸)。配七张手绘图(含选型四象限图)、一个 30 V/5 mΩ 的损耗与结温迭代算例、两颗管的 FOM 与损耗对比,最后是数据手册的三看三不看——包括「标称 60 A 实际只能用 20 A」。

Tech Insights

童话版诺顿定理:泉眼、暗渠、两个公式,外加 6 条注意事项

诺顿定理其实是戴维南的「并联兄弟」,但很多人只会背不会用,还容易把电流源方向标反、真去短接量短路电流。我用同一个黑箱城堡的第二个童话把三件事串起来:短接出口量流量得 I_N、熄灯量内阻得 R_N、整座城堡折叠成一个恒定泉眼并联一条暗渠;再补上电流分流公式、12 V 分压器的数值试炼、与戴维南的互换,以及 6 条实战注意事项。

Tech Insights

用一个黑箱城堡讲戴维南定理:童话版 Vth 与 Rth,附公式推导和三个坑

带新人时反复发现「戴维南定理会背不会用」——开路电压、内阻熄灯法、等效后算负载,全是纸面动作。我用一个黑箱童话城堡把三件事串起来:门口量水位得 Vth、让魔法源睡着得 Rth、整座城堡折叠成一台水泵加一段水管;再补上为什么它一定成立(端口 V-I 是一条直线)和最容易踩的三个坑(内部功率不能用等效电路算、非线性、负阻)。