Search code examples
matlabmathcontrolssystemsimulink

simulation of a MIMO system


I have a system with 2*2 matrix that elements of the matrix are transfer functions. I have 2*2 input vector that its elements are complex numbers.I want to simulate this MIMO system and get the output. How can I do this in simulink? I don't find any block that can do that. my transfer function and my input vectors are:

G = [tf([1 -100],[1 2 100]), tf([10 10],[1 2 100]) ; tf([-10 -10],[1 2 100]), tf([1 0 -100],[1 2 100])];

V_11=0.5289 + 0.0000i
V_12=-0.8487 + 0.0000i

V_21=0.0561 + 0.8468i
V_22=0.0349 + 0.5278i


Solution

  • Referring to the model image that you used in your now deleted question, you are running into some limitations of the LTI block, and the State-Space block that underlies it.

    You'll need to split your constant input vector in several ways:

    • firstly you'll need to split it into 2 separate columns [V_11;V21] and [V_12;V_22], and pass them through your transfer function independently.

    • secondly, the signal input to the State-Space block (and hence the LTI block) can only be real valued. Hence you'll need to simulate the real and complex parts of your signals independently (and do any appropriate re-combination of the real and imaginary parts separately).