Mesh analysis with dependent sources
Updated
Mesh analysis with dependent sources works almost exactly like it does with independent sources. You write a KVL equation around each mesh, treat each dependent source like any other source, and add one extra equation that writes its controlling voltage or current in terms of the mesh currents.
The circuit below is the first worked example on this page. You can edit it, or draw your own, then solve it step by step.
Dependent sources, in brief
A dependent (or controlled) source is a voltage or current source whose value depends on a voltage or current somewhere else in the circuit. It's drawn as a diamond, and there are four kinds:
| Source | Its value | In mesh analysis |
|---|---|---|
| Current-controlled voltage source (CCVS) | volts | A voltage in a KVL equation. Usually the easiest kind. |
| Voltage-controlled voltage source (VCVS) | volts | A voltage in a KVL equation. |
| Current-controlled current source (CCCS) | amps | Sets a mesh current, or makes a supermesh. |
| Voltage-controlled current source (VCCS) | amps | Sets a mesh current, or makes a supermesh. |
Here is the current through some component and is the voltage across it. They are the controlling current and voltage. Mesh analysis already writes every current in terms of mesh currents, which is why current-controlled sources are especially easy with it.
How to do mesh analysis with dependent sources
- Label the mesh currents , , ..., all clockwise.
- Write the controlling quantity in terms of mesh currents. The current through a component in one mesh only is that mesh's current (or its negative). The current through a component shared by meshes and is , in the direction flows. The voltage across a resistor is times its current.
- For a dependent voltage source, include its voltage in the KVL equation of every mesh it's in, just like an independent voltage source, using the expression from step 2.
- For a dependent current source on the outside edge of the circuit, it sets that mesh's current. Shared by two meshes, it makes a supermesh: write one KVL equation around both meshes, and use the source as a constraint between their currents.
- Substitute and solve. Replace the controlling quantity in every equation, which leaves only mesh currents as unknowns, then solve the equations (by substitution, or as a matrix).
- Check your answer. Work out the controlling quantity and the dependent source's value, and make sure KVL holds around a loop you didn't use.
With dependent sources, the matrix of mesh equations usually isn't symmetric any more, so don't be surprised if the shortcut of writing it straight from the resistances doesn't work. Write the KVL equations out in full.
Example 1: a current-controlled voltage source
In the circuit at the top of the page, a source is on the left, () is along the top of mesh 1, and () is shared by both meshes. Mesh 2 has () along the top and a dependent voltage source of volts down the right, + at the top, where is the current down through . Find the mesh currents.
Step 1: label the mesh currents
flows clockwise around the left mesh and clockwise around the right one. Through , flows down and flows up.
Step 2: write the controlling current in terms of mesh currents
Step 3: write KVL around each mesh
Around mesh 1, up through and then through and :
Around mesh 2, up through , along , then down through from its + end to its − end, which is a drop of :
Step 4: substitute and solve
Replace with and simplify:
As a matrix (not symmetric, because of the dependent source):
The second equation gives , so :
Step 5: check
The controlling current is , so is . Around mesh 2: has across it, which equals the across plus the across .
Open Example 1 in Circuitsteps to see every step, including the branch currents and how the matrix is solved.
Example 2: a voltage-controlled current source between two meshes
Here a source is on the left and () is along the top of mesh 1. In the middle branch, shared by both meshes, a dependent current source pushes amps upwards, where is the voltage across , + at its left end. Mesh 2 has () along the top and () down the right.
Step 1: spot the supermesh
The dependent current source is shared by meshes 1 and 2, so they form a supermesh. You can't write KVL around either mesh on its own, as the voltage across the current source is unknown.
Step 2: write the controlling voltage in terms of mesh currents
flows through from its left (+) end to its right end, so
Step 3: write the constraint and the supermesh's KVL equation
In the middle branch, flows up and flows down, and the source pushes up:
Around the outside of both meshes, leaving out the current source:
Step 4: substitute and solve
Step 5: check
The controlling voltage is , so the source pushes , which matches . Around the outside, , and drop , the same as .
Open Example 2 in Circuitsteps to see it solved step by step.
Common mistakes
- Forgetting the control equation. The controlling quantity is a new unknown. Without an equation for it in terms of mesh currents, you'll have more unknowns than equations.
- Getting the controlling current's direction wrong. In a shared branch, it's one mesh current minus the other, and which one comes first depends on the direction of on the circuit. Getting it backwards flips the sign of the source.
- Treating the source's value as a number. A dependent source's value changes with the circuit. Keep it as an expression until you've solved for the mesh currents.
- Writing KVL through a dependent current source. Its voltage is unknown, just like an independent current source's. Go around it with a supermesh, or use it to set a mesh current.
- Assuming the matrix is symmetric. The "self-resistance and mutual resistance" shortcut only works without dependent sources.
Mesh or nodal analysis?
Mesh analysis is usually easiest when the dependent sources are voltage sources, or when the controlling quantity is a current. Nodal analysis is usually easiest when they are current sources, or when the controlling quantity is a voltage. Either method gives the same answers. See nodal analysis with dependent sources for the same idea with node voltages, or solve your circuit both ways with the mesh analysis calculator and the nodal analysis calculator.
Frequently asked questions
How do you handle a dependent source in mesh analysis?
Treat it like an independent source when you write the KVL equations, then add one more equation that writes its controlling voltage or current in terms of the mesh currents. Substitute that equation in and solve as usual.
What do you do with a dependent current source between two meshes?
Join the two meshes into a supermesh. Write one KVL equation around the outside of both, leaving out the current source, and use the source as a constraint: the difference between the two mesh currents equals the source's value, written in terms of the mesh currents.
Why isn't my mesh matrix symmetric?
Dependent sources add terms that only appear in some equations, so the matrix of mesh equations usually isn't symmetric any more. That's expected. Write the KVL equations out in full rather than using the self- and mutual-resistance shortcut.
Can dependent sources be used with nodal analysis too?
Yes. With nodal analysis you write the controlling quantity in terms of the node voltages instead. Circuitsteps can solve a circuit with dependent sources using either method and shows every step.