# firtype

Type of linear phase FIR filter

## Syntax

• ``t = firtype(b)``
example
• ``t = firtype(d)``
example

## Description

example

````t = firtype(b)` determines the type, `t`, of an FIR filter with coefficients `b`. `t` can be 1, 2, 3, or 4. The filter must be real and have linear phase.```

example

````t = firtype(d)` determines the type, `t`, of an FIR filter, `d`. `t` can be 1, 2, 3, or 4. The filter must be real and have linear phase.```

## Examples

collapse all

### Types of Linear Phase Filters

Design two FIR filters using the window method, one of even order and the other of odd order. Determine their types and plot their impulse responses.

```subplot(2,1,1) b = fir1(8,0.5); impz(b), title(['Type ' int2str(firtype(b))]) subplot(2,1,2) b = fir1(9,0.5); impz(b), title(['Type ' int2str(firtype(b))]) ```

Design two equiripple Hilbert transformers, one of even order and the other of odd order. Determine their types and plot their impulse responses.

```subplot(2,1,1) b = firpm(8,[0.2 0.8],[1 1],'hilbert'); impz(b), title(['Type ' int2str(firtype(b))]) subplot(2,1,2) b = firpm(9,[0.2 0.8],[1 1],'hilbert'); impz(b), title(['Type ' int2str(firtype(b))]) ```

### Types of FIR digitalFilter Objects

Use `designfilt` to design the filters from the previous example. Display their types.

```d1 = designfilt('lowpassfir','DesignMethod','window', ... 'FilterOrder',8,'CutoffFrequency',0.5); disp(['d1 is of type ' int2str(firtype(d1))]) d2 = designfilt('lowpassfir','DesignMethod','window', ... 'FilterOrder',9,'CutoffFrequency',0.5); disp(['d2 is of type ' int2str(firtype(d2))]) d3 = designfilt('hilbertfir','DesignMethod','equiripple', ... 'FilterOrder',8,'TransitionWidth',0.4); disp(['d3 is of type ' int2str(firtype(d3))]) d4 = designfilt('hilbertfir','DesignMethod','equiripple', ... 'FilterOrder',9,'TransitionWidth',0.4); disp(['d4 is of type ' int2str(firtype(d4))]) ```
```d1 is of type 1 d2 is of type 2 d3 is of type 3 d4 is of type 4 ```

## Input Arguments

collapse all

### `b` — Filter coefficientsvector

Filter coefficients of the FIR filter, specified as a double- or single-precision real-valued row or column vector.

Data Types: `double` | `single`

### `d` — FIR filter`digitalFilter` object | filter System object | `dfilt` object

FIR filter, specified as any of the following:

• A `digitalFilter` object. Use `designfilt` to generate a digital filter based on frequency-response specifications.

• A Filter System object™. You can use this input if you have a license for DSP System Toolbox™ software. `firtype` supports the following Filter System objects:

• A `dfilt` filter object. You can use this input if you have a license for DSP System Toolbox software.

## Output Arguments

collapse all

### `t` — Filter type1 | 2 | 3 | 4

Filter type, returned as either 1, 2, 3, or 4. Filter types are defined as follows:

• Type 1 — Even-order symmetric coefficients

• Type 2 — Odd-order symmetric coefficients

• Type 3 — Even-order antisymmetric coefficients

• Type 4 — Odd-order antisymmetric coefficients