FiniteImpulseResponseFilter - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.
Our website is currently undergoing maintenance, which may result in occasional errors while browsing. We apologize for any inconvenience this may cause and are working swiftly to restore full functionality. Thank you for your patience.

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]