# arburg.rar

• PUDN用户
了解作者
• matlab
开发工具
• 1KB
文件大小
• rar
文件格式
• 0
收藏次数
• 10 积分
下载积分
• 44
下载次数
• 2010-04-09 09:58
上传日期
ar burg算法的matlab程序，可供参考
arburg.rar
• arburg.txt
2.1KB

function varargout = arburg( x, p) %ARBURG AR parameter estimation via Burg method. % A = ARBURG(X,ORDER) returns the polynomial A corresponding to the AR % parametric signal model estimate of vector X using Burg's method. % ORDER is the model order of the AR system. % % [A,E] = ARBURG(...) returns the final prediction error E (the variance % estimate of the white noise input to the AR model). % % [A,E,K] = ARBURG(...) returns the vector K of reflection % coefficients (parcor coefficients). % % See also PBURG, ARMCOV, ARCOV, ARYULE, LPC, PRONY. % Ref: S. Kay, MODERN SPECTRAL ESTIMATION, % Prentice-Hall, 1988, Chapter 7 % S. Orfanidis, OPTIMUM SIGNAL PROCESSING, 2nd Ed. % Macmillan, 1988, Chapter 5 % Author(s): D. Orofino and R. Losada % Copyright 1988-2004 The MathWorks, Inc. % \$Revision: 1.12.4.3 \$ \$Date: 2007/12/14 15:03:40 \$ error(nargchk(2,2,nargin,'struct')) [mx,nx] = size(x); if isempty(x) || min(mx,nx) > 1, error(generatemsgid('InvalidDimensions'),'X must be a vector with length greater than twice the model order.'); elseif isempty(p) || ~(p == round(p)) error(generatemsgid('MustBeInteger'),'Model order must be an integer.') end if issparse(x), error(generatemsgid('Sparse'),'Input signal cannot be sparse.') end x = x(:); N = length(x); % Initialization ef = x; eb = x; a = 1; % Initial error E = x'*x./N; % Preallocate 'k' for speed. k = zeros(1, p); for m=1:p % Calculate the next order reflection (parcor) coefficient efp = ef(2:end); ebp = eb(1:end-1); num = -2.*ebp'*efp; den = efp'*efp+ebp'*ebp; k(m) = num ./ den; % Update the forward and backward prediction errors ef = efp + k(m)*ebp; eb = ebp + k(m)'*efp; % Update the AR coeff. a=[a;0] + k(m)*[0;conj(flipud(a))]; % Update the prediction error E(m+1) = (1 - k(m)'*k(m))*E(m); end a = a(:).'; % By convention all polynomials are row vectors varargout{1} = a; if nargout >= 2 varargout{2} = E(end); end if nargout >= 3 varargout{3} = k(:); end

相关推荐
• Burg_AR.rar
AR模型系数的burg算法，比较简明易懂，适合初学者
• my_Burg_AR_estimation.zip
基于BURG算法的AR模型的现代谱估计仿真代码，对学习现代谱估计很有帮助。
• AR.rar
用matlab技术编程，实现对AR技术，风速提取方面技术
• burg.zip
对某随机信号进行观察，得到如下一组数据： u=[101,82,66,35,31,7,20,92,154,125,85,68,38,23,10,24,83,...对该数据建立一个AR模型，编写用Burg算法求解该AR模型的参数程序，并画出p取值分别为3、4、5时的功率谱曲线。
• burg.zip
burg算法的定阶算法，实现自动识别数据长度，确定burg的阶数
• burg.zip
利用matlab进行burg算法的编写,实现了AR模型参数的计算
• burg.rar
burg算法实现对n阶AR估计的matlab函数求解。
• 基于Burg法和Matlab估计AR模型参数
基于Matlab实现： 基于 Burg法 估计AR模型参数 基于 Burg法 估计AR模型参数
• AR谱估计的matlab burg算法
burg 算法简单实用，在AR谱估计中用得很广
• 73462680ARMO-Burg-AR-model.zip
基于Matlab软件实现，计算ar系数和功率谱估计