Main Content

help

Help for design method with filter specification

Syntax

help(d,'designmethod')

Description

help(d,'designmethod') displays help in the command window for the design algorithm designmethod for the current specifications of the filter specification object d. designmethod must be one of the design algorithms returned by designmethods for d, the design object.

Examples

collapse all

Get specific help for designing lowpass Butterworth filters.

The first lowpass filter uses the default specification 'Fp,Fst,Ap,Ast' and returns help text specific to the specification.

d = fdesign.lowpass;
designmethods(d,Systemobject=true)
Design Methods that support System objects for class fdesign.lowpass (Fp,Fst,Ap,Ast):


butter
cheby1
cheby2
ellip
equiripple
ifir
kaiserwin
multistage
help(d,'butter')
 DESIGN Design a Butterworth IIR filter.
    HD = DESIGN(D, 'butter') designs a Butterworth filter specified by the
    FDESIGN object D, and returns the DFILT/MFILT object HD.
 
    HD = DESIGN(D, ..., 'SystemObject', true) implements the filter, HD,
    using a System object instead of a DFILT/MFILT object.
 
    HD = DESIGN(..., 'FilterStructure', STRUCTURE) returns a filter with the
    structure STRUCTURE.  STRUCTURE is 'df2sos' by default and can be any of
    the following:

    'df1sos'
    'df2sos'
    'df1tsos'
    'df2tsos'
    'cascadeallpass'
    'cascadewdfallpass'
 
    Some of the listed structures may not be supported by System object
    filters. Type validstructures(D, 'butter', 'SystemObject', true) to
    get a list of structures supported by System objects.
 
    HD = DESIGN(..., 'MatchExactly', MATCH) designs a Butterworth filter
    and matches the frequency and magnitude specification for the band
    MATCH exactly.  The other band will exceed the specification.  MATCH
    can be 'stopband' or 'passband' and is 'stopband' by default.
 
    HD = DESIGN(..., 'SOSScaleNorm', NORM) designs an SOS filter and scales
    the coefficients using the P-Norm NORM. NORM can be either a 
    discrete-time-domain norm or a frequency-domain norm. Valid time-domain 
    norms are 'l1','l2', and 'linf'. Valid frequency-domain norms are 
    'L1','L2', and 'Linf'. Note that L2-norm is equal to l2-norm 
    (Parseval's theorem) but the same is not true for other norms.
    
    The different norms can be ordered in terms of how stringent they are 
    as follows: 'l1' >= 'Linf' >= 'L2' = 'l2' >= 'L1' >= 'linf'.
    Using the most stringent scaling, 'l1', the filter is the least prone 
    to overflow, but also has the worst signal-to-noise ratio. Linf-scaling is 
    the most commonly used scaling in practice.
    
    Scaling is turned off by default, which is equivalent to setting
    SOSScaleNorm = ''.
 
    HD = DESIGN(..., 'SOSScaleOpts', OPTS) designs an SOS filter and scales
    the coefficients using an FDOPTS.SOSSCALING object OPTS.  Scaling options 
    are:
    Property                Default     Description/Valid values
    ---------               -------     ------------------------
    'sosReorder'            'auto'      Reorder section prior to scaling.
                                        {'auto','none','up','down','lowpass',
                                         'highpass','bandpass','bandstop'}
    'MaxNumerator'          2           Maximum value for numerator coefficients
    'NumeratorConstraint'   'none'      {'none', 'unit', 'normalize','po2'}
    'OverflowMode'          'wrap'      {'wrap','saturate'}
    'ScaleValueConstraint'  'unit'      {'unit','none','po2'}
    'MaxScaleValue'         'Not used'  Maximum value for scale values
    
    When sosReorder is set to 'auto', the sections will be automatically
    reordered depending on the response type of the design (lowpass,
    highpass, etc.).
    
    Note that 'MaxScaleValue' will only be used when 'ScaleValueConstraint'
    is set to something other than 'unit'. If 'MaxScaleValue' is set to a
    number, the 'ScaleValueConstraint' will be changed to 'none'. Further,
    if SOSScaleNorm is off (as it is by default), then all the SOSScaleOpts
    will be ignored.
 
    For more information about P-Norm and scaling options see help for DFILT\SCALE.
 
    % Example #1 - Compare passband and stopband MatchExactly.
       h     = fdesign.lowpass('Fp,Fst,Ap,Ast', .1, .3, 1, 60);
       Hd    = design(h, 'butter', 'MatchExactly', 'passband');
       Hd(2) = design(h, 'butter', 'MatchExactly', 'stopband');
       
       % Compare the passband edges in FVTool.
       fvtool(Hd);
       axis([.09 .11 -2 0]);
 

Note the discussion of the MatchExactly input option. When you use a design object that uses a different specification, such as 'N,F3dB', the help content for the butter design method changes.

In this case, the MatchExactly option does not appear in the help because it is not an available input argument for the specification 'N,F3dB'.

d = fdesign.lowpass('N,F3dB')
d = 
  lowpass with properties:

               Response: 'Lowpass'
          Specification: 'N,F3dB'
            Description: {2x1 cell}
    NormalizedFrequency: 1
            FilterOrder: 10
                   F3dB: 0.5000

designmethods(d,Systemobject=true)
Design Methods that support System objects for class fdesign.lowpass (N,F3dB):


butter
maxflat
help(d,'butter')
 DESIGN Design a Butterworth IIR filter.
    HD = DESIGN(D, 'butter') designs a Butterworth filter specified by the
    FDESIGN object D, and returns the DFILT/MFILT object HD.
 
    HD = DESIGN(D, ..., 'SystemObject', true) implements the filter, HD,
    using a System object instead of a DFILT/MFILT object.
 
    HD = DESIGN(..., 'FilterStructure', STRUCTURE) returns a filter with the
    structure STRUCTURE.  STRUCTURE is 'df2sos' by default and can be any of
    the following:

    'df1sos'
    'df2sos'
    'df1tsos'
    'df2tsos'
    'cascadeallpass'
    'cascadewdfallpass'
 
    Some of the listed structures may not be supported by System object
    filters. Type validstructures(D, 'butter', 'SystemObject', true) to
    get a list of structures supported by System objects.
 
    HD = DESIGN(..., 'SOSScaleNorm', NORM) designs an SOS filter and scales
    the coefficients using the P-Norm NORM. NORM can be either a 
    discrete-time-domain norm or a frequency-domain norm. Valid time-domain 
    norms are 'l1','l2', and 'linf'. Valid frequency-domain norms are 
    'L1','L2', and 'Linf'. Note that L2-norm is equal to l2-norm 
    (Parseval's theorem) but the same is not true for other norms.
    
    The different norms can be ordered in terms of how stringent they are 
    as follows: 'l1' >= 'Linf' >= 'L2' = 'l2' >= 'L1' >= 'linf'.
    Using the most stringent scaling, 'l1', the filter is the least prone 
    to overflow, but also has the worst signal-to-noise ratio. Linf-scaling is 
    the most commonly used scaling in practice.
    
    Scaling is turned off by default, which is equivalent to setting
    SOSScaleNorm = ''.
 
    HD = DESIGN(..., 'SOSScaleOpts', OPTS) designs an SOS filter and scales
    the coefficients using an FDOPTS.SOSSCALING object OPTS.  Scaling options 
    are:
    Property                Default     Description/Valid values
    ---------               -------     ------------------------
    'sosReorder'            'auto'      Reorder section prior to scaling.
                                        {'auto','none','up','down','lowpass',
                                         'highpass','bandpass','bandstop'}
    'MaxNumerator'          2           Maximum value for numerator coefficients
    'NumeratorConstraint'   'none'      {'none', 'unit', 'normalize','po2'}
    'OverflowMode'          'wrap'      {'wrap','saturate'}
    'ScaleValueConstraint'  'unit'      {'unit','none','po2'}
    'MaxScaleValue'         'Not used'  Maximum value for scale values
    
    When sosReorder is set to 'auto', the sections will be automatically
    reordered depending on the response type of the design (lowpass,
    highpass, etc.).
    
    Note that 'MaxScaleValue' will only be used when 'ScaleValueConstraint'
    is set to something other than 'unit'. If 'MaxScaleValue' is set to a
    number, the 'ScaleValueConstraint' will be changed to 'none'. Further,
    if SOSScaleNorm is off (as it is by default), then all the SOSScaleOpts
    will be ignored.
 
    For more information about P-Norm and scaling options see help for DFILT\SCALE.
 
    % Example #1 - Design a lowpass Butterworth filter in the DF2TSOS structure.
       h  = fdesign.lowpass('N,F3dB');
       Hd = design(h, 'butter', 'FilterStructure', 'df2tsos');
 

Version History

Introduced in R2011a