This is where navigation should be.

FIRFILTER - Construct an FIR filter

Usage

g=firfilter(name,M);
g=firfilter(name,M,...);

Description

firfilter(name,M) creates an FIR filter of length M. This is exactly the same as calling firwin. The name must be one of the accepted window types of firwin.

firfilter(name,M,fc) constructs a filter with a centre frequency of fc measured in normalized frequencies.

If one of the inputs is a vector, the output will be a cell array with one entry in the cell array for each element in the vector. If more input are vectors, they must have the same size and shape and the the filters will be generated by stepping through the vectors. This is a quick way to create filters for filterbank and ufilterbank.

firfilter accepts the following optional parameters:

'fs',fs If the sampling frequency fs is specified then the length M is specified in seconds and the centre frequency fc in Hz.
'complex' Make the filter complex valued if the centre frequency is non-zero. This is the default.
'real' Make the filter real-valued if the centre frequency is non-zero.
'delay',d Set the delay of the filter. Default value is zero.
'causal' Create a causal filter starting at the first sample. If specified, this flag overwrites the delay setting.

It is possible to normalize the impulse response of the filter by passing any of the flags from the setnorm function. The default normalization is 'energy'.

The filter can be used in the pfilt routine to filter a signal, or in can be placed in a cell-array for use with filterbank or ufilterbank.