
dfiltlp(1)                   Khoros                    dfiltlp(1)

PROGRAM
     dfiltlp - 1D lowpass frequency domain filter design

SYNTAX
     dfiltlp

     -o             resulting output file (ascii polynomial file)

     [-h]           sampling frequency in hertz

     [-f1]          digital cutoff frequency in hertz

     [-f2]          digital rejection frequency in hertz

     [-tc]          gain at passband edge

     [-tr]          gain at stopband edge

     [-c]           filter class (0 = butterworth; 1 = chebychev
                    i; 2 = chebychev ii):
                    0 (butterworth),
                    1 (chebychev i),
                    or 2 (chebychev ii)
                       [default = 0]

     [-V]           Gives the version for dfiltlp

     [-U]           Gives the usage for dfiltlp

     [-P]           Prompts for command line options

     [-A [file1]]   Creates the answer file called dfiltlp.ans or
                    file1

     [-a [file1]]   Uses dfiltlp.ans or file1 as the answer file

DESCRIPTION
     dfiltlp is a low pass IIR filter design program.  It is
     capable of designing Butterworth, Chebychev I, and Chebychev
     II class filters.  A filter designed by this program will be
     an even order filter consisting of n/2 2nd order stages in a
     cascade structure, where n is the order of the filter.  The
     filter equation is output in ASCII form as a polynomial
     function of z.

     Each second order stage is of the form:

                    a + b*z^-1 + c*z^-2
             S(z) = -------------------
                    1 + d*z^-1 + e*z^-2

     where a,b, and c are the filter stage's numerator coeffi-
     cients, and d and e are the denominator coefficients.  The
     values of the coefficients are determined by applying a
     design algorithm based on the filter class.

     The user specifies cutoff and rejection frequencies as well
     as epsilon and lambda, two parameters that are related to
     the cutoff and rejection tolerances by:

             tc = 1/(1+epsilon^2)
             tr = 1/(1+lambda^2)

     where tc is the cutoff tolerance, and tr is the rejection
     tolerance.

     Butterworth Filters

     Butterworth filters are characterized by the property that
     the magnitude response is maximally flat in the passband.
     For an nth order filter, the first 2n-1 derivatives of the
     magnitude squared spectrum are 0 for w = 0.  A second
     characteristic is that the magnitude spectrum is monotonic
     in both the passband and the stop band.  A concavity change
     occurs at w = wc, the 3dB cutoff frequency.

     Chebychev I Filters

     Chebychev I class filters are characterized by the property
     that the magnitude response in the pass band is equiripple,
     while it is monotonic in the stop band.

     Chebychev II Filters

     Chebychev II class filters are characterized by the property
     that the magnitude response in the pass band is monotonic,
     while in the stop band it is equiripple.

REQUIRED ARGUMENTS
     -o     type: outfile
            desc: resulting output file (ascii polynomial file)

OPTIONAL ARGUMENTS
     -h     type: float
            desc: sampling frequency in hertz
            default: 1
            bounds: value > 0.0

     -f1    type: float
            desc: digital cutoff frequency in hertz
            default: 0.25
            bounds: value > 0.0

     -f2    type: float
            desc: digital rejection frequency in hertz
            default: 0.4
            bounds: value > 0.0

     -tc    type: float
            desc: gain at passband edge
            default: 0.707
            bounds: 0.000000 < [-tc] < 1.000000

     -tr    type: float
            desc: gain at stopband edge
            default: 0.316
            bounds: 0.000000 < [-tr] < 1.000000

     -c     type: integer
            desc: filter class (0 = butterworth; 1 = chebychev i;
            2 = chebychev ii)
            allowed values:
            0 (butterworth),
            1 (chebychev i),
            or 2 (chebychev ii)

EXAMPLES
SEE ALSO
     intro(1), verror(3), vgparms(3), vutils(3), ldfiltlp(3)
     ldfiltlp(3), dzresp(1), dfilthp(1)

RESTRICTIONS
     Limite to a maximum of 100 stages.

COPYRIGHT
     Copyright 1992, University of New Mexico.  All rights
     reserved.

Khoros                    Release: 1.0                          1

