Bird
Raised Fist0
Simulinkdata~5 mins

Root locus analysis in Simulink - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Root locus analysis
O(n)
Understanding Time Complexity

We want to understand how the time to perform root locus analysis changes as the system size grows.

How does the number of calculations grow when we analyze more complex systems?

Scenario Under Consideration

Analyze the time complexity of the following MATLAB root locus setup.

% Define transfer function
sys = tf([1], [1 3 2]);

% Define gain range
K = 0:0.1:10;

% Compute root locus
rlocus(sys, K);
    

This code calculates the root locus for a system over a range of gain values.

Identify Repeating Operations

Look for repeated calculations in the code.

  • Primary operation: Calculating system poles for each gain value.
  • How many times: Once for each gain in the range (here, about 101 times).
How Execution Grows With Input

As the number of gain points increases, the calculations increase proportionally.

Input Size (n)Approx. Operations
1010 calculations of poles
100100 calculations of poles
10001000 calculations of poles

Pattern observation: Doubling the number of gain points doubles the work.

Final Time Complexity

Time Complexity: O(n)

This means the time grows directly in proportion to the number of gain values analyzed.

Common Mistake

[X] Wrong: "The time to compute root locus stays the same no matter how many gain points we check."

[OK] Correct: Each gain value requires recalculating poles, so more points mean more work.

Interview Connect

Understanding how computation time grows helps you explain system analysis efficiency clearly and confidently.

Self-Check

What if we increased the system order (more poles and zeros)? How would the time complexity change?

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