資源簡介
采用LMS算法利用自適應濾波器進行系統辨識,輸入信號為白噪聲,濾波器階數為50,收斂步長為0.01,通過比較未知系統和自使用濾波器的幅頻響應來觀察辨識的效果。
代碼片段和文件信息
%例2.3.3采用LMS算法利用自適應濾波器進行系統辨識,輸入信號為白噪聲,濾波器階數為50,收斂步長為0.01
%參數設置
a=[1?-1.6?1.75?-1.43?0.6814?-0.1134?-0.0648];
b=[2?-3?-1?4?5?-8];
r=1000;L=50;mu=0.01;??
%建立輸入和期望的輸出
x=-1+2*rand(r1);d=filter(bax);
%......................................................................................................
N=length(x);w=zeros(L+11);theta=zeros(L+11);
e=zeros(size(x));q=x(:);
%尋找最佳權矢量
for?k=1:N
????if?k<(L+1)
????????theta(1:k)=q(k:-1:1);
????else
????????theta=q(k:-1:k-L);
????end
????e(k)=d(k)-w‘*theta;
????w=w+2*mu*e(k)*theta;
end
%繪制平方誤
評論
共有 條評論