The bilinear transform (also known as Tustin's method) is used in digital signal processing and discretetime control theory to transform continuoustime system representations to discretetime and vice versa.
The bilinear transform is a special case of a conformal mapping (namely, the Möbius transformation), often used to convert a transfer function H_a(s) \ of a linear, timeinvariant (LTI) filter in the continuoustime domain (often called an analog filter) to a transfer function H_d(z) \ of a linear, shiftinvariant filter in the discretetime domain (often called a digital filter although there are analog filters constructed with switched capacitors that are discretetime filters). It maps positions on the j \omega \ axis, Re[s]=0 \ , in the splane to the unit circle, z = 1 \ , in the zplane. Other bilinear transforms can be used to warp the frequency response of any discretetime linear system (for example to approximate the nonlinear frequency resolution of the human auditory system) and are implementable in the discrete domain by replacing a system's unit delays \left( z^{1} \right) \ with first order allpass filters.
The transform preserves stability and maps every point of the frequency response of the continuoustime filter, H_a(j \omega_a) \ to a corresponding point in the frequency response of the discretetime filter, H_d(e^{j \omega_d T}) \ although to a somewhat different frequency, as shown in the Frequency warping section below. This means that for every feature that one sees in the frequency response of the analog filter, there is a corresponding feature, with identical gain and phase shift, in the frequency response of the digital filter but, perhaps, at a somewhat different frequency. This is barely noticeable at low frequencies but is quite evident at frequencies close to the Nyquist frequency.
Discretetime approximation
The bilinear transform is a firstorder approximation of the natural logarithm function that is an exact mapping of the zplane to the splane. When the Laplace transform is performed on a discretetime signal (with each element of the discretetime sequence attached to a correspondingly delayed unit impulse), the result is precisely the Z transform of the discretetime sequence with the substitution of

\begin{align} z &= e^{sT} \\ &= \frac{e^{sT/2}}{e^{sT/2}} \\ &\approx \frac{1 + s T / 2}{1  s T / 2} \end{align}
where T \ is the numerical integration step size of the trapezoidal rule used in the bilinear transform derivation;^{[1]} or, in other words, the sampling period. The above bilinear approximation can be solved for s \ or a similar approximation for s = (1/T) \ln(z) \ \ can be performed.
The inverse of this mapping (and its firstorder bilinear approximation) is

\begin{align} s &= \frac{1}{T} \ln(z) \\ &= \frac{2}{T} \left[\frac{z1}{z+1} + \frac{1}{3} \left( \frac{z1}{z+1} \right)^3 + \frac{1}{5} \left( \frac{z1}{z+1} \right)^5 + \frac{1}{7} \left( \frac{z1}{z+1} \right)^7 + \cdots \right] \\ &\approx \frac{2}{T} \frac{z  1}{z + 1} \\ &= \frac{2}{T} \frac{1  z^{1}}{1 + z^{1}} \end{align}
The bilinear transform essentially uses this first order approximation and substitutes into the continuoustime transfer function, H_a(s) \

s \leftarrow \frac{2}{T} \frac{z  1}{z + 1}.
That is

H_d(z) = H_a(s) \bigg_{s = \frac{2}{T} \frac{z  1}{z + 1}}= H_a \left( \frac{2}{T} \frac{z1}{z+1} \right). \
Stability and minimumphase property preserved
A continuoustime causal filter is stable if the poles of its transfer function fall in the left half of the complex splane. A discretetime causal filter is stable if the poles of its transfer function fall inside the unit circle in the complex zplane. The bilinear transform maps the left half of the complex splane to the interior of the unit circle in the zplane. Thus filters designed in the continuoustime domain that are stable are converted to filters in the discretetime domain that preserve that stability.
Likewise, a continuoustime filter is minimumphase if the zeros of its transfer function fall in the left half of the complex splane. A discretetime filter is minimumphase if the zeros of its transfer function fall inside the unit circle in the complex zplane. Then the same mapping property assures that continuoustime filters that are minimumphase are converted to discretetime filters that preserve that property of being minimumphase.
Example
As an example take a simple lowpass RC filter. This continuoustime filter has a transfer function

\begin{align} H_a(s) &= \frac{1/sC}{R+1/sC} \\ &= \frac{1}{1 + RC s}. \end{align}
If we wish to implement this filter as a digital filter, we can apply the bilinear transform by substituting for s the formula above; after some reworking, we get the following filter representation:

H_d(z) \

=H_a \left( \frac{2}{T} \frac{z1}{z+1}\right) \


= \frac{1}{1 + RC \left( \frac{2}{T} \frac{z1}{z+1}\right)} \


= \frac{1 + z}{(1  2 RC / T) + (1 + 2RC / T) z} \


= \frac{1 + z^{1}}{(1 + 2RC / T) + (1  2RC / T) z^{1}}. \

The coefficients of the denominator are the 'feedbackward' coefficients and the coefficients of the numerator are the 'feedforward' coefficients used to implement a realtime digital filter.
General secondorder biquad transformation
It is possible to relate the coefficients of a continuoustime, analog filter with those of a similar discretetime digital filter created through the bilinear transform process. Transforming a general, secondorder continuoustime filter with the given transfer function

H_a(s) = \frac{b_0 s^2 + b_1 s + b_2}{a_0 s^2 + a_1 s + a_2} = \frac{b_0 + b_1 s^{1} + b_2 s^{2}}{a_0 + a_1 s^{1} + a_2 s^{2}}
using the bilinear transform (without prewarping any frequency specification) requires the substitution of

s \leftarrow K \frac{1  z^{1}}{1 + z^{1}}
where K \triangleq \frac{2}{T} .
This results in a discretetime digital biquad filter with coefficients expressed in terms of the coefficients of the original continuous time filter:

H_d(z)=\frac{(b_0 K^2 + b_1 K + b_2) + (2b_2  2b_0 K^2)z^{1} + (b_0 K^2  b_1 K + b_2)z^{2}}{(a_0 K^2 + a_1 K + a_2) + (2a_2  2a_0 K^2)z^{1} + (a_0 K^2  a_1 K + a_2)z^{2}}
Normally the constant term in the denominator must be normalized to 1 before deriving the corresponding difference equation. This results in

H_d(z)=\frac{\frac{b_0 K^2 + b_1 K + b_2}{a_0 K^2 + a_1 K + a_2} + \frac{2b_2  2b_0 K^2}{a_0 K^2 + a_1 K + a_2}z^{1} + \frac{b_0 K^2  b_1 K + b_2}{a_0 K^2 + a_1 K + a_2}z^{2}}{1 + \frac{2a_2  2a_0 K^2}{a_0 K^2 + a_1 K + a_2}z^{1} + \frac{a_0 K^2  a_1 K + a_2}{a_0 K^2 + a_1 K + a_2}z^{2}}.
The difference equation (using the Direct Form I) is

\begin{align} y[n] ={} & \frac{b_0 K^2 + b_1 K + b_2}{a_0 K^2 + a_1 K + a_2} \cdot x[n] + \frac{2b_2  2b_0 K^2}{a_0 K^2 + a_1 K + a_2} \cdot x[n1] \\[8pt] & {} + \frac{b_0 K^2  b_1 K + b_2}{a_0 K^2 + a_1 K + a_2} \cdot x[n2]  \frac{2a_2  2a_0 K^2}{a_0 K^2 + a_1 K + a_2} \cdot y[n1] \\[8pt] & {}  \frac{a_0 K^2  a_1 K + a_2}{a_0 K^2 + a_1 K + a_2} \cdot y[n2]. \end{align}
Frequency warping
To determine the frequency response of a continuoustime filter, the transfer function H_a(s) \ is evaluated at s = j \omega \ which is on the j \omega \ axis. Likewise, to determine the frequency response of a discretetime filter, the transfer function H_d(z) \ is evaluated at z = e^{ j \omega T} \ which is on the unit circle, z = 1 \ . When the actual frequency of \omega \ is input to the discretetime filter designed by use of the bilinear transform, it is desired to know at what frequency, \omega_a \ , for the continuoustime filter that this \omega \ is mapped to.

H_d(z) = H_a \left( \frac{2}{T} \frac{z1}{z+1}\right) \

H_d(e^{ j \omega T}) \

= H_a \left( \frac{2}{T} \frac{e^{ j \omega T}  1}{e^{ j \omega T} + 1}\right) \


= H_a \left( \frac{2}{T} \cdot \frac{e^{j \omega T/2} \left(e^{j \omega T/2}  e^{j \omega T/2}\right)}{e^{j \omega T/2} \left(e^{j \omega T/2} + e^{j \omega T/2 }\right)}\right) \


= H_a \left( \frac{2}{T} \cdot \frac{\left(e^{j \omega T/2}  e^{j \omega T/2}\right)}{\left(e^{j \omega T/2} + e^{j \omega T/2 }\right)}\right) \


= H_a \left(j \frac{2}{T} \cdot \frac{ \left(e^{j \omega T/2}  e^{j \omega T/2}\right) /(2j)}{\left(e^{j \omega T/2} + e^{j \omega T/2 }\right) / 2}\right) \


= H_a \left(j \frac{2}{T} \cdot \frac{ \sin(\omega T/2) }{ \cos(\omega T/2) }\right) \


= H_a \left(j \frac{2}{T} \cdot \tan \left( \omega T/2 \right) \right) \

This shows that every point on the unit circle in the discretetime filter zplane, z = e^{ j \omega T} \ is mapped to a point on the j \omega \ axis on the continuoustime filter splane, s = j \omega_a \ . That is, the discretetime to continuoustime frequency mapping of the bilinear transform is

\omega_a = \frac{2}{T} \tan \left( \omega \frac{T}{2} \right)
and the inverse mapping is

\omega = \frac{2}{T} \arctan \left( \omega_a \frac{T}{2} \right).
The discretetime filter behaves at frequency \omega \ the same way that the continuoustime filter behaves at frequency (2/T) \tan(\omega T/2) \ . Specifically, the gain and phase shift that the discretetime filter has at frequency \omega \ is the same gain and phase shift that the continuoustime filter has at frequency (2/T) \tan(\omega T/2) \ . This means that every feature, every "bump" that is visible in the frequency response of the continuoustime filter is also visible in the discretetime filter, but at a different frequency. For low frequencies (that is, when \omega \ll 2/T or \omega_a \ll 2/T), \omega \approx \omega_a \ .
One can see that the entire continuous frequency range

\infty < \omega_a < +\infty \
is mapped onto the fundamental frequency interval

\frac{\pi}{T} < \omega < +\frac{\pi}{T}. \
The continuoustime filter frequency \omega_a = 0 \ corresponds to the discretetime filter frequency \omega = 0 \ and the continuoustime filter frequency \omega_a = \pm \infty \ correspond to the discretetime filter frequency \omega = \pm \pi / T. \
One can also see that there is a nonlinear relationship between \omega_a \ and \omega. \ This effect of the bilinear transform is called frequency warping. The continuoustime filter can be designed to compensate for this frequency warping by setting \omega_a = \frac{2}{T} \tan \left( \omega \frac{T}{2} \right) \ for every frequency specification that the designer has control over (such as corner frequency or center frequency). This is called prewarping the filter design.
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 frequency \omega_0 if the following transform is substituted into the continuous filter transfer function.^{[2]} This is a modified version of Tustin's transform shown above. However, note that this transform becomes the above transform as \omega_0 \to 0 . That is to say, the above transform causes the digital filter response to match the analog filter response at DC.

s \leftarrow \frac{\omega_0}{\tan(\frac{\omega_0 T}{2})} \frac{z  1}{z + 1}.
The main advantage of the warping phenomenon is the absence of aliasing distortion of the frequency response characteristic, such as observed with Impulse invariance. It is necessary, however, to compensate for the frequency warping by prewarping the given frequency specifications of the continuoustime system. These prewarped specifications may then be used in the bilinear transform to obtain the desired discretetime system.
See also
References

^

^ Astrom, Karl J. Computer Controlled Systems, Theory and Design Second Edition. ISBN 0131686003. PrenticeHall, 1990, pp 212
External links

MIT OpenCourseWare Signal Processing: Continuous to Discrete Filter Design

Lecture Notes on Discrete Equivalents
This article was sourced from Creative Commons AttributionShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, EGovernment Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a nonprofit organization.