我正在尝试在Simulink中建立非线性状态空间模型。到目前为止,我所做的是
在我的matlab函数中,我写了方程式:
function [xdot, y] = nonlinearss(x,u)
%define constants
a1=...;
b1=...;
xdot=[x(2);x(3);x(4);x(5);a1*x(1)*x(1)+...]+[0;0;0;0;(b1*x(1)*x(1)+...]*u;
y = x(1);
end
当我运行模型时,它给了我这个错误:
Simulink无法将可变大小模式从“无标题/ MATLAB功能”的输出端口1传播到的输入端口1 “无标题/集成商”。该输入端口需要固定大小的模式。的 可变大小模式源自“ untitled / MATLAB Function”。检查 以下其中一项的“无标题/集成商”配置 场景:1)该块不支持可变大小的信号; 2) 模块支持可变大小的信号,但需要进行配置 他们。
我的x
矩阵是固定大小(5x1)的向量,也是xdot
。为什么它会给我这个错误以及如何解决这个错误?(另外,我必须提到,在我的MATLAB Function模块代码的编辑器中,我单击了“编辑数据”,然后检查了xdot和x的可变大小框, [5 1]作为大小。)