dsp.BurgSpectrumEstimator System object

Package: dsp

Parametric spectral estimate using Burg method


The BurgSpectrumEstimator object computes a parametric spectral estimate of the input using the Burg method. The object fits an autoregressive (AR) model to the signal by minimizing the forward and backward prediction errors (via least-squares). The AR parameters are constrained to satisfy the Levinson-Durbin recursion.

To compute the parametric spectral estimate of the input:

  1. Define and set up your System object™. See Construction.

  2. Call step to compute the estimate according to the properties of dsp.BurgSpectrumEstimator. The behavior of step is specific to each object in the toolbox.


H = dsp.BurgSpectrumEstimator returns an object, H, that estimates the power spectral density (PSD) of the input frame using the Burg method.

H = dsp.BurgSpectrumEstimator('PropertyName',PropertyValue,...) returns a spectrum estimator, H, with each specified property set to the specified value.



Source of estimation order

Specify the source of the estimation order as Auto or Property. If you set this property to Auto, the object assumes the estimation order is one less than the length of the input vector. The default value is Property.


Order of AR model

Specify the order of AR model as a real positive integer. This property applies only when you set the EstimationOrderSource property to Property. The default value is 6.


Source of FFT length

Specify the source of the FFT length as Auto or Property. When you set this property to Auto, the objects assumes the FFT length is one more than the estimation order. When you set this property to Property, the FFTLength property value must be an integer power of two.


FFT length as power-of-two integer value

Specify the FFT length as a power-of-two numeric scalar. This property applies when you set the FFTLengthSource property to Property. The default value is 256.


Sample rate of input time series

Specify the sampling rate of the original input time series as a positive numeric scalar in hertz. The default value is 1.


cloneCreate estimator object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs of step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
stepEstimate of power spectral density


Estimate PSD using the Burg method:

 x = randn(100,1);
 h = dsp.BurgSpectrumEstimator('EstimationOrder', 4);
 y = filter(1,[1 1/2 1/3 1/4 1/5],x); % Fourth order AR filter
 p = step(h,y); % Uses default FFT length of 256

 plot([0:255]/256, p);
 title('Burg Method Spectral Density Estimate');
 xlabel('Normalized frequency'); ylabel('Power/frequency');


This object implements the algorithm, inputs, and outputs described on the Burg Method block reference page. The object properties correspond to the block properties.

Was this topic helpful?