想向大家求助matlab关于prony的程序,能够实现任意序列的频谱分析,最好是自己编程实现的程序,急,谢谢!
最好是能够实现任意序列,任意阶数的prony程序
补充:帮我解释一下prony源程序中的各个参数也可以,谢谢!!!
function [b,a] = prony(h, nb ,na)
K = length(h) - 1;
M = nb; N = na;
if K <= max(M,N) % zero-pad input if necessary
K = max(M,N)+1;
h(K+1) = 0;
end
c = h(1);
if c==0 % avoid divide by zero
c=1;
end
H = toeplitz(h/c,[1 zeros(1,K)]);
% K+1 by N+1
if (K > N)
H(:,(N+2):(K+1)) = [];
end
% Partition H matrix
H1 = H(1:(M+1),:); % M+1 by N+1
h1 = H((M+2):(K+1),1); % K-M by 1
H2 = H((M+2):(K+1),2:(N+1)); % K-M by N
a = [1; -H2\h1].';
b = c*a*H1.';
其中na、nb怎么设定,得到的mn、nm中保存的是什么信息????