# How would I calculate the state-variables of digital biquad filter (direct form II transposed) at steady-state?

I'm attempting to calculate the steady-state state variables for a digital biquad filter direct form II (transposed). Illustration

For example, let assume the filter is fed a constant input of magnitude C. What would be the best method to calculate the internal state variables as the filter approaches steady state?

When I run a simulation, it appears that S1 and S2 are negatives of one another (S1 = -S2). Is there a way to calculate the exact values?

My best guess is that I need to set-up a system of equations and then find the steady-state output (given constant input C). However, my calculations seem to fall apart when I actually try to doing them.

Edit: So after working this problem a little longer, I was able to determine the following:

$$S_{1}[n] = X[n]\cdot (Gain_{DC} - b_{0})$$

The DC gain is then found by taking the Z transform of difference equations and setting Z = 1.

Consider a discrete-time LTI system (that's your second order stage) described by a LCCDE in the form of a recursion equation:

$$y[n] = a y[n-1] + b y[n-2] + c x[n] + d x[n-1]$$

where $a,b,c,d$ are real or complex constants (coefficients of your IIR filter) and the values $y[n-1],y[n-2]$ are previous values of the output, where as $y[n]$ is the current value of it. And $x[n],x[n-1]$ are the current and previous values of the input respectively.

In your case, you assume a constant input $x[n] = C$ for all $n \ge 0$, hence you have $x[n] = C$ and $x[n-1] = C$ as $n \to \infty$. Now assuming that the filter has reached its steady-state output implies that $$y[n] = y[n-1] = y[n-2] = K$$ as $n \to \infty$

Hence putting those values into the recursion equation yeilds a relation between output $K$ and input $C$ as:

$$K = a*K + b*K + c*C + d*C$$ which can be arranged to yield:

$$K(1-a-b) = C(c+d)$$

At this point you tell us that output is $K=20$ mm, then you can find the corresponding input as $x = C = 20*(1-a-b)/(c+d)$, and your states will be:

$$y[n-1] = y[n-2]= K , x[n] = x[n-1] =x[n-2] = C$$

• Good insight. I wasn't immediately realizing the y[n]=y[n−1], x[n]=x[n−1], etc. which makes this problem rather trivial. – Izzo Aug 3 '18 at 19:29
• Yes, that makes the analysis instant ! – Fat32 Aug 3 '18 at 19:29