Bird
Raised Fist0
Simulinkdata~5 mins

Mixed continuous-discrete models in Simulink - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Mixed continuous-discrete models
O(N)
Understanding Time Complexity

We want to understand how the time to run a mixed continuous-discrete Simulink model changes as the model size grows.

How does adding more blocks or steps affect the total work done?

Scenario Under Consideration

Analyze the time complexity of the following Simulink model snippet.


  % Continuous block: Integrator
  y = integrator(u);

  % Discrete block: Unit Delay with sample time Ts
  y_d = unit_delay(y, Ts);

  % Loop over N steps
  for k = 1:N
    y = integrator_step(u(k));
    y_d = unit_delay_step(y_d, Ts);
  end
    

This snippet shows a model with continuous integration and discrete delay updated over N time steps.

Identify Repeating Operations

Look for repeated calculations in the model.

  • Primary operation: The loop runs N times, updating continuous and discrete blocks each step.
  • How many times: Each step performs fixed work once, repeated N times.
How Execution Grows With Input

As the number of steps N increases, the total work grows proportionally.

Input Size (N)Approx. Operations
1010 units of work
100100 units of work
10001000 units of work

Pattern observation: Doubling N doubles the work, showing a steady linear growth.

Final Time Complexity

Time Complexity: O(N)

This means the time to run the model grows directly in proportion to the number of simulation steps.

Common Mistake

[X] Wrong: "The continuous and discrete parts run independently, so time doesn't grow with steps."

[OK] Correct: Each simulation step updates both parts, so total work adds up with more steps.

Interview Connect

Understanding how simulation time grows helps you design efficient models and explain performance clearly.

Self-Check

"What if the discrete block updated every M steps instead of every step? How would that change the time complexity?"

Practice

(1/5)
1. What does a mixed continuous-discrete model in Simulink represent?
easy
A. A system combining smooth continuous changes and stepwise discrete changes
B. A system with only continuous changes
C. A system with only discrete changes
D. A system that cannot be simulated in Simulink

Solution

  1. Step 1: Understand model types in Simulink

    Continuous models change smoothly over time, discrete models change at specific time steps.
  2. Step 2: Define mixed continuous-discrete model

    It combines both smooth continuous changes and stepwise discrete changes in one system.
  3. Final Answer:

    A system combining smooth continuous changes and stepwise discrete changes -> Option A
  4. Quick Check:

    Mixed model = continuous + discrete changes [OK]
Hint: Mixed models combine smooth and step changes [OK]
Common Mistakes:
  • Thinking mixed means only continuous
  • Confusing discrete with continuous
  • Believing Simulink can't simulate mixed models
2. Which Simulink block is used to represent discrete-time memory in mixed models?
easy
A. Integrator
B. Unit Delay
C. Gain
D. Sum

Solution

  1. Step 1: Identify discrete memory blocks

    Discrete memory stores previous values at discrete time steps.
  2. Step 2: Match block to function

    Unit Delay block holds the input value for one discrete time step, acting as memory.
  3. Final Answer:

    Unit Delay -> Option B
  4. Quick Check:

    Discrete memory = Unit Delay [OK]
Hint: Unit Delay stores previous discrete values [OK]
Common Mistakes:
  • Choosing Integrator which is continuous
  • Confusing Gain with memory
  • Selecting Sum which adds signals
3. Consider a Simulink model with an Integrator block connected to a Unit Delay block. If the input is a step signal starting at 0 and stepping to 1 at time 1s, what is the output of the Unit Delay block at time 1.5s?
medium
A. 0.5
B. 0
C. 1
D. Undefined

Solution

  1. Step 1: Understand signal timing

    The step input changes from 0 to 1 at 1s.
  2. Step 2: Analyze Unit Delay output at 1.5s

    Unit Delay outputs the input value from the previous discrete time step. Assuming sample time 1s, at 1.5s it outputs input at 1s, which is 1 after the step.
  3. Final Answer:

    1 -> Option C
  4. Quick Check:

    Unit Delay outputs previous step input [OK]
Hint: Unit Delay outputs previous step input value [OK]
Common Mistakes:
  • Assuming Unit Delay outputs current input
  • Ignoring sample time effect
  • Confusing Integrator output with Unit Delay
4. You have a mixed model with an Integrator and Unit Delay connected, but the simulation shows unexpected zero output from the Unit Delay. What is the most likely cause?
medium
A. Sample time of Unit Delay is not set correctly
B. Integrator block is not connected to Unit Delay
C. Step input is constant zero
D. Gain block is missing

Solution

  1. Step 1: Check connections

    If Integrator not connected, output would be undefined, not zero.
  2. Step 2: Verify Unit Delay sample time

    If sample time is incorrect or continuous, Unit Delay may output zero because it never updates.
  3. Final Answer:

    Sample time of Unit Delay is not set correctly -> Option A
  4. Quick Check:

    Incorrect sample time causes zero output [OK]
Hint: Check Unit Delay sample time for updates [OK]
Common Mistakes:
  • Assuming connection issue without checking sample time
  • Ignoring input signal values
  • Thinking Gain block affects Unit Delay output
5. You want to model a system where a continuous temperature sensor feeds into a controller that updates every 0.1 seconds using discrete logic. Which approach correctly combines continuous and discrete parts in Simulink?
hard
A. Use only continuous blocks and ignore discrete timing
B. Use only discrete blocks with sample time 0.1s for both sensor and controller
C. Use a Unit Delay for temperature and Integrator for controller
D. Use an Integrator for temperature and a Unit Delay with sample time 0.1s for controller updates

Solution

  1. Step 1: Identify continuous and discrete parts

    Temperature sensor is continuous, controller logic updates discretely every 0.1s.
  2. Step 2: Choose appropriate blocks

    Integrator models continuous sensor output; Unit Delay with sample time 0.1s models discrete controller updates.
  3. Final Answer:

    Use an Integrator for temperature and a Unit Delay with sample time 0.1s for controller updates -> Option D
  4. Quick Check:

    Continuous sensor + discrete controller = Integrator + Unit Delay [OK]
Hint: Integrator for continuous, Unit Delay for discrete timing [OK]
Common Mistakes:
  • Using only discrete blocks for continuous sensor
  • Ignoring sample time for discrete controller
  • Reversing block roles
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