Podcast #128: We chat with Kent C Dodds about why he loves React and discuss what life was like in the dark days before Git. Listen now.
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 ...


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\...


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 ...


3

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) &=& ...


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 that $w$ 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}} $$ ...


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

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

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 ...


2

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 ...


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

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 ...


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\...


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

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