Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Bilinear transform
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Frequency warping == To determine the frequency response of a continuous-time filter, the [[transfer function]] <math> H_a(s) </math> is evaluated at <math>s = j \omega_a </math> which is on the <math> j \omega </math> axis. Likewise, to determine the frequency response of a discrete-time filter, the transfer function <math> H_d(z) </math> is evaluated at <math>z = e^{ j \omega_d T} </math> which is on the unit circle, <math> |z| = 1 </math>. The bilinear transform maps the <math> j \omega </math> axis of the ''s''-plane (which is the domain of <math> H_a(s) </math>) to the unit circle of the ''z''-plane, <math> |z| = 1 </math> (which is the domain of <math> H_d(z) </math>), but it is '''not''' the same mapping <math> z = e^{sT} </math> which also maps the <math> j \omega </math> axis to the unit circle. When the actual frequency of <math> \omega_d </math> is input to the discrete-time filter designed by use of the bilinear transform, then it is desired to know at what frequency, <math> \omega_a </math>, for the continuous-time filter that this <math> \omega_d </math> is mapped to. :<math>H_d(z) = H_a \left( \frac{2}{T} \frac{z-1}{z+1}\right) </math> :{| |- |<math>H_d(e^{ j \omega_d T}) </math> |<math>= H_a \left( \frac{2}{T} \frac{e^{ j \omega_d T} - 1}{e^{ j \omega_d T} + 1}\right) </math> |- | |<math>= H_a \left( \frac{2}{T} \cdot \frac{e^{j \omega_d T/2} \left(e^{j \omega_d T/2} - e^{-j \omega_d T/2}\right)}{e^{j \omega_d T/2} \left(e^{j \omega_d T/2} + e^{-j \omega_d T/2 }\right)}\right) </math> |- | |<math>= H_a \left( \frac{2}{T} \cdot \frac{\left(e^{j \omega_d T/2} - e^{-j \omega_d T/2}\right)}{\left(e^{j \omega_d T/2} + e^{-j \omega_d T/2 }\right)}\right) </math> |- | |<math>= H_a \left(j \frac{2}{T} \cdot \frac{ \left(e^{j \omega_d T/2} - e^{-j \omega_d T/2}\right) /(2j)}{\left(e^{j \omega_d T/2} + e^{-j \omega_d T/2 }\right) / 2}\right) </math> |- | |<math>= H_a \left(j \frac{2}{T} \cdot \frac{ \sin(\omega_d T/2) }{ \cos(\omega_d T/2) }\right) </math> |- | |<math>= H_a \left(j \frac{2}{T} \cdot \tan \left( \omega_d T/2 \right) \right) </math> |} This shows that every point on the unit circle in the discrete-time filter z-plane, <math>z = e^{ j \omega_d T}</math> is mapped to a point on the <math>j \omega</math> axis on the continuous-time filter s-plane, <math>s = j \omega_a</math>. That is, the discrete-time to continuous-time frequency mapping of the bilinear transform is :<math> \omega_a = \frac{2}{T} \tan \left( \omega_d \frac{T}{2} \right) </math> and the inverse mapping is :<math> \omega_d = \frac{2}{T} \arctan \left( \omega_a \frac{T}{2} \right). </math> The discrete-time filter behaves at frequency <math>\omega_d</math> the same way that the continuous-time filter behaves at frequency <math> (2/T) \tan(\omega_d T/2) </math>. Specifically, the gain and phase shift that the discrete-time filter has at frequency <math>\omega_d</math> is the same gain and phase shift that the continuous-time filter has at frequency <math>(2/T) \tan(\omega_d T/2)</math>. This means that every feature, every "bump" that is visible in the frequency response of the continuous-time filter is also visible in the discrete-time filter, but at a different frequency. For low frequencies (that is, when <math>\omega_d \ll 2/T</math> or <math>\omega_a \ll 2/T</math>), then the features are mapped to a ''slightly'' different frequency; <math>\omega_d \approx \omega_a </math>. One can see that the entire continuous frequency range : <math> -\infty < \omega_a < +\infty </math> is mapped onto the fundamental frequency interval : <math> -\frac{\pi}{T} < \omega_d < +\frac{\pi}{T}. </math> The continuous-time filter frequency <math> \omega_a = 0 </math> corresponds to the discrete-time filter frequency <math> \omega_d = 0 </math> and the continuous-time filter frequency <math> \omega_a = \pm \infty </math> correspond to the discrete-time filter frequency <math> \omega_d = \pm \pi / T. </math> One can also see that there is a nonlinear relationship between <math> \omega_a </math> and <math> \omega_d.</math> This effect of the bilinear transform is called '''frequency warping'''. The continuous-time filter can be designed to compensate for this frequency warping by setting <math> \omega_a = \frac{2}{T} \tan \left( \omega_d \frac{T}{2} \right) </math> for every frequency specification that the designer has control over (such as corner frequency or center frequency). This is called '''pre-warping''' the filter design. It is possible, however, to compensate for the frequency warping by pre-warping a frequency specification <math> \omega_0 </math> (usually a resonant frequency or the frequency of the most significant feature of the frequency response) of the continuous-time system. These pre-warped specifications may then be used in the bilinear transform to obtain the desired discrete-time system. When designing a digital filter as an approximation of a continuous time filter, the frequency response (both amplitude and phase) of the digital filter can be made to match the frequency response of the continuous filter at a specified frequency <math> \omega_0 </math>, as well as matching at DC, if the following transform is substituted into the continuous filter transfer function.<ref>{{cite book |last=Astrom |first=Karl J. |date=1990 |title=Computer Controlled Systems, Theory and Design |edition=Second |publisher=Prentice-Hall |page=212 |isbn=0-13-168600-3}}</ref> This is a modified version of Tustin's transform shown above. :<math>s \leftarrow \frac{\omega_0}{\tan\left(\frac{\omega_0 T}{2}\right)} \frac{z - 1}{z + 1}.</math> However, note that this transform becomes the original transform :<math>s \leftarrow \frac{2}{T} \frac{z - 1}{z + 1}</math> as <math> \omega_0 \to 0 </math>. The main advantage of the warping phenomenon is the absence of aliasing distortion of the frequency response characteristic, such as observed with [[Impulse invariance]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)