# Calculating voltages around circuit by using Kirchhoff's voltage law and Ohm's law

I'm currently studying the textbook Fundamentals of Electric Circuits, 7th edition, by Charles Alexander and Matthew Sadiku. Chapter 2.4 Kirchhoff's Laws has the following practice problem:

Find $$\v_x\$$ and $$\v_o\$$ in the circuit of Fig. 2.24.

It seems to me that we can immediately see that $$\v_x = 10i\$$. Following Kirchhoff's voltage law, I have that $$\-70 \ \text{V} + 10i + 2(10i) - v_o = 0 \ \Rightarrow -70 \ \text{V} + 210i = v_o\$$. But then, by substitution, I get $$\-70 \ \text{V} + v_x + 2v_x - (-70 \ \text{V} + 210i) = 0 \ \Rightarrow v_x = 70i\$$. I am told that the solution is $$\v_x = 20 \ \text{V}\$$ and $$\v_o = -10 \ \text{V}\$$. What am I getting wrong here? How is this supposed to be done?

• Well, if you have any doubts about the supplied answer, it is perfectly correct and that can be seen by pure observation. Stick at it. Commented Mar 20, 2022 at 18:29
• The current direction determines the resistor voltage drop polarity. So if we assume that we have a positive voltage drop across the 10R resistor ($V_X$). We know the current direction. Thus the KVL is $-70V + 10i +2(20i) + 5i = 0V$ And if we solve this we get $i = 2A$ So $V_X = 20V$ and $V_O = -10V$ Do you see why $V_O$ is negative?
– G36
Commented Mar 20, 2022 at 19:24
• @G36 There is an error in your equation: the term 2(20i) should be 2(10i). Your result (i=2A) is correct though. Commented Mar 20, 2022 at 22:07
• @G36 Yes, I see what you mean. The resistor polarity for $v_o$ is negative to positive, but the current direction is positive to negative (counterclockwise), so it must be negative. I took this into account when I wrote $-70 \ \text{V} + 10i + 2(10i) - v_o = 0$. Thanks for taking the time to help! Commented Mar 21, 2022 at 5:38
• Good, but notice that $v_o = -5i$ thus--> $-70V +10i+2(10i)-(-5i) = 0$
– G36
Commented Mar 21, 2022 at 15:08

Let's start by establishing a ground reference. You are allowed to do this for exactly one node. (It often helps your thinking process to do this and doesn't change the circuit in any way.)

Here's my choice:

Given that, I can redraw the schematic like this:

simulate this circuit – Schematic created using CircuitLab

The left side provides three equations and three unknowns (one is an unstated VCVS current) using KCL only. The right side provides two equations and two unknowns using one KVL and one KCL equation. It can be still simpler, if you want to just compute the current and work out from there.

I can see that you've added yet another question, today. I'll finish this one now:

• From the above right-side schematic, you know that the two resistors are trapped in between $$\70\:\text{V}\$$ and $$\V_{_\text{Y}}=2\cdot\left(70\:\text{V}-V_{_\text{X}}\right)\$$. So from a voltage divider rule:$$V_{_\text{X}}=\frac{70\:\text{V}\,\cdot\,R_2+2\,\cdot\,\left(70\:\text{V}-V_{_\text{X}}\right)\,\cdot\, R_1}{R_1+R_2}$$ Solving for $$\V_{_\text{X}}\$$ finds:$$V_{_\text{X}}=70\:\text{V}\cdot\frac{2\cdot R_1+R_2}{3\cdot R_1+R_2}$$ Or, $$\50\:\text{V}\$$. Given that there is a $$\20\:\text{V}\$$ difference across $$\R_1\$$, you know there must be a $$\10\:\text{V}\$$ difference across $$\R_2\$$. The polarity of $$\V_{_\text{O}}\$$ is the opposite, so $$\V_{_\text{O}}=-10\:\text{V}\$$.

If you want to make this super-complicated, then let's start out with a labeled schematic, to start:

Note that I've chosen not to designate a ground. Everything is floating around. No idea where. (In this case, one of the node voltages will be an independent variable.)

We can analyze this using the freely available SymPy:

var('va vb vc vd v1 r1 r2 iv1 iv2')
eq1 = Eq( va/r2 + iv1, vd/r2 )
eq2 = Eq( vb/r1, iv1 + vc/r1 )
eq3 = Eq( vc/r1, iv2 + vb/r1 )
eq4 = Eq( vd/r2 + iv2, va/r2 )
eq5 = Eq( va+v1, vb )
eq6 = Eq( vd + 2*(vb-vc), vc )
ans = solve( [ eq1, eq2, eq3, eq4, eq5, eq6 ], [ va, vb, vc, vd, iv1, iv2 ] )

( ans[va] - ans[vd] ).subs( {r1:10, r2:5, v1:70} )
-10


Note that it gets the answer right, first time.

Suppose we want to know the currents:

( ans[iv1] ).subs( {r1:10, r2:5, v1:70} )
2
( ans[iv2] ).subs( {r1:10, r2:5, v1:70} )
-2


That makes sense, too.

What about the voltage across $$\R_1\$$? (In this case, $$\V_{_\text{C}}\$$ is the independent variable.)

( ans[vb] - vc ).subs( {r1:10, r2:5, v1:70} )
20


That too is right.

Just works.

• Why does R2 have its polarity made explicit but R1 does not? Is it convention to not make polarity explicit for resistors unless it's counter to the current? Commented Mar 21, 2022 at 5:44
• @ThePointer I could add that, but it is implied in the VCVS connections. No need for that part. The rest does matter with respect to any answer. But no more than that, given what's already there.
– jonk
Commented Mar 21, 2022 at 5:45

Let i be the current around the loop.

70V - 10 ohms x i - 2(10 ohms x i) - 5 ohms x i = 0

Then

70V = 35 ohms x i

And

i = 70V / 35 ohms = 2A

This immediately yields

Vx = 10 ohms x 2A = 20V

and, respecting the sign convention,

Vo = -5 ohms x 2A = -10V

By KVL lets take current inside loop as I.

-70 + Vx + 2Vx - Vo = 0
3Vx - Vo = 70 ----------- (1)


Since Vx = 10I and Vo = 5I.

By equation (1):

    30I - 5I = 70
25I = 70
I = 70/25 = 2.8 A


Now Vx = 28 V and Vo = 14 V.

• OP already stated the solution as $v_x = 20 \ \text{V}$ and $v_o = -10 \ \text{V}$. Commented Mar 25, 2022 at 9:26