homework3.m

来自「ar模型 bt算法 ls rls lms music等数字信号处理的源代码」· M 代码 · 共 48 行

M
48
字号
clear;
clc;
N1=10000;
N=5120;
N2=100;
P=input('please input the order of the AR model')
for m=1:P
    a(m)=input('please input a')
    linda(m)=input('please input linda')
end
miu=input('please input the length of step');
sigma_v2=input('please input the variance of noise')
Jmin=sigma_v2;
M=miu*sum(linda)/(2-miu*sum(linda));
Jex_inf=M*Jmin;
w=zeros(P,N,N2);
e=zeros(N2,N);
for k=1:N2
    v=sqrt(sigma_v2)*randn(1,N1);
    u1=zeros(1,N1);
    for m=1:N1-2
        u1(m+P)=v(m);
        for n=1:P
            u1(m+P)=u1(m+P)-a(n)*u1(m+P-n);
        end
    end
    u=u1(N1-N+1:N1);
    u2=[zeros(1,P) u];
    x=zeros(P,1);
    for m=1:P
        x(m)=u2(P+1-m);
    end
    for n=1:N-1
        w(:,n+1,k)=w(:,n,k)+miu*x*conj(e(k,n)); 
        x=zeros(P,1);
        for m=1:P
        x(m)=u2(n+P+1-m);
        end
        e(k,n+1)=u2(n+P+1)-(w(:,n+1,k))'*x;
    end
end
w1=mean(w,3);
e1=mean(e.^2,1);
Jex_N=e1(N)-Jmin;
M1=Jex_N/Jmin;
plot(0:length(e1)-1,e1)
xlabel('迭代次数n')
ylabel('J(n)')

⌨️ 快捷键说明

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