FiniteImpulseResponseFilter - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


SignalProcessing

  

FiniteImpulseResponseFilter

  

filter a signal with a finite impulse response filter

 

Calling Sequence

Parameters

Options

Description

Thread Safety

Examples

Compatibility

Calling Sequence

FiniteImpulseResponseFilter( A, taps, delayline, numiters )

FIRFilter( A, taps, delayline, numiters )

Parameters

A

-

Array of real numeric values; the signal to filter

taps

-

Array of real numeric values; the tap coefficients

delayline

-

(optional) Array of real numeric values; initial values for the delay line

numiters

-

(optional) posint, number of iterations

Options

• 

container : Array, predefined Array for holding the result

Description

• 

The FiniteImpulseResponseFilter( A, taps, delayline, numiters ) command filters the signal (sample) in the array A using the tap coefficients in the array taps.  The taps array may be generated by using the GenerateFiniteImpulseResponseFilterTaps command, or you may provide your own custom filtering coefficients.

• 

The delayline and numiters arguments are optional.  If delayline is provided, it must be an Array of real numeric values and the same length as taps, and numiters must be a positive integer.  By default, the delayline Array is all zero, and numiters defaults to the number of sample points.

• 

Before the code performing the computation runs, the input Arrays A, taps, and (if present) delayline are converted to datatype float[8] if they do not have that datatype already. For this reason, it is most efficient if the input Arrays have this datatype beforehand.

• 

If the container=C option is provided, then the results are put into C and C is returned. With this option, no additional memory is allocated to store the result. The container must be an Array of the same length as A having datatype float[8].

• 

The FIRFilter command is provided as an alias.

Thread Safety

• 

The SignalProcessing[FiniteImpulseResponseFilter] command is thread-safe as of Maple 17.

• 

For more information on thread safety, see index/threadsafe.

Examples

withSignalProcessing:

withplots:

AGenerateTone100,0.6,1π,π:

PASignalPlotA,title=Original Signal:

tapsGenerateFiniteImpulseResponseFilterTaps6,0.2,filtertype=lowpass:

BFiniteImpulseResponseFilterA,taps:

PBSignalPlotB,title=Filtered Signal:

displayPA,PB

AGenerateJaehne512,4095:

PASignalPlotA,title=Signal:

tapsGenerateFiniteImpulseResponseFilterTaps27,0.2,window=Bartlett,normalize=true:

BFiniteImpulseResponseFilterA,taps:

PBSignalPlotB,title=Filtered Signal:

displayPA,PB

Compatibility

• 

The SignalProcessing[FiniteImpulseResponseFilter] command was introduced in Maple 17.

• 

For more information on Maple 17 changes, see Updates in Maple 17.

See Also

SignalProcessing[GenerateFiniteImpulseResponseFilterTaps]

SignalProcessing[InfiniteImpulseResponseFilter]