資源簡介
matlab 自適應濾波LMS算法 繪制等值線,繪制學習曲線,包含實驗報告
代碼片段和文件信息
clear?allclose?allclc;
%產生r信號%
pr=0.01;
r=randn(150000);
r=r*sqrt(pr);
%產生信號xk與期望信號dk%
N=1000;%訓練長度
k=0:1:N-1;
xk=sin(2*pi*k/16);
dk=2*cos(2*pi*k/16);
r=r(1:N);
%計算自相關矩陣%
R0=(1/N)*xk*xk‘+pr;
R1=(1/N)*xk*[0xk(1:N-1)]‘;
R=[R0?R1;R1?R0];
%計算互相關矩陣%
Rdx0=(1/N)*dk*xk‘;
Rdx1=(1/N)*dk*[0xk(1:N-1)]‘;
Rdx=[Rdx0Rdx1]‘;
%計算dk的均方%
Edj2=(1/N)*dk*dk‘;
%產生輸入信號%
xk=xk+r;%輸入信號
%計算最佳權矢量%
Wopt=inv(R)*Rdx;
%計算最小均方誤差%
ksimin=Edj2+Wopt‘*R*Wopt-2*Rdx‘*Wopt;
%初始化均方誤差%
ksi=zeros(1N);
%LMS迭代算法%
M=2;%FIR濾波器的長度
u1=0.1;
w0=[0?0];
[hyw]=lms(xkdku1Mw0);
figure(1)plot(w(1:)w(2:))axis([-28-100])hold?ongrid?on;
text(w0(1)w0(2)‘u=0.1k=1000‘);
for?n=1:1:N
????ksi(n)=ksimin+(w(:n)-Wopt)‘*R*(w(:n)-Wopt);
end;
figure(2)plot(kksi‘r‘)hold?ongrid?on;%繪制學
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-11-08?22:27??adaptive?filteryf\
?????文件????????2316??2012-11-05?16:55??adaptive?filteryf\lab_2.asv
?????文件????????2334??2012-11-01?21:00??adaptive?filteryf\lab_2.m
?????文件????????1425??2012-11-01?15:14??adaptive?filteryf\lms.asv
?????文件????????1470??2012-11-01?15:15??adaptive?filteryf\lms.m
?????文件??????229888??2012-11-08?22:27??adaptive?filteryf\自適應濾波實驗報告.doc
- 上一篇:matlab將多個txt文件內容寫入一個txt文件中
- 下一篇:色散熵的主要代碼
評論
共有 條評論