SED navigation bar go to SED home page go to Dataplot home page go to NIST home page SED Home Page SED Staff SED Projects SED Products and Publications Search SED Pages
Dataplot Vol 2 Vol 1

LOW PASS FILTER

Name:
    LOW PASS FILTER (LET)
Type:
    Let Subcommand
Purpose:
    Compute a low-pass filter or a high-pass filter for a variable.
Description:
    Low-pass filters are used to remove high frequency noise from a time series where the time series is assummed to contain equally spaced points. Dataplot computes the low-pass filter using the LOPASS routine from the STARPAC library (developed by Janet Rodgers and Peter Tyrone formerly of NIST). The LOPASS routine is in turn based on the codes of Peter Bloomfield (see Reference section below).

    The low-pass filter contains two basic steps:

    1. Compute symmetric low-pass filter coefficients using a least squares approximation to an ideal low-pass filter (this step is perfomed by the Starpac LPCOEF routine). This routine has convergence factors to reduce overshoot and ripple and has a transfer function which changes from approximately one to zero in a transition band about the ideal cutoff frequency, FC. That is, from (FC - 1/K) to (FC + 1/K).

      You need to specify the cutoff frequency in cycles per sample interval and the number of filter coefficients. The conditions on these choices are:

      • FC must be between 0.0 and 0.5.

      • The number of filter coefficients must be odd.

      • (FC - 1/K) > 0 and (FC + 1/K) < 0.5.

      • Sharp cutoffs occur when 1/K is small.

      • (K-1)/2 data points will be lost from the filtered series.

      The Program example below demonstrates setting these parameters.

    2. The coefficients computed in step 1 are used to filter the original series.

    For any low-pass filter, there is a corresponding high-pass filter equivalent to subtracting the low-pass filtered series from the original series (i.e., you are extracting the high frequency component). Dataplot uses the Starpac HIPASS routine to compute the high-pass filter.

Syntax 1:
    LET <y> = LOW PASS FILTER <x>
                            <SUBSET/EXCEPT/FOR qualification>
    where <x> is a response variable;
                <y> is the response variable after computing the low-pass filter;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.
Syntax 2:
    LET <y> = HIGH PASS FILTER <x>
                            <SUBSET/EXCEPT/FOR qualification>
    where <x> is a response variable;
                <y> is the response variable after computing the high-pass filter;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.
Examples:
    LET YOUT = LOW PASS FILTER Y
    LET YOUT = HIGH PASS FILTER Y
Default:
    None
Synonyms:
    None
Related Commands: Reference:
    Peter Bloomfield, 1976, "Fourier Analysis of Time Series: An Introduction", John Wiley and Sons, p. 149.

    Janet R. Donaldson and Peter V. Tryon (10/5/1987), "User's Guide to STARPAC The Standards Time Series and Regression Package", U.S. Department of Commerce Center for Applied Mathematics National Bureau of Standards Boulder, Colorado 80303

Applications:
    Signal Processing, Time Series
Implementation Date:
    2012/9
Program:
     
    . PURPOSE--REMOVE HIGH FREQUENCY CONTAMINATION FROM A SIGNAL
    . ANALYSIS TECHNIQUE--LOW PASS FILTER (STARPAC ROUTINE LOPASS)
    .
    . -----START POINT-----------------------------------
    .
    DIMENSION 20 VARIABLES
    .
    .      STEP 1-- DEFINE THE PURE SIGNAL DEFINE THE CONTAIMINATION
    .               COMBINE PURE + CONTAMINATION TO YIELD THE OBSERVED
    .               RESPONSE PLOT
    .
    LET X = SEQUENCE 0 .1 25.55
    LET YS = SIN(X)
    LET YN = NORMAL RANDOM NUMBERS FOR I = 1 1 256
    LET YN = YN/10
    LET Y = YS+YN
    MULTIPLOT SCALE FACTOR 2
    MULTIPLOT CORNER COORDINATES 5 5 95 95
    MULTIPLOT 2 2
    YLIMITS -2 2
    Y1LABEL AUTOMATIC
    PLOT YS
    PLOT YN
    PLOT Y
    YLIMITS
    END OF MULTIPLOT
    .
    LET N = SIZE Y
    LET X = SEQUENCE 8 1 249
    MULTIPLOT 2 3
    LET KTERM  = 15
    LET FC = 0.05
    LET YFILTL0 = LOW  PASS FILTER Y
    TITLE FC = 0.05
    PLOT YFILTL0 X
    LET FC = 0.1
    LET YFILTL1 = LOW  PASS FILTER Y
    TITLE FC = 0.1
    PLOT YFILTL1 X
    LET FC = 0.2
    LET YFILTL2 = LOW  PASS FILTER Y
    TITLE FC = 0.2
    PLOT YFILTL2 X
    LET FC = 0.3
    LET YFILTL3 = LOW  PASS FILTER Y
    TITLE FC = 0.3
    PLOT YFILTL3 X
    LET FC = 0.4
    LET YFILTL4 = LOW  PASS FILTER Y
    TITLE FC = 0.4
    PLOT YFILTL4 X
    END OF MULTIPLOT
        
    plot generated by sample program plot generated by sample program

Date created: 01/23/2013
Last updated: 01/23/2013
Please email comments on this WWW page to alan.heckert@nist.gov.