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

📄 example2.m

📁 是关于系统辨识的一篇论文和本人对文中所提论文方法的Matlab程序验证
💻 M
字号:
% 算例2
% 参数辨识
clear
U=idinput([15 1 60],'prbs',[0 1],[-1 1]);
%
i=900;R0=1;S=2.^25*eye(4);Y=zeros(i,1);
theta0=[1.5;-0.7;1;0.5];
%
theta=[1;1;1;1];
V=idinput(i,'rgs',[0 1],[0 1]);
%
for m=3:i
X=[Y(m-1) Y(m-2) U(m-1) U(m-2)];
Y(m)=X*theta0+V(m);F=S'*X';Beta=R0+F'*F;
Arfa=1/(Beta+(R0*Beta)^0.5);K=S*F/Beta;
theta(:,(m-1))=theta(:,(m-2))+K*(Y(m)-X*theta(:,(m-2)));
S=(eye(4)-Arfa*Beta*K*X)*S/R0^0.5;
end
%
result=[(-theta(1:2,(i-1)));theta(3:4,(i-1))];
%
figure;
plot(1:(i-1),-theta(1,:),'--',1:(i-1),-theta(2,:),'-.',1:(i-1),theta(3,:),':',1:(i-1),theta(4,:),'-');
A=plot(1:(i-1),-theta(1,:),'--',1:(i-1),-theta(2,:),'-.',1:(i-1),theta(3,:),':',1:(i-1),theta(4,:),'-');
legend(A,'a1','a2','b1','b2');
title('参数辨识曲线');
hold on

⌨️ 快捷键说明

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