MATLAB Answers


Descriptor State space in Simulink

Asked by Thijs
on 9 Apr 2014
Latest activity Answered by Fu Zhang
on 27 Mar 2019
I have a simple Simulink model, looking like the following:
I want the sum (at the right) to be equal to zero, so I have the following equation:
Input*ss1 + Input*K*ss2 = 0
Input * (ss1 + K*ss2) = 0
ss1 + K*ss2 = 0
K = -inv(ss2)*ss1
Both ss1 and ss2 are linear state space with one input, and one input. However, when calculating K, I get a descriptor state space (a,b,c,d AND e), which I cannot (or do not know how to) enter in Simulink. When running the simulink model without the 'K.e', it does not add up to zero.
Can someone tell me how to calculate K, so I don't get the descriptor SS? Or how to use the descriptor SS in Simulink?


Show 1 older comment
on 10 Apr 2014
on 11 Apr 2014
on 15 Apr 2014
Is there noone that can help me on this one?

Sign in to comment.

2 Answers

Answer by Arkadiy Turevskiy on 28 Apr 2014
 Accepted Answer

You can implement descriptor state space systems in Simulink using LTI System block from Control System Toolbox.

  1 Comment

on 29 Apr 2014
That works! Thank you very much.

Sign in to comment.

Answer by Fu Zhang
on 27 Mar 2019

In 2018b, Simulink introduced descriptor state space block, which is a built-in block that support sparse parameter. Details can be found here :


Sign in to comment.