⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xe.m

📁 the code is a example of DOBC.
💻 M
字号:
function [sys,x0,str,ts]=XE(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=6;
sizes.NumDiscStates=0;
%sizes.NumOutputs=4;
%sizes.NumOutputs=2;
sizes.NumOutputs=6;
sizes.NumInputs=0;
sizes.DirFeedthrough=0;
sizes.NumSampleTimes=1;
sys=simsizes(sizes);
x0=[2 -2 3 2 0.1 0];
str=[];
ts=[0 0];
function sys=mdlDerivatives(t,x,u)
A0=[-0.0605 32.37 0 32.2;-0.00014 -1.475 1 0;-0.0111 -34.72 -2.793 0;0 0 1 0];
B0=[0;-0.1064;-33.8;0];
K=[2.3494 10.4584 4.1044 14.4285];
F01=[0;0;50;0];
K1=[0 1 0 0];
W=[0 5;-5 0];
V=[25 0];
L=[0 -143.3862 0.4527 0;0 -32.7628 0.1033 0];
x1dot=(A0+B0*K+F01*K1*sin(2*pi*5*t))*[x(1);x(2);x(3);x(4)]+B0*V*[x(5);x(6)];
x2dot=(W+L*B0*V)*[x(5);x(6)];
sys=[x1dot;x2dot];
function sys=mdlOutputs(t,x,u)
%sys=[x(1);x(2);x(3);x(4)];
%sys=[x(5);x(6)];
sys=x;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -