Method ao/buildWhitener1D


  BUILDWHITENER1D builds a whitening filter based on the input frequency-series.
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
  DESCRIPTION:BUILDWHITENER1D builds a whitening filter based on the input frequency-series.
               The filter is built by fitting to the model provided.
               If no model is provided, a fit is made to a spectral-density estimate of the
               input time-series (made using psd+bin_data or lpsd).
               Note: The function assumes that the input model corresponds
               to the one-sided psd of the data to be whitened.
 
  ALGORITHM:
             1) If no model provided, make psd+bin_data or lpsd
                of time-series and take it as a model
                for the data power spectral density
             2) Fit a set of partial fraction z-domain filters using
                utils.math.psd2wf. The fit is automatically stopped when
                the accuracy tolerance is reached.
             3) Convert to array of MIIR filters
             4) Assemble into a parallel filterbank object
 
 
  CALL:         b = buildWhitener1D(a, pl)
                [b1,b2,...,bn] = buildWhitener1D(a1,a2,...,an, pl);
 
  INPUT:
                - as is a time-series analysis object or a vector of
                analysis objects
                - pl is a plist with the input parameters
 
  OUTPUT:
                - b "whitening" filters, stored into a filterbank.
 
  Parameters Description
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Method Details
Access public
Defining Class ao
Sealed 0
Static 0

Parameter Description

Default

no description
Key Default Value Options Description
RANGE [] none The frequency range to evaluate the fitting.
An empty value or [-inf inf] will include the whole range.
The remaining part of the model will be completed according
to the option chosen in the 'complete' parameter.
COMPLETE_HF 'flat'
  • 'flat'
  • 'lowpass'
Choose how to complete the frequency range up to fs/2.
  1. Assumes flat response
  2. Assumes 4 poles low-pass type response
FS [] none The sampling frequency to design the output filter on.
If it is not a positive number, it will be taken from the model
MAXITER 30 none Maximum number of iterations in fit routine.
POLETYPE 1
  • 1
  • 2
  • 3
Choose the pole type for fitting:
  1. use real starting poles
  2. generates complex conjugate poles of the
    type a.*exp(theta*pi*j)with theta = linspace(0,pi,N/2+1)
  3. generates complex conjugate poles of the type
    a.*exp(theta*pi*j)
    with theta = linspace(0,pi,N/2+2)
MINORDER 2 none Minimum order to fit with.
MAXORDER 25 none Maximum order to fit with.
WEIGHTS '1/abs'
  • 'equal'
  • '1/abs'
  • '1/abs^2'
Choose weighting method:
  1. equal weights for each point
  2. weight with 1/abs(model)
  3. weight with 1/abs(model).^2
PLOT 0
  • 0
  • 1
Plot results of each fitting step.
DISP 0
  • 0
  • 1
Display the progress of the fitting iteration.
MSEVARTOL 0.10000000000000001 none Mean Squared Error Variation - Check if the
relative variation of the mean squared error is
smaller than the value specified. This
option is useful for finding the minimum of Chi-squared.
FITTOL 0.01 none Mean Squared Error Value - Check if the mean
squared error value is lower than the value
specified.
RAND_STREAM [] none Internal MATLAB state of the pseudorandom number generator. You can set the state with a structure which should contain all properties of the MATLAB class RandStream
back to top back to top

PSD

no description
Key Default Value Options Description
MODEL 'PSD' none A model estimation technique in the case of tsdata input:
  • PSD - using psd + bin_data
  • LPSD - using lpsd
  • RANGE [] none The frequency range to evaluate the fitting.
    An empty value or [-inf inf] will include the whole range.
    The remaining part of the model will be completed according
    to the option chosen in the 'complete' parameter.
    COMPLETE_HF 'flat'
    • 'flat'
    • 'lowpass'
    Choose how to complete the frequency range up to fs/2.
    1. Assumes flat response
    2. Assumes 4 poles low-pass type response
    FS [] none The sampling frequency to design the output filter on.
    If it is not a positive number, it will be taken from the model
    MAXITER 30 none Maximum number of iterations in fit routine.
    POLETYPE 1
    • 1
    • 2
    • 3
    Choose the pole type for fitting:
    1. use real starting poles
    2. generates complex conjugate poles of the
      type a.*exp(theta*pi*j)with theta = linspace(0,pi,N/2+1)
    3. generates complex conjugate poles of the type
      a.*exp(theta*pi*j)
      with theta = linspace(0,pi,N/2+2)
    MINORDER 2 none Minimum order to fit with.
    MAXORDER 25 none Maximum order to fit with.
    WEIGHTS '1/abs'
    • 'equal'
    • '1/abs'
    • '1/abs^2'
    Choose weighting method:
    1. equal weights for each point
    2. weight with 1/abs(model)
    3. weight with 1/abs(model).^2
    PLOT 0
    • 0
    • 1
    Plot results of each fitting step.
    DISP 0
    • 0
    • 1
    Display the progress of the fitting iteration.
    MSEVARTOL 0.10000000000000001 none Mean Squared Error Variation - Check if the
    relative variation of the mean squared error is
    smaller than the value specified. This
    option is useful for finding the minimum of Chi-squared.
    FITTOL 0.01 none Mean Squared Error Value - Check if the mean
    squared error value is lower than the value
    specified.
    RAND_STREAM [] none Internal MATLAB state of the pseudorandom number generator. You can set the state with a structure which should contain all properties of the MATLAB class RandStream
    NFFT -1 none The number of samples in each fft [default: length of input data].
    A string value containing the variable 'fs' can also be used, e.g.,
    plist('Nfft', '2*fs')
    WIN 'BH92'
    • 'Rectangular'
    • 'Welch'
    • 'Bartlett'
    • 'Hanning'
    • 'Hamming'
    • 'Nuttall3'
    • 'Nuttall4'
    • 'Nuttall3a'
    • 'Nuttall3b'
    • 'Nuttall4a'
    • 'Nuttall4b'
    • 'Nuttall4c'
    • 'BH92'
    • 'SFT3F'
    • 'SFT3M'
    • 'FTNI'
    • 'SFT4F'
    • 'SFT5F'
    • 'SFT4M'
    • 'FTHP'
    • 'HFT70'
    • 'FTSRS'
    • 'SFT5M'
    • 'HFT90D'
    • 'HFT95'
    • 'HFT116D'
    • 'HFT144D'
    • 'HFT169D'
    • 'HFT196D'
    • 'HFT223D'
    • 'HFT248D'
    • 'Kaiser'
    • 'levelledHanning'
    The window to be applied to the data to remove the discontinuities at edges of segments. [default: taken from user prefs]
    Only the design parameters of the window object are used. Enter a string value containing the window name e.g.
    plist('Win', 'Kaiser', 'psll', 200)
    plist('Win', 'BH92')
    PSLL 200 none The peak sidelobe level for Kaiser windows.
    Note: it is ignored for all other windows
    OLAP 50 none The segment percent overlap [-1 == take from window function]
    ORDER, N 1 none The order of segment detrending:
    • -1 - no detrending
    • 0 - subtract mean
    • 1 - subtract linear fit
    • N - subtract fit of polynomial, order N
    NAVS 16 none Force number of averages. If set, and if Nfft was set to 0 or -1,
    the number of points for each window will be calculated to match the request.
    TIMES, SPLIT [] none The time range to analyze. If not empty, sets the time interval to operate on.
    As in ao/split, the interval can be specified by:
    • a vector of doubles
    • a timespan object
    • a cell array of time strings
    • a vector of time objects
    SCALE 'PSD'
    • 'PSD'
    • 'ASD'
    • 'PS'
    • 'AS'
    The scaling of output. Choose from:
    • PSD - Power Spectral Density
    • ASD - Amplitude (linear) Spectral Density
    • PS - Power Spectrum
    • AS - Amplitude (linear) Spectrum
    METHOD 'MEAN' none method for binning. Choose from:
    • mean
    • median
    • max
    • min
    • rms
    • weighted mean (weights can be input or are taken from data dy)
    XSCALE 'LOG'
    • 'LOG'
    • 'LIN'
    scaling of binning. Choose from:
    • log - logaritmic
    • lin - linear
    RESOLUTION 50 none When setting logaritmic x scale, it sets the number of points per decade.
    When setting linear x scale, it sets the number of points.
    XVALS [] none List of x values to evaluate the binning between.
    It may be a vector or an ao, in which case it will take the x field
    INHERIT_DY 1
    • 1
    • 0
    Choose what to do in the case of mean, and bins with only one point. Choose from:
    • 'true' - take the uncertainty from the original data, if defined
    • 'false' - set it to Inf so it weighs 0 in averaged means
    back to top back to top

    LPSD

    no description
    Key Default Value Options Description
    MODEL 'LPSD' none A model estimation technique in the case of tsdata input:
  • PSD - using psd + bin_data
  • LPSD - using lpsd
  • RANGE [] none The frequency range to evaluate the fitting.
    An empty value or [-inf inf] will include the whole range.
    The remaining part of the model will be completed according
    to the option chosen in the 'complete' parameter.
    COMPLETE_HF 'flat'
    • 'flat'
    • 'lowpass'
    Choose how to complete the frequency range up to fs/2.
    1. Assumes flat response
    2. Assumes 4 poles low-pass type response
    FS [] none The sampling frequency to design the output filter on.
    If it is not a positive number, it will be taken from the model
    MAXITER 30 none Maximum number of iterations in fit routine.
    POLETYPE 1
    • 1
    • 2
    • 3
    Choose the pole type for fitting:
    1. use real starting poles
    2. generates complex conjugate poles of the
      type a.*exp(theta*pi*j)with theta = linspace(0,pi,N/2+1)
    3. generates complex conjugate poles of the type
      a.*exp(theta*pi*j)
      with theta = linspace(0,pi,N/2+2)
    MINORDER 2 none Minimum order to fit with.
    MAXORDER 25 none Maximum order to fit with.
    WEIGHTS '1/abs'
    • 'equal'
    • '1/abs'
    • '1/abs^2'
    Choose weighting method:
    1. equal weights for each point
    2. weight with 1/abs(model)
    3. weight with 1/abs(model).^2
    PLOT 0
    • 0
    • 1
    Plot results of each fitting step.
    DISP 0
    • 0
    • 1
    Display the progress of the fitting iteration.
    MSEVARTOL 0.10000000000000001 none Mean Squared Error Variation - Check if the
    relative variation of the mean squared error is
    smaller than the value specified. This
    option is useful for finding the minimum of Chi-squared.
    FITTOL 0.01 none Mean Squared Error Value - Check if the mean
    squared error value is lower than the value
    specified.
    RAND_STREAM [] none Internal MATLAB state of the pseudorandom number generator. You can set the state with a structure which should contain all properties of the MATLAB class RandStream
    KDES 100 none The desired number of averages.
    JDES 1000 none The desired number of spectral frequencies to compute.
    LMIN 0 none The minimum segment length.
    WIN 'BH92'
    • 'Rectangular'
    • 'Welch'
    • 'Bartlett'
    • 'Hanning'
    • 'Hamming'
    • 'Nuttall3'
    • 'Nuttall4'
    • 'Nuttall3a'
    • 'Nuttall3b'
    • 'Nuttall4a'
    • 'Nuttall4b'
    • 'Nuttall4c'
    • 'BH92'
    • 'SFT3F'
    • 'SFT3M'
    • 'FTNI'
    • 'SFT4F'
    • 'SFT5F'
    • 'SFT4M'
    • 'FTHP'
    • 'HFT70'
    • 'FTSRS'
    • 'SFT5M'
    • 'HFT90D'
    • 'HFT95'
    • 'HFT116D'
    • 'HFT144D'
    • 'HFT169D'
    • 'HFT196D'
    • 'HFT223D'
    • 'HFT248D'
    • 'Kaiser'
    • 'levelledHanning'
    The window to be applied to the data to remove the discontinuities at edges of segments. [default: taken from user prefs]
    Only the design parameters of the window object are used. Enter a string value containing the window name e.g.
    plist('Win', 'Kaiser', 'psll', 200)
    plist('Win', 'BH92')
    PSLL 200 none The peak sidelobe level for Kaiser windows.
    Note: it is ignored for all other windows
    OLAP -1 none The segment percent overlap [-1 == take from window function]
    ORDER 0
    • -1
    • 0
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    The order of segment detrending:
    • -1 - no detrending
    • 0 - subtract mean
    • 1 - subtract linear fit
    • N - subtract fit of polynomial, order N
    TIMES [] none The time range to analyze. If not empty, sets the time interval to operate on.
    As in ao/split, the interval can be specified by:
    • a vector of doubles
    • a timespan object
    • a vector of time objects
    SPLIT [] none The time range to analyze. If not empty, sets the time interval to operate on.
    As in ao/split, the interval can be specified by:
    • a vector of doubles
    • a timespan object
    • a vector of time objects
    SCALE 'PSD'
    • 'PSD'
    • 'ASD'
    • 'PS'
    • 'AS'
    The scaling of output. Choose from:
    • PSD - Power Spectral Density
    • ASD - Amplitude (linear) Spectral Density
    • PS - Power Spectrum
    • AS - Amplitude (linear) Spectrum
    back to top back to top

    Some information of the method ao/buildWhitener1D are listed below:
    Class name ao
    Method name buildWhitener1D
    Category Signal Processing
    Package name ltpda
    VCS Version 175910878ca914560542d679d9d392de37438d84
    Min input args 1
    Max input args -1
    Min output args 1
    Max output args -1




    ©LTP Team