📄 durbin_method.m
字号:
%Function that solves Ra=r using durbin recursion if R is toeplitz
function [alpha,G]=durbin_method(Rn,p)
E(1)=Rn(1); %E(0)=R(0)
for i=1:1:p
if i==1;
k(i)=Rn(i+1)/E(i);
a(i,i)=k(i);
E(i+1)=(1-(k(i)^2))*E(i);
else
partial_sum=0;
for j=1:1:i-1
partial_sum=partial_sum+a(i-1,j)*Rn(i-j+1);
end
k(i)=(Rn(i+1)-partial_sum)/E(i);
a(i,i)=k(i);
for j=1:1:i-1
a(i,j)=a(i-1,j)-k(i)*a(i-1,i-j);
end
E(i+1)=(1-k(i)^2)*E(i);
end
end
for j=1:1:p
alpha(j,1)=a(p,j);
end
G=sqrt(Rn(1)-dot(alpha(:,1),Rn(2:p+1))); %determine gain
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -