Accelerating the pace of engineering and science

# dfilt.df1t

Discrete-time, direct-form I transposed filter

## Syntax

Hd = dfilt.df1t(b,a)
Hd = dfilt.df1t

## Description

Hd = dfilt.df1t(b,a) returns a discrete-time, direct-form I transposed filter, Hd, with numerator coefficients b and denominator coefficients a. The filter states for this object are stored in a filtstates object.

Hd = dfilt.df1t returns a default, discrete-time, direct-form I transposed filter, Hd, with b=1 and a=1. This filter passes the input through to the output unchanged.

 Note   The leading coefficient of the denominator a(1) cannot be 0.

To display the filter states, use this code to access the filtstates object.

```Hs = Hd.states     % Where Hd is the dfilt.df1 object and
double (Hs)        % Hs is the filtstates object
```

The vector of states is:

$\left(\begin{array}{c}zb\left(1\right)\\ zb\left(2\right)\\ \cdots \\ zb\left(M\right)\\ za\left(1\right)\\ za\left(2\right)\\ \cdots \\ za\left(N\right)\end{array}\right)$

Alternatively, you can access the states in the filtstates object:

```b = [0.05 0.9 0.05];
Hd = dfilt.df1t(b,1);
Hd.States
% Returns
%  Numerator: [2x1 double]
%  Denominator: [0x1 double]
Hd.States.Numerator(1)=1; %Set zb(1) equal to 1.```

## Examples

Create a direct-form I transposed discrete-time filter with coefficients from a fourth-order lowpass Butterworth design:

```[b,a] = butter(4,.5);
Hd = dfilt.df1t(b,a)
```