如何在matlab中定义n-by-n传递函数矩阵?我只需要初始化它,因为我将在代码的第二部分中使用正确的tf加载它。
我尝试了定义:
MATRIX=zeros(n);
但MATRIX的每个元素都是双重类型。我希望每个元素都是tf数据类型。
答案 0 :(得分:1)
您正在寻找创建Model Array。该命令还取决于系统中的输入和输出数量。您可以使用例如:
创建它MATRIX = tf(zeros(no_inputs, no_outputs, n, n));
答案 1 :(得分:0)
如果您有两个S / MIMO系统传输功能(实际上是SISO型号的串联):
s = tf('s')
h11 = (s-1)/(s+1)
h21 = (s+2)/(s^2+4*s+5)
% or
% h11 = tf([1 -1],[1 1])
% h21 = tf([1 2],[1 4 5])
它们可以连接形成H(s)。
H = [h11; h21]
您也可以使用单元格数组直接通过tf
传递:
h11 = {[1 -1];[1 2]}
h21 = {[1 1];[1 4 5]}
H = tf(N,D)
两者也适用于zpk
模型。