代码拉取完成,页面将自动刷新
function [sys,x0,str,ts] = NDOB(t,x,u,flag)
switch flag
case 0
[sys,x0,str,ts] = mdlInitializeSizes;
case 1
sys = mdlDerivatives(t,x,u);
case 3
sys = mdlOutputs(t,x,u);
case {2,4,9}
sys = [];
otherwise
error(['Unhandled flag = ', num2str(flag)]);
end
function [sys,x0,str,ts] = mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates = 1;
sizes.NumDiscStates = 0;
sizes.NumOutputs = 1;
sizes.NumInputs = 3;
sizes.DirFeedthrough= 1;
sizes.NumSampleTimes= 0;
sys = simsizes(sizes);
x0 = [0];
str = [];
ts = [];
function sys = mdlDerivatives(t,x,u)
z = x(1);
x1 = u(1);
x2 = u(2);
torq = u(3);
k = 1; b = 1;
c = 50;
dz = - c * z - c * (- k * x2 + b * torq + c * x2);
sys(1) = dz;
function sys = mdlOutputs(t,x,u)
x1 = u(1);
x2 = u(2);
torq = u(3);
c = 50;
z = x(1);
d_hat = z + c * x2;
sys(1) = d_hat;
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。