Bird
Raised Fist0
Simulinkdata~20 mins

Root locus analysis in Simulink - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Root Locus Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Root Locus Plot Poles Count
Given a transfer function in Simulink with numerator [1] and denominator [1, 3, 2], how many poles will the root locus plot show?
Simulink
num = [1];
den = [1 3 2];
rlocus(tf(num, den))
A3
B2
C1
D0
Attempts:
2 left
💡 Hint
Count the roots of the denominator polynomial.
❓ data_output
intermediate
2:00remaining
Root Locus Gain Values
For the transfer function with numerator [2] and denominator [1, 4, 5], what is the gain value at the breakaway point on the root locus?
Simulink
num = [2];
den = [1 4 5];
[rlocus_data, k] = rlocus(tf(num, den));
max_k = max(k);
AApproximately 0.5
BApproximately 2.5
CApproximately 9.0
DApproximately 4.0
Attempts:
2 left
💡 Hint
Breakaway points occur where gain k is maximum on the root locus.
❓ visualization
advanced
2:00remaining
Identify Root Locus Stability Region
Given a root locus plot of a system with poles at -1 and -2 and a zero at -3, which region on the plot indicates system stability?
Simulink
num = [1 3];
den = [1 3 2];
rlocus(tf(num, den))
ARight half of the s-plane
BEntire s-plane
CImaginary axis only
DLeft half of the s-plane
Attempts:
2 left
💡 Hint
Stable poles lie where real parts are negative.
🧠 Conceptual
advanced
2:00remaining
Effect of Adding a Pole on Root Locus
What happens to the root locus plot when an additional pole is added at s = -5 to the open-loop transfer function?
AThe root locus gains an additional branch starting at s = -5
BThe root locus loses a branch
CThe root locus shifts all poles to the right half-plane
DThe root locus remains unchanged
Attempts:
2 left
💡 Hint
Each pole adds a branch to the root locus starting at that pole.
🔧 Debug
expert
2:00remaining
Identify Error in Root Locus Code
What error will occur when running this Simulink MATLAB code snippet? num = [1 2]; den = [1 0]; sys = tf(num, den); rlocus(sys)
Simulink
num = [1 2];
den = [1 0];
sys = tf(num, den);
rlocus(sys)
ANo error, root locus plot generated successfully
BError: Transfer function denominator cannot be zero order polynomial
CError: Transfer function denominator has zero as constant term causing improper system
DError: Numerator and denominator must have same length
Attempts:
2 left
💡 Hint
Check if denominator polynomial is valid for transfer function.

Practice

(1/5)
1. What does the root locus plot primarily show in control systems analysis?
easy
A. The noise level in the system output
B. The frequency response of the system
C. How the system poles move as the gain changes
D. The time response of the system to a step input

Solution

  1. Step 1: Understand root locus purpose

    The root locus plot shows how the locations of system poles change as the gain parameter varies.
  2. Step 2: Differentiate from other plots

    Frequency response and time response plots show different system behaviors, not pole movement.
  3. Final Answer:

    How the system poles move as the gain changes -> Option C
  4. Quick Check:

    Root locus = pole movement with gain [OK]
Hint: Root locus tracks poles as gain varies [OK]
Common Mistakes:
  • Confusing root locus with frequency response
  • Thinking it shows output noise
  • Mixing it up with time response plots
2. Which Simulink command is used to plot the root locus of a system with transfer function G = tf([1], [1, 3, 2])?
easy
A. rlocus(G)
B. step(G)
C. bode(G)
D. pzmap(G)

Solution

  1. Step 1: Identify root locus command

    In Simulink and MATLAB, rlocus() is the function to plot root locus.
  2. Step 2: Differentiate from other commands

    step() plots step response, bode() plots frequency response, and pzmap() plots poles and zeros but not root locus.
  3. Final Answer:

    rlocus(G) -> Option A
  4. Quick Check:

    Root locus plot = rlocus() [OK]
Hint: Use rlocus() to plot root locus in Simulink [OK]
Common Mistakes:
  • Using step() instead of rlocus()
  • Confusing bode() with root locus
  • Using pzmap() which shows poles but no gain variation
3. Given the transfer function G = tf([2], [1, 4, 5]), what is the number of branches in the root locus plot?
medium
A. 1
B. 2
C. 3
D. 4

Solution

  1. Step 1: Determine number of poles

    The denominator polynomial [1, 4, 5] is second order, so there are 2 poles.
  2. Step 2: Relate poles to root locus branches

    Root locus branches equal the number of poles, so there are 2 branches.
  3. Correction:

    The denominator polynomial [1, 4, 5] is of order 2, so there are 2 poles, but the number of branches in root locus equals the number of poles, which is 2, not 3.
  4. Final Answer:

    2 -> Option B
  5. Quick Check:

    Branches = number of poles = 2 [OK]
Hint: Count denominator order for branches [OK]
Common Mistakes:
  • Counting zeros instead of poles
  • Confusing numerator order with poles
  • Assuming branches equal zeros
4. Identify the error in this Simulink command for root locus: rlocus(tf([1 2], [1 3]))
medium
A. No error, command is correct
B. The numerator vector is invalid
C. The transfer function is not proper
D. The denominator vector length is less than numerator

Solution

  1. Step 1: Check transfer function order

    Numerator order is 1 (degree 1), denominator order is 1 (degree 1). Transfer function is proper if denominator order >= numerator order.
  2. Step 2: Analyze properness

    Here numerator and denominator orders are equal, so transfer function is proper, not improper.
  3. Step 3: Check command validity

    The command is syntactically correct and will run without error.
  4. Final Answer:

    No error, command is correct -> Option A
  5. Quick Check:

    Proper TF and syntax = no error [OK]
Hint: Check numerator and denominator orders for proper TF [OK]
Common Mistakes:
  • Assuming numerator length must be less than denominator
  • Thinking equal order is improper
  • Confusing vector length with polynomial degree
5. You have a system with transfer function G = tf([1], [1, 2, 2, 1]). You want to design a controller gain K so that the system poles lie on the left half of the complex plane for stability. Using root locus analysis, which gain range should you choose?
hard
A. K = 0 only
B. Any positive K value
C. K < 0 only
D. K > 0 and less than the gain where poles cross imaginary axis

Solution

  1. Step 1: Understand root locus stability

    Root locus shows pole movement as gain K changes. Poles in left half-plane mean stable system.
  2. Step 2: Identify gain limits for stability

    Poles start stable at K=0 and move as K increases. Stability is maintained until poles cross imaginary axis at a critical gain.
  3. Step 3: Choose gain range

    Gain K must be positive and less than the critical gain where poles cross imaginary axis to keep system stable.
  4. Final Answer:

    K > 0 and less than the gain where poles cross imaginary axis -> Option D
  5. Quick Check:

    Stable poles = gain below crossing point [OK]
Hint: Pick gain before poles cross imaginary axis [OK]
Common Mistakes:
  • Assuming any positive gain is stable
  • Choosing negative gain for stability
  • Ignoring pole crossing points
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard