If you're seeing this message, it means we're having trouble loading external resources on our website.

If you're behind a web filter, please make sure that the domains *.kastatic.org and *.kasandbox.org are unblocked.

# Circuit analysis overview

The general strategy of circuit analysis is to create and solve a system of independent equations. Written by Willy McAllister.
Circuit analysis, or solving a circuit, means figuring out voltages and currents in each element. Here's an overview of circuit analysis, with some context for the various tools and methods we use to analyze circuits.

## The general strategy

After simplifying a circuit as much as possible, all circuit analysis methods are some version of the following strategy:
• Create a set of independent equations based on the elements and circuit connections.
• Solve the system of simultaneous equations for the independent variables (voltages or currents). This often involves using techniques from linear algebra.
• Solve the remaining individual element voltages and currents.

## The methods

There are three popular circuit analysis methods. All three produce the same answer.
The first method, direct application of the fundamental laws, is quick and works very well for simple circuits. It is not particularly efficient in terms of the total amount of work required, which becomes important as circuits become more complicated.
Engineers have come up with two elegant ways to organize and streamline circuit analysis: the Node Voltage Method and the Mesh Current Method. These are general-purpose step-by-step recipes to solve a circuit. Both methods attempt to minimize the number of simultaneous equations. This efficiency has a big impact as circuit complexity grows (more and more nodes and branches). The Loop Current Method is a close relative of the Mesh method, used in certain special cases, as described in that article.
As we study the methods of circuit analysis, our example circuits are made of only resistors and ideal sources. This keeps the math relatively simple, allowing us to concentrate on the strategies for solving a circuit.

### A final note: decomposing problems

Circuit analysis can be an involved process for complicated circuits. An important engineering skill is learning how to break down complicated problems into simpler pieces. Decomposing problems may seem slow at first, and you may feel impatient. However, breaking up problems into smaller steps is the heart of the engineering art. The multi-step circuit analysis methods presented next are good examples of the engineering approach to problem solving.

## Epilogue - computer simulation of circuits

The circuit simulation application $\text{SPICE}$ and many similar simulation programs are available for professional and student engineers, and anyone else interested in the subject. (search term: circuit simulator) Computer simulation is often used when solving even modestly complex circuits.

#### If I can solve a circuit with a simulation, why do I need to learn these circuit analysis methods?

It is important to learn how to analyze circuits by hand. Knowing these techniques makes short work of simple circuits. Better yet, this knowledge deepens your insight into how a circuit works, insight you don't get if you just ask a computer for the answer. When you learn circuit analysis, you develop your ability to look at a schematic and 'see' the circuit work in your mind.
Studying circuit analysis will also help you deal with the limitations and quirks of simulation programs.

## Want to join the conversation?

• Hey, pretty new here, but does the Khan Academy Electrical Engineering 'faculty' cover Thevenin and Norton equivalent circuits, or offer an explanation for how to use the SPICE/PSPICE circuit simulators? Love the stuff on here, and for some reason I find it way easier to follow than what's going on in uni right now.
• Does anybody have any good sites that have circuit analysis practice problems?
• I am having a problem solving circuits that include 3D shapes, like, there's a cube and you have a resistor on each side, if all resistors are equal, what is the equivalent resistance? ( in terms of the first resistance)
• yup. for a cube there is 8 nodes and 12 resistors.
use y to delta to reduce the number of nodes. leaving only the nodes that you need (to connect to other circuit or the 2 nodes that you want to measure). :)

Eg :

3D cube circuit : 8 nodes and 12 resistors.

Node1 = [ 0 , 0 , 0 ]
Node2 = [ 0 , 0 , 1 ]
Node3 = [ 0 , 1 , 0 ]
Node4 = [ 0 , 1 , 1 ]
Node5 = [ 1 , 0 , 0 ]
Node6 = [ 1 , 0 , 1 ]
Node7 = [ 1 , 1 , 0 ]
Node8 = [ 1 , 1 , 1 ]

R01 = [ Node1 - Node2 ]
R02 = [ Node1 - Node3 ]
R03 = [ Node1 - Node5 ]
R04 = [ Node2 - Node6 ]
R05 = [ Node2 - Node4 ]
R06 = [ Node3 - Node4 ]
R07 = [ Node3 - Node7 ]
R08 = [ Node5 - Node6 ]
R09 = [ Node5 - Node7 ]
R10 = [ Node4 - Node8 ]
R11 = [ Node6 - Node8 ]
R12 = [ Node7 - Node8 ]

Assume 2 final nodes is Node1 & Node8. In other words, we are looking for Rfinal. Or Rfinal = [ Node1 - Node8 ]

[Step 1]
Do y to delta transform on R03, R08 & R09. This will eliminate Node5, and results in Ra,Rb,Rc.
Do y to delta transform on R02, R06 & R07. This will eliminate Node3, and results in Rd,Re,Rf.
Do y to delta transform on R01, R04 & R05. This will eliminate Node2, and results in Rg,Rh,Ri.

Where the new set up will have 5 nodes and 12 resistors.

Node1 = [ 0 , 0 , 0 ]
Node4 = [ 0 , 1 , 1 ]
Node6 = [ 1 , 0 , 1 ]
Node7 = [ 1 , 1 , 0 ]
Node8 = [ 1 , 1 , 1 ]

R10 = [ Node4 - Node8 ]
R11 = [ Node6 - Node8 ]
R12 = [ Node7 - Node8 ]

Ra = [ Node1 - Node6 ] = (R3*R6 + R3*R8 + R6*R8 ) / R6
Rb = [ Node6 - Node7 ] = (R3*R6 + R3*R8 + R6*R8 ) / R3
Rc = [ Node7 - Node1 ] = (R3*R6 + R3*R8 + R6*R8 ) / R8

Rd = [ Node1 - Node4 ] = (R2*R7 + R2*R6 + R7*R6 ) / R7
Re = [ Node4 - Node7 ] = (R2*R7 + R2*R6 + R7*R6 ) / R2
Rf = [ Node7 - Node1 ] = (R2*R7 + R2*R6 + R7*R6 ) / R6

Rg = [ Node1 - Node6 ] = (R1*R5 + R1*R4 + R5*R4 ) / R5
Rh = [ Node6 - Node4 ] = (R1*R5 + R1*R4 + R5*R4 ) / R1
Ri = [ Node4 - Node1 ] = (R1*R5 + R1*R4 + R5*R4 ) / R4

As u can see, there are some resistors that are parallel now (connectted to the same node). Rj, Rk, Rl is equavalent.

Rc || Rf @ [ Node7 - Node1 ] > Rj = ( Rc || Rf ) = 1 / ( 1/Rc + 1/Rf )
Ra || Rg @ [ Node1 - Node6 ] > Rk = ( Ra || Rg ) = 1 / ( 1/Ra + 1/Rg )
Rd || Ri @ [ Node4 - Node1 ] > Rl = ( Rd || Ri ) = 1 / ( 1/Rd + 1/Ri )

Simplifying it, we'll have 5 nodes and 9 resistors.

Node1 = [ 0 , 0 , 0 ]
Node4 = [ 0 , 1 , 1 ]
Node6 = [ 1 , 0 , 1 ]
Node7 = [ 1 , 1 , 0 ]
Node8 = [ 1 , 1 , 1 ]

R10 = [ Node4 - Node8 ]
R11 = [ Node6 - Node8 ]
R12 = [ Node7 - Node8 ]

Rb = [ Node6 - Node7 ]
Re = [ Node4 - Node7 ]
Rh = [ Node6 - Node4 ]

Rj = [ Node7 - Node1 ]
Rk = [ Node1 - Node6 ]
Rl = [ Node4 - Node1 ]

[Step 2]

Do delta to y transform on Re, Rb & Rh. This will introduce new Node9. This will results in Rm,Rn,Ro.

Rm = [ Node4 - Node9 ] = Re*Rh / (Re + Rb + Rh )
Rn = [ Node7 - Node9 ] = Re*Rb / (Re + Rb + Rh )
Ro = [ Node6 - Node9 ] = Rb*Rh / (Re + Rb + Rh )

Now 6 nodes and 9 resistors.

Node1 = [ 0 , 0 , 0 ]
Node4 = [ 0 , 1 , 1 ]
Node6 = [ 1 , 0 , 1 ]
Node7 = [ 1 , 1 , 0 ]
Node8 = [ 1 , 1 , 1 ]
Node9 = [0.5,0.5,0.5]

R10 = [ Node4 - Node8 ]
R11 = [ Node6 - Node8 ]
R12 = [ Node7 - Node8 ]

Rj = [ Node7 - Node1 ]
Rk = [ Node1 - Node6 ]
Rl = [ Node4 - Node1 ]

Rm = [ Node4 - Node9 ]
Rn = [ Node7 - Node9 ]
Ro = [ Node6 - Node9 ]

[Step 3]

Do y to delta transform on R10, Rl & Rm. This will eliminate Node4, and results in Rp,Rq,Rr.
Do y to delta transform on R11, Rk & Ro. This will eliminate Node6, and results in Rs,Rt,Ru.
Do y to delta transform on R12, Rj & Rn. This will eliminate Node7, and results in Rv,Rw,Rx.

Rp = [ Node1 - Node9 ] = (Rl*R10 + Rl*Rm + R10*Rm ) / R10
Rq = [ Node9 - Node8 ] = (Rl*R10 + Rl*Rm + R10*Rm ) / Rl
Rr = [ Node8 - Node1 ] = (Rl*R10 + Rl*Rm + R10*Rm ) / Rm

Rs = [ Node1 - Node9 ] = (Rk*R11 + Rk*Ro + R11*Ro ) / R11
Rt = [ Node9 - Node8 ] = (Rk*R11 + Rk*Ro + R11*Ro ) / Rk
Ru = [ Node8 - Node1 ] = (Rk*R11 + Rk*Ro + R11*Ro ) / Ro

Rv = [ Node1 - Node9 ] = (Rj*R12 + Rj*Rn + R12*Rn ) / R12
Rw = [ Node9 - Node8 ] = (Rj*R12 + Rj*Rn + R12*Rn ) / Rj
Rx = [ Node8 - Node1 ] = (Rj*R12 + Rj*Rn + R12*Rn ) / Rn

Now, its 3 nodes and 9 resistors.

Node1 = [ 0 , 0 , 0 ]
Node8 = [ 1 , 1 , 1 ]
Node9 = [0.5,0.5,0.5]

Rp = [ Node1 - Node9 ]
Rq = [ Node9 - Node8 ]
Rr = [ Node8 - Node1 ]

Rs = [ Node1 - Node9 ]
Rt = [ Node9 - Node8 ]
Ru = [ Node8 - Node1 ]

Rv = [ Node1 - Node9 ]
Rw = [ Node9 - Node8 ]
Rx = [ Node8 - Node1 ]

Simplifying the parallel resistors, we have..

Rp || Rs || Rv @ [ Node1 - Node9 ] > Raa = ( Rp || Rs || Rv ) = 1 / ( 1/Rp + 1/Rs + 1/Rv )
Rq || Rt || Rw @ [ Node9 - Node8 ] > Rbb = ( Rq || Rt || Rw ) = 1 / ( 1/Rq + 1/Rt + 1/Rw )
Rr || Ru || Rx @ [ Node8 - Node1 ] > Rcc = ( Rr || Ru || Rx ) = 1 / ( 1/Rr + 1/Ru + 1/Rx )

Now, it's 3 nodes and 3 resistors.

Node1 = [ 0 , 0 , 0 ]
Node8 = [ 1 , 1 , 1 ]
Node9 = [0.5,0.5,0.5]

Raa = [ Node1 - Node9 ]
Rbb = [ Node9 - Node8 ]
Rcc = [ Node8 - Node1 ]

[Step 4]

Since our Rfinal = [ Node1 - Node8 ]

So,

Rfinal = ( ( Raa + Rbb ) || Rcc ) = 1 / ( 1/( Raa + Rbb ) + 1/Rcc ) = Done!
• dosn't AutoCad have a circuit simulator??
• Yes. The company that brings you AutoCad is AutoDesk. They offer a free simulator: https://circuits.io/

Another simulator you can try out is Circuit Sandbox, at my new web site: http://spinningnumbers.org/circuit-sandbox/index.html
No installation, no signup, just click on the link and draw a schematic.
• How can I find the resistance of a missing resistor in a series parallel circuit?
• By Ohm's law, you can find the equivalent resistance of the whole circuit. And once you know the equivalent resistance, you can calculate the unknown resistance.
[1/Req = 1/R1 + 1/R2]
(1 vote)
• Where can i find the assignments ( circuit mathematics ) and practice it ?
(1 vote)
• Each of the articles on the different circuit analysis methods has an example circuit. If you want to construct a set of exercises, gather all those circuits and solve each one using all the different methods (Node Voltage, Mesh Current, Fundamental Laws, Superposition). If you can do that you will have a good grasp of the topic.