Tag Info

6

In principle there is no reason why the filter order of a general bandpass or bandstop filter must be even. Such a restriction is a consequence of a specific design procedure. In classic IIR filter design (Butterworth, Chebyshev, Cauer) you start with an analog prototype lowpass filter. Bandpass or bandstop filters are then obtained by a frequency ...

5

alright, there are a couple of different issues that may (or may not) need to be de-conflated. i'm gonna try to keep the number of symbols minimized. $dB_\text{gain}$ is the number of dB gain of the peak (for $dB_\text{gain} > 0$) or cut (for $dB_\text{gain} < 0$). it appears to be 6 dB in the plots. $$A^2 \triangleq 10^{dB_\text{gain}/20}$$ is ...

5

I've had the same question last week, but I've managed to find how to derive it (getting rid of those $z$ terms is indeed tricky). I will give here detailed demonstration of how to arrive to the result given in 1 (with, in your notation, $\alpha = 2 \lambda$). So we define our new discrete-time function transfer as \begin{array}{rcl} H_d(z) &=& ... 4 As already mentioned by other people, the bilinear transform is often used to map a continuous-time system described in the s-domain to a discrete-time system described in the z-domain. However, a bilinear transform is a more general tool that can also be used to transform a discrete-time system to another discrete-time system. Since you didn't give any ... 4 The bi linear transform is the transform from the Laplace Transform Domain to the Z Transform. The Laplace Transform Domain is a regular plane. This transform transforms vertical lines in the Laplace domain into circles in the Z Domain. Hence the Fourier Vertical Line in Laplace Domain (The Y Vertical Lines) is transformed into the unit circle in the Z ... 4 The poles of low pass and high pass Butterworth filters are indeed the same if both filters have the same cut-off frequency. The difference between the two lies in the numerator. A low pass filter has a constant in the numerator, whereas a high pass filter has a constant times s^N, where N is the filter order. The poles of a normalized Butterworth low ... 4 To complement my part to this question: Here is a somewhat shorted answer based upon a manual expansion of the odd function f(x) \begin{align*} f(x)&=\ln\left(\arctan\left(\alpha e^x\right)\right)-\ln\left(\arctan\left(\alpha e^{-x}\right)\right)\\ &=f_1x+f_3x^3+O\left(x^5\right)\tag{1} \end{align*} into a series up to the third order. Some ... 4 It's a matter of perspective if the bilinear transform "fails so miserably" when trying to approximate a derivative. First of all, it's not true that the approximation is quadratic for small \omega, it's linear as it should be:D(e^{j\omega})=\frac{2}{T}\frac{1-e^{-j\omega}}{1+e^{-j\omega}}=\frac{2j}{T}\tan\left(\frac{\omega}{2}\right)\approx \frac{j\...

3

Maybe that's a just a matter of semantics. You can certainly cascade an even order high pass with an odd order lowpass and you get something that's an odd order filter that sure looks like a bandpass. %% odd order bandpass fs = 44100; fc = 1000; [z,p,k] = butter(2,fc/sqrt(2)/fs*2,'high'); sos = zp2sos(z,p,k); [z,p,k] = butter(3,fc*sqrt(2)/fs*2); sos = [sos; ...

3

Let me rephrase your derivation of the bilinear transform to clarify the result. For any $t_0<t-T$ we have $$y(t)=\int_{t_0}^tx(\tau)d\tau=y(t-T)+\int_{t-T}^tx(\tau)d\tau\tag{1}$$ Approximating the right-most integral in $(1)$ by the trapezoidal rule we get $$y(t)\approx y(t-T)+\frac{T}{2}\big(x(t)+x(t-T)\big)\tag{2}$$ Switching over to samples of y(... 3 The problem is in the way you apply the bilinear transform. You have to use the appropriate (pre-)warping of the frequencies. Since the bilinear transform warps the frequency axis, you have to make sure that the corner frequency of the discrete-time filter is correct. One way to do that is as follows. The bilinear transform is defined as $$s=k\frac{z-1}{z+1}... 3 I believe your thinking is correct. For bandpass filters, for each z-plane pole in the positive-frequency range there's a conjugate pole in the z-plane's negative-frequency range. So for bandpass filters there will all be an even number of total z-plane poles (two poles, four poles, six poles, etc.). When using MATLAB's ellipord command for bandpass filters ... 3 The problem as posed in the question appears to have no closed-form solution. As mentioned in the question and shown in other answers, the result can be developed into a series, which can be accomplished by any symbolic math tool such as Mathematica. However, the terms become quite complicated and ugly, and it is unclear how good the approximation is when we ... 3 okay, i promised to put up bounty and i will keep my promise. but i have to confess that i might renege a little bit on being satisfied with just the third derivative of f(x). what i really want are the two coefficients for g(y). so i didn't realize that there was this Wolfram language as an alternative to mathematica or Derive and i didn't realize it ... 3 (Converting comment to answer.) Using Wolfram Alpha, f'''(x) at x=0 evaluates to:$$\begin{align} \\ f'''(0) = & -\frac{6 \alpha^2}{(\alpha^2 + 1)^2 (\arctan(\alpha))^2} \ + \ \frac{2 \alpha}{(\alpha^2 + 1) \arctan(\alpha)} \\ & \quad \quad + \frac{16 \alpha^5}{(\alpha^2 + 1)^3 \arctan(\alpha)} \ + \ \frac{12 \alpha^4}{(\alpha^2 + 1)^3 (\arctan(\... 3 If you read the link which describes the second mapping $$w = \frac{z+1}{z-1}$$ Thus inside of the unit circle in z-plane maps into the left half of w-plane and outside of the unit circle in z-plane maps into the right half of w-plane. Although w-plane seems to be similar to s-plane, quantitatively it is not same It states thatw$is not the$s$plane. ... 3 i really don't wanna slog through your MATLAB code. is this what you're trying to prove? : let$H_\text{a}(s)$be some analog (or "continuous-time") LTI transfer function on the s-plane and$H_\text{d}(z)$be some digital (or "discrete-time") LTI transfer function in the z-plane. $$H_\text{d}(z) = H_\text{a}(s) \Bigg|_{s=\frac{2}{T}\frac{z-1}{z+1}}$$ ... 2 so here are some quantitative results. i plotted spec'd bandwidth$bw$for the digital filter on the x-axis and the resulting digital bandwidth on the y-axis. there are five plots from green to red representing the resonant frequency$\omega_0$normalized by Nyquist:$\frac{\omega_0}{\pi} = $[0.0002 0.2441 0.4880 0.7320 0.9759] so the ... 2 This is an allpass transformation, i.e., the unit circle is mapped to itself. On the unit circle we have $$e^{-j\omega_0}=\frac{1-\alpha e^{j\hat{\omega}_0}}{e^{j\hat{\omega}_0}-\alpha}\tag{1}$$ For given values of$\omega_0$and$\hat{\omega}_0$you can compute$\alpha$from$(1): \begin{align}\alpha&=\frac{1-e^{-j(\omega_0-\hat{\omega}_0)}}{e^{j\... 2 Here's another "justification" for the Bilinear Transform. If you equate the transfer functions, in the s and z domains of the unit sample delay, you have: z^{-1} = e^{-sT} $$which says the same thing as$$ z = e^{sT} $$where T is the sampling period or the reciprocal of the sample rate:$$ T \triangleq \frac{1}{f_\mathrm{s}} $$So the ... 2 The bilinear transform ("Tustin's method") is indeed mainly used for transforming frequency selective filters with magnitude responses that are optimal with respect to some criterium, such as Butterworth, Chebyshev, or Cauer filters. For more general systems, the bilinear transform is usually not the best choice because of the frequency warping, which ... 1 If you want to convert a physical system transfer function the most "accurate" way is usually to convert it by use the "step-invariance" method where you add the effect of your zero-order hold to the Laplace transform of your process and the you convert it to the Z domain. It correctly models the zero-order hold effect of your DAC. A second method that ... 1 there are at least 3, likely more, methods. z = e^{sT} impulse invariant bilinear transform 1 I sadly don't have the reputation to comment on Fat32's answer, but let me try to answer directly instead: the frequency response of a digital filter is always relative to the processing sampling rate. So if you design a filter with cutoff at 100Hz and 1kHz sampling rate, then you are really designing for a normalized cutoff frequency f/f_s of 1/10 and ... 1 An N^{th}-order analog prototype system results after bilinear transform in an N^{th}-order discrete-time system. So the number of zeros and poles remains the same. All zeros at |s|\rightarrow\infty map to z=-1. In your case there will be 6 zeros at z=-1 because there are 6 zeros at |s|\rightarrow\infty. Of course, the magnitude (squared) ... 1 look at MATLAB bilinear(). you are specifying fs=1 in your call to it. if you're gonna do any digital filtering, sometime, somewhere you need to commit to a sampling frequency and you haven't yet. 1 (After some helpful comments, I think I see it a bit more clearly. Here is an attempt at answering my own question, please let me know if I am completely off track.) Answer: In my question I must have misunderstood from where the top expression H(z) comes from. I thought that such an expression was the result of a direct derivation from an analog ... 1 Just wanted to supplement an excellent answer by Matt L., since it was not very clear to me how he calculated the numerical value of k in equation (3). After reading the book "Introduction to signal processing" by Orfandis I have found the formula$$k = \frac{1}{\tan\left(\frac{\omega_c}{2}\right)}$where$\omega_c\$ is the so called digital cutoff ...

Only top voted, non community-wiki answers of a minimum length are eligible