simulink仿真模块,S函数解微分方程出错问题:X0 returned by MATLAB S-function ' **** ' in ' ********


在使用S-function解微分方程时,出现报错X0 returned by MATLAB S-function '***' in '***/S-Function' must be a vector of length *,如下图。

此错误翻译就是  x0返回值是一个长度为5的向量。

这种错误修改就是:

因为x0表示的是初值,所以找到mdlInitializeSizes

X0=[ ]中赋予初值的个数要和sizes.NumContStates  = 5;一致就不会出错了