167k views
1 vote
This question requires you to program in matlab

Designing an all-pass filter : An all-pass filter has constant magnitude response at all fre-
quencies, but the phase response will vary with frequency. Show, by directly calculating
the magnitude response of the numerator and denominator separately, that the magnitude
response of the system with transfer function
H(s) = s + a∗
s − a
is 1. Here (·)∗ denote the complex conjugate of (·). This implies that if we design a system that
has a zero at s = −a∗ whenever there is a pole at s = a, we are guaranteed to get constant
magnitude response! Design a second-order (two poles and two zeros; make sure that the
coefficients are real-valued so that each complex pole (or zero) is accompanied by a pole (or
zero) at its complex comjugate position.) all-pass filter with a pole at s = −2000π + j2000π.
Report the transfer function of your design and plot its magnitude response.
Notes: We can graphically see that placing the poles and zeros as described above has constant
magnitude response. To do this, simply show that the length of the line segment that connects
s = a to any point jω on the imaginary axis of the complex s plane is the same as the length
of the line segment that connects the same point on the imaginary axis with the location of
the zero s = −a∗.
You may find the plot of the magnitude response to be very noisy. If this happens, check the
scale of the y axis and make adjustments as needed.

User NightMICU
by
7.0k points

1 Answer

3 votes

Final answer:

The task is to design a second-order all-pass filter with poles and zeros that are complex conjugates of each other, ensuring a constant magnitude response. The transfer function for the filter with the specified pole location of s = -2000π + j2000π is derived to confirm the behavior. MATLAB is then used to plot the magnitude response of the filter.

Step-by-step explanation:

The task involves designing a second-order all-pass filter with specific pole locations. An all-pass filter maintains constant magnitude response but alters the phase. The given transfer function is H(s) = (s + a*) / (s - a), where 'a' is the location of the pole in the s-plane and 'a*' is the complex conjugate representing the zero location. The magnitude of this transfer function should remain at 1 across all frequencies.

To design a filter with a pole at s = -2000π + j2000π, we need to place a zero at s = -(-2000π + j2000π), which simplifies to s = 2000π - j2000π. This ensures the coefficients of the transfer function are real-valued, and the poles and zeros are in complex conjugate pairs.

Therefore, the transfer function for the filter is:

H(s) = ((s - 2000π + j2000π) * (s - 2000π - j2000π)) / ((s + 2000π + j2000π) * (s + 2000π - j2000π))

The magnitude response will be plotted in MATLAB to confirm it remains constant across all frequencies. If the plot is noisy, the y-axis scale can be adjusted for a clearer view.

User Mauro Delrio
by
8.5k points