Method ao/psdvfit


  psdvfit performs a fitting loop to identify model for a psd.
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
  DESCRIPTION: psdvfit fit a partial fraction model to frequency
      response data using  the function utils.math.vcfit.
 
      The function performs a fitting loop to automatically identify model. 
      Output is a model of the spectrum. Fit function is a ratio of
      polynomials in the form of partial fraction expension.
 
               r1              rN
      f(s) = ------- + ... + -------
             s - p1          s - pN
 
      After a first fitting step, the fit can be regularized in order to
      obtain a statistically consistent model for the expected value of the
      spectrum.
      Automatic regularization is obtained checking the difference between
      the maximum of the expected gamma function and the histogram of the
      normalized spectrum (psd divided by the model frequency by
      frequency).
 
      The function can also perform a single loop without taking care of
      the stop conditions. This happens when 'AutoSearch' parameter is
      setted to 'off'.
 
      The method accepts only 1 ao at the input.
 
  CALL:         [fit,confBands,mfhMod,mfhConfBand] = psdvfit(a, pl)
 
  INPUTS:      a  - input AOs to fit.
               pl - parameter list
 
  OUTPUTS:
                fit - ao containing the fitted model.
                confBands - Lower and upper confidence band.
                mfhMod - a mfh model that can be used to evaluate the model
                on a different frequency grid.
                mfhConfBand - mfh models for the confidence bands.
 
 
  Note: Gamma function assumption for the spectrum is strictly true only with
      Gaussian distributed noise (time series). In case the noise in time
      domain is non-Gaussian the Gamma is an approximation based on the
      norilizing properties of the fft. Even if noise series is
      non-Gaussian, real and imaginary part of the fft tend to a Gaussian
      because are the result of the sum of many terms.
 
 
  EXAMPLES:
 
    % Fitting parameter list
    pl_fit = plist(...
    'maxiter',50,...
    'minorder',9,...
    'maxorder',20,...
    'FITTOL',1.7,...
    'Plot','on');
 
    % Do fit
    [fit,confBands,mfhMod,mfhConfBand] = psdvfit(a, pl_fit);
 
 
  Parameters Description
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Method Details
Access public
Defining Class ao
Sealed 0
Static 0

Parameter Description

Default

no description
Key Default Value Options Description
psdvfit
AUTOSEARCH 'on'
  • 'on'
  • 'off'
'on': Parform a full automatic search for the
transfer function order. The fitting
procedure will stop when stop conditions
defined are satisfied.
'off': Perform a fitting loop as long as the
number of iteration reach 'maxiter'. The order
of the fitting function will be that
specified in 'minorder'.
MAXITER 50 none Maximum number of iterations in fit routine.
MINORDER 2 none Minimum order to fit with.
MAXORDER 20 none Maximum order to fit with.
FITTOL 2 none Fit tolerance. Check the maximu spread on the whitened spectrum.
PLOT 'off'
  • 'on'
  • 'off'
Plot results of each fitting step.
CHECKPROGRESS 'off'
  • 'on'
  • 'off'
Display the status of the fit iteration.
DOWNSAMPLESPECTRUM 0
  • 0
  • 1
Decide to downsample the spectrum in order to have independent bins.
DOWNSAMPLEBINS 3 none Number of bins to skip in order to get independence.
REGULARIZE 1
  • 1
  • 0
Regularize data in order to have a statistically consistent model.
REGULARIZECOEFF [] none Regularization coefficient. Leave it empty if you want to do it automatically.

Example

plist('AUTOSEARCH', 'on', 'MAXITER', [50], 'MINORDER', [2], 'MAXORDER', [20], 'FITTOL', [2], 'PLOT', 'off', 'CHECKPROGRESS', 'off', 'DOWNSAMPLESPECTRUM', [false], 'DOWNSAMPLEBINS', [3], 'REGULARIZE', [true], 'REGULARIZECOEFF', [[]])

back to top back to top

Some information of the method ao/psdvfit are listed below:
Class name ao
Method name psdvfit
Category Signal Processing
Package name ltpda
VCS Version 967b0eec0dece803a81af8ef54ad2f8c784b20b2
Min input args 1
Max input args -1
Min output args 1
Max output args -1
Can be used as modifier 0
Supported numeric types {'double'}




©LTP Team