Digital Signal Processing

Overview of Digital Signal Processing Subroutines

All subroutines and functions available in SAS Viya are listed in Table 1, Table 2, and Table 3. A subset of these routines is available in SAS 9.4. The routines whose names are marked with an asterisk (*) in the tables are not available in SAS 9.4. In each table, the subroutines and functions are divided into categories by functionality, and within each category they are listed in order of most common usage.

The subroutines and functions in Table 1 are supported for digital filters.

Table 1: Subroutines and Functions for Digital Filters

Category Name Functionality
Filter design DFORDER Computes the minimum order that is required for a specific digital filter
DFDESIGN Designs a digital filter that meets the design specification
Data filtering DFFILT Filters a signal by using a digital filter (designed by the DFDESIGN subroutine), with its direct form
DFSOSFILT Filters a signal by using a digital filter (designed by the DFDESIGN subroutine), with its second-order section form
DFMEDFILT Filters a signal by using a nonlinear median filter
Filter visualization DFFREQZ Generates a digital filter’s frequency response by using transfer function coefficients
DFSOSFREQZ Generates a digital filter’s frequency response that corresponds to its second-order section form by using transfer function coefficients
DFFREQZZPK Generates a digital filter’s frequency response by using the transfer function’s zeros, poles, and gain
DFSOSFREQZZPK Generates a digital filter’s frequency response that corresponds to its second-order section form by using the transfer function’s zeros, poles, and gain


The subroutines and functions in Table 2 are supported for signal transforms and operations.

Table 2: Subroutines and Functions for Signal Transforms and Operations

Category Name Functionality
1-D Fourier transform FFT Computes the discrete Fourier transform
IFFT Computes the inverse discrete Fourier transform
FFTC Performs the discrete Fourier transform for complex signals
IFFTC Computes the inverse discrete Fourier transform for complex signals
2-D Fourier transform FFT 2 upper D Superscript asterisk Computes the two-dimensional (2-D) fast Fourier transform of a real 2-D signal
IFFT 2 upper D Superscript asterisk Computes the two-dimensional (2-D) inverse fast Fourier transform of a 2-D signal
Hilbert transform TFHILBERT Computes the Hilbert transform of a discrete time series
Wavelet transform WAVFT Computes a wavelet transform of one-dimensional (1-D) data
WAVGET Returns requested information about a wavelet transform
WAVIFT Inverts a wavelet transform after applying thresholding to the detail coefficients
WAVPRINT Displays information about a wavelet transform
WAVTHRESH Applies specified thresholding to the detail coefficients of a wavelet transform
SCALOGRAM Creates a wavelet scalogram, which shows the relative magnitudes of detail coefficients and the energy in each level
Cepstral analysis RCEPSTRUM Computes the real cepstrum
CCEPSTRUM Computes the complex cepstrum
ICCEPSTRUM Computes the inverse complex cepstrum
Vector convolution DFCONV Computes the convolution of two one-dimensional (1-D) vectors
Instantaneous properties INSTANTTFA Superscript asterisk Calculates instantaneous frequency, phase, and amplitude
Peak finder PEAKINFO Superscript asterisk Outputs information about the peaks in a series
PEAKLOC Superscript asterisk Finds the peaks in a series


The subroutines and functions in Table 3 are supported for time-frequency analysis.

Table 3: Subroutines and Functions for Time-Frequency Analysis

Category Name Functionality
Short-time Fourier transform TFSTFT Computes the short-time Fourier transform
TFWINDOW Computes a window function for a short-time Fourier transform
Short-time power spectral density transform TFSTPPSD Computes the short-time power spectral density
Pseudo-Wigner-Ville transform TFPWV Computes the pseudo-Wigner-Ville transform
Empirical mode decomposition EMD Superscript asterisk Decomposes a time series into multiple intrinsic mode functions and a residual
Hilbert-Huang transform HHT Superscript asterisk Applies the Hilbert-Huang transform to calculate instantaneous amplitude, phase, and frequency
HHTSPECTRUM Superscript asterisk Applies the Hilbert-Huang transform to calculate instantaneous energy as a function of time and instant frequency
Time-frequency visualization SPECTROGRAM Displays a spectrogram of a short-time Fourier transform
SPECTROVIZ Superscript asterisk Displays a spectrogram of a time-frequency analysis


Last updated: July 20, 2026