# Transfer Function from input to node [closed]

From the IIR filter flow graph below i don't understand how the transfer function is calculated in every node:

• Cross-posted on math.SE. Already answered there. – Matt L. May 29 '13 at 20:33
• Duplicate of: click – jojek Apr 23 '14 at 6:40

There are different ways to do this. Here is an example of the straight forward way. First write down the difference equations and corresponding z-transforms

$p_n^1 = bc_2x_n -a_2y_n \Leftrightarrow P^1(z) = bc_2X(z) - a_2Y(z)$

$y_n = bx_n + p^3_{n-1} \Leftrightarrow Y(z) = bX(z) + z^{-1}P^3(z)$

$p^3_n = p^1_{n-1} + p^2_n \Leftrightarrow P^3(z) = z^{-1}P^1(z) + P^2(z)$

$p^2_n = bc_1x_n - a_1y_n \Leftrightarrow P^2(z) = bc_1X(z) - a_1Y(z)$

Then obtain an expression for $Y(z)$ that only depends on $X(z)$ and $P^1(z)$ $Y(z) = bX(z) + z^{-1}[z^{-1}P^1(z) + P^2(z)]$ $Y(z) = bX(z) + z^{-1}[z^{-1}P^1(z) + bc_1X(z) - a_1Y(z)]$ $Y(z) = bX(z) + z^{-2}P^1(z) + bc_1z^{-1}X(z) - a_1z^{-1}Y(z)$ $Y(z)[1 + a_1z^{-1}] = [b+bc_1z^{-1}]X(z) + z^{-2}P^1(z)$ $Y(z) = \frac{b+bc_1z^{-1}}{1 + a_1z^{-1}}X(z) + \frac{z^{-2}}{1 + a_1z^{-1}}P^1(z)$

Then eliminating $Y(z)$ in the expression for $P^1(z)$

$P^1(z) = bc_2X(z) - a_2Y(z)$ $P^1(z) = bc_2X(z) - a_2[\frac{b+bc_1z^{-1}}{1 + a_1z^{-1}}X(z) + \frac{z^{-2}}{1 + a_1z^{-1}}P^1(z) ]$ $P^1(z)[1+\frac{a_2z^{-2}}{1 + a_1z^{-1}}] = [bc_2 - \frac{a_2(b+bc_1z^{-1})}{1 + a_1z^{-1}}]X(z)$ $P^1(z)[\frac{1 + a_1z^{-1}+a_2z^{-2}}{1 + a_1z^{-1}}] = \frac{bc_2(1 + a_1z^{-1}) -a_2(b+bc_1z^{-1})}{1 + a_1z^{-1}}]X(z)$

$\frac{P^1(z)}{X(z)} = \frac{bc_2(1 + a_1z^{-1}) -a_2(b+bc_1z^{-1})}{1 + a_1z^{-1}+a_2z^{-2}}$ $\frac{P^1(z)}{X(z)} = \frac{bc_2 + bc_2a_1z^{-1} -a_2b-a_2bc_1z^{-1}}{1 + a_1z^{-1}+a_2z^{-2}}$

$\frac{P^1(z)}{X(z)} = b\frac{c_2 -a_2 + (c_2a_1-a_2c_1)z^{-1}}{1 + a_1z^{-1}+a_2z^{-2}}$

Your expression for the transfer function to node 1 is missing the input gain $b$.

Anyway, another way to derive expressions for transfer functions is to use something called Mason's rule. See here wikimason.