资源简介

预报误差法参数辨识-松弛算法(单输入单输出matlab程序)。算法原理说明文件及双输入双输出情况见http://download.csdn.net/source/1796712。

资源截图

代码片段和文件信息

% 预报误差松弛法算法辨识模型参数
% 辨识模型:z(k)-2.725*z(k-1)+2.469*z(k-2)-0.7441*z(k-3)=0.000861*u(k-1)+
% 0.003201*u(k-2)+0.0007421*u(k-3)+e(k)

% 单输入单输出
%============================================
close all
clear
clc
%==========产生M序列作为输入===============
x1=[0 1 0 1 1 0 1 1 1];  %initial value
n=504; %n为脉冲数目
M1=[];  %存放M序列
for i=1:n
temp=xor(x1(4)x1(9));
M1(i)=x1(9);
for j=9:-1:2
x1(j)=x1(j-1);
end
x1(1)=temp;
end
u=M1;

%产生均值为0,方差为0.1的高斯白噪声
E=randn(1504);

%带辨识系数矩阵---两输入两输出
A1=-2.725;
A2=2.469;
A3=-0.7441;
B1=0.000861;
B2=0.003201;
B3=0.0007421;
D1=0;
%产生观测矩阵
z=zeros(1504);
z(:1)=-1;
z(:2)=-3;
z(:3)=2;
for i=4:504
    z(i)=-A1*z(i-1)-A2*z(i-2)-A3*z(i-3)+B1*u(i-1)+B2*u(i-2)+B3*u(i-3)+E(i); 
end
%=============开始辨识=======================
%-----首先估计A B系数--------
COV=0;
for k=1:500
COV=COV+E(k)*E(k)‘;
end
disp(‘噪声协方差矩阵:‘)

评论

共有 条评论