Transfer Functions

Zeroes and Poles

Suppose that we represent a transfer function as:

To find the zeroes of a transfer function, solve for such that

Similarly, to find the poles of a transfer function, solve for such that

Solving for roots in polynomials may result in complex and/or repeated roots.

Factoring roots with NumPy

import numpy as np
 
coeffs = [1, -0.25, -1, -1.2]
roots = np.roots(coeffs)
print(roots)

Plotting roots with matplotlib

import matplotlib.pyplot as plt
 
fig, ax = plt.subplots(figsize=(5,5))
 
# draw unit circle
theta = np.linspace(0, 2*np.pi, 400)
ax.plot(np.cos(theta), np.sin(theta))
 
# plot roots
ax.scatter(roots.real, roots.imag, marker='o')
 
# set up axes
ax.axhline(0)
ax.axvline(0)
ax.set_aspect('equal', adjustable='box')
ax.set_xlabel('Re')
ax.set_ylabel('Im')
plt.tight_layout()
plt.show()

First-Difference Filters

Impulse Function:

Transfer Function:

Cascaded First-Difference Filters Example

Find the transfer function for a third-order cascade of first-difference filters.

The transfer function for a single first-difference filter is . To cascade this filter, we multiply it by itself. Thus,

Alternatively, if we represent the first-difference filter transfer function as , then:

This fraction form makes it easier to find the zeroes and pole of the filter.

Inverse Z-transforms

Properties

Linearity

If and , then:

Time-Shifting

Transforms to Know

Polynomial

Polynomial Example

Find the impulse function for .
Using :

Geometric Series

Geometric Series Example

Find the impulse function for the system .
We start off by putting the equation in standard form:

Then, using Z-transform’s time-shifting property , the equation can be represented in the -domain:

We can then organize this equation to solve for the transfer function:

This can be rewritten using partial fraction decomposition:

Partial Fraction Decomposition Review!

Multiply both sides with to get:

When , gets cancelled out and we can solve for :

Similarly, when , we can solve for B:

We can plug these values back into the above equation.

Finally, using the transform ,