📄 mpc2.m
字号:
function MPC2()
num1=5.72;den1=[60 1];g1=poly2tfd(num1,den1,0,14);
num2=1.52;den2=[25 1];g2=poly2tfd(num2,den2,0,15);
%将MPC传递函数模型转化为MPC状态空间模型
mod=tfd2mod(7,1,g1,g2);
%将MPC状态空间模型转化为通用状态空间模型
[A,B,C,D]=mod2ss(mod);
%将通用状态空间模型转换LTI对象的状态空间模型
sys=ss(A,B,C,D);
h=tf(sys);
%获得脉冲信号x
[u,t]=gensig('pulse',8,10,0.1);
x=[u u];
%求解LTI对象的单位脉冲响应y
t=0:0.1:10;
[y,x1,t1]=lsim(h,x,t);
%输入脉冲信号x的归一化处理
[ax,mx,stdx]=autosc(x);
mx=[0 0];
sx=scal(x,mx,stdx);
%生成用于线性回归计算的输入/输出数据矩阵
n=35;
[xreg,yreg]=wrtreg(sx,y,n);
%基于多变量最小二乘法的脉冲响应模型辨识
ninput=2;
plotopt=2;
[theta,yres]=mlr(xreg,yreg,ninput,plotopt)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -