Bode plot

Last updated
Figure 1A: High-pass filter (1st-order, one-pole) Bode magnitude plot (top) and Bode phase plot (bottom). The red data curve is approximated by the straight black line. High-Pass filter Bode Magnitude and Phase plots.png
Figure 1A: High-pass filter (1st-order, one-pole) Bode magnitude plot (top) and Bode phase plot (bottom). The red data curve is approximated by the straight black line.
Figure 1B: Low-pass filter (1st-order, one-pole) Bode magnitude plot (top) and Bode phase plot (bottom). The red data curve is approximated by the straight black line. Low-Pass filter Bode Magnitude and Phase plots.png
Figure 1B: Low-pass filter (1st-order, one-pole) Bode magnitude plot (top) and Bode phase plot (bottom). The red data curve is approximated by the straight black line.

In electrical engineering and control theory, a Bode plot is a graph of the frequency response of a system. It is usually a combination of a Bode magnitude plot, expressing the magnitude (usually in decibels) of the frequency response, and a Bode phase plot, expressing the phase shift.

Contents

As originally conceived by Hendrik Wade Bode in the 1930s, the plot is an asymptotic approximation of the frequency response, using straight line segments. [1]

Overview

Among his several important contributions to circuit theory and control theory, engineer Hendrik Wade Bode, while working at Bell Labs in the 1930s, devised a simple but accurate method for graphing gain and phase-shift plots. These bear his name, Bode gain plot and Bode phase plot. "Bode" is often pronounced as [ˈboːdə] which is a Dutch pronunciation, closer to English /ˈbdə/ BOH-d. [2] [3]

Bode was faced with the problem of designing stable amplifiers with feedback for use in telephone networks. He developed the graphical design technique of the Bode plots to show the gain margin and phase margin required to maintain stability under variations in circuit characteristics caused during manufacture or during operation. [4] The principles developed were applied to design problems of servomechanisms and other feedback control systems. The Bode plot is an example of analysis in the frequency domain.

Definition

The Bode plot for a linear, time-invariant system with transfer function ( being the complex frequency in the Laplace domain) consists of a magnitude plot and a phase plot.

The Bode magnitude plot is the graph of the function of frequency (with being the imaginary unit). The -axis of the magnitude plot is logarithmic and the magnitude is given in decibels, i.e., a value for the magnitude is plotted on the axis at .

The Bode phase plot is the graph of the phase, commonly expressed in degrees, of the argument function as a function of . The phase is plotted on the same logarithmic -axis as the magnitude plot, but the value for the phase is plotted on a linear vertical axis.

Frequency response

This section illustrates that a Bode plot is a visualization of the frequency response of a system.

Consider a linear, time-invariant system with transfer function . Assume that the system is subject to a sinusoidal input with frequency ,

that is applied persistently, i.e. from a time to a time . The response will be of the form

i.e., also a sinusoidal signal with amplitude shifted by a phase with respect to the input.

It can be shown [5] that the magnitude of the response is

and that the phase shift is

In summary, subjected to an input with frequency , the system responds at the same frequency with an output that is amplified by a factor and phase-shifted by . These quantities, thus, characterize the frequency response and are shown in the Bode plot.

Rules for handmade Bode plot

For many practical problems, the detailed Bode plots can be approximated with straight-line segments that are asymptotes of the precise response. The effect of each of the terms of a multiple element transfer function can be approximated by a set of straight lines on a Bode plot. This allows a graphical solution of the overall frequency response function. Before widespread availability of digital computers, graphical methods were extensively used to reduce the need for tedious calculation; a graphical solution could be used to identify feasible ranges of parameters for a new design.

The premise of a Bode plot is that one can consider the log of a function in the form

as a sum of the logs of its zeros and poles:

This idea is used explicitly in the method for drawing phase diagrams. The method for drawing amplitude plots implicitly uses this idea, but since the log of the amplitude of each pole or zero always starts at zero and only has one asymptote change (the straight lines), the method can be simplified.

Straight-line amplitude plot

Amplitude decibels is usually done using to define decibels. Given a transfer function in the form

where and are constants, , , and is the transfer function:

To handle irreducible 2nd-order polynomials, can, in many cases, be approximated as .

Note that zeros and poles happen when is equal to a certain or . This is because the function in question is the magnitude of , and since it is a complex function, . Thus at any place where there is a zero or pole involving the term , the magnitude of that term is .

Corrected amplitude plot

To correct a straight-line amplitude plot:

Note that this correction method does not incorporate how to handle complex values of or . In the case of an irreducible polynomial, the best way to correct the plot is to actually calculate the magnitude of the transfer function at the pole or zero corresponding to the irreducible polynomial, and put that dot over or under the line at that pole or zero.

Straight-line phase plot

Given a transfer function in the same form as above,

the idea is to draw separate plots for each pole and zero, then add them up. The actual phase curve is given by

To draw the phase plot, for each pole and zero:

Example

To create a straight-line plot for a first-order (one-pole) low-pass filter, one considers the normalized form of the transfer function in terms of the angular frequency:

The Bode plot is shown in Figure 1(b) above, and construction of the straight-line approximation is discussed next.

Magnitude plot

The magnitude (in decibels) of the transfer function above (normalized and converted to angular-frequency form), given by the decibel gain expression :

Then plotted versus input frequency on a logarithmic scale, can be approximated by two lines, forming the asymptotic (approximate) magnitude Bode plot of the transfer function:

These two lines meet at the corner frequency . From the plot, it can be seen that for frequencies well below the corner frequency, the circuit has an attenuation of 0 dB, corresponding to a unity pass-band gain, i.e. the amplitude of the filter output equals the amplitude of the input. Frequencies above the corner frequency are attenuated  the higher the frequency, the higher the attenuation.

Phase plot

The phase Bode plot is obtained by plotting the phase angle of the transfer function given by

versus , where and are the input and cutoff angular frequencies respectively. For input frequencies much lower than corner, the ratio is small, and therefore the phase angle is close to zero. As the ratio increases, the absolute value of the phase increases and becomes −45° when . As the ratio increases for input frequencies much greater than the corner frequency, the phase angle asymptotically approaches −90°. The frequency scale for the phase plot is logarithmic.

Normalized plot

The horizontal frequency axis, in both the magnitude and phase plots, can be replaced by the normalized (nondimensional) frequency ratio . In such a case the plot is said to be normalized, and units of the frequencies are no longer used, since all input frequencies are now expressed as multiples of the cutoff frequency .

An example with zero and pole

Figures 2-5 further illustrate construction of Bode plots. This example with both a pole and a zero shows how to use superposition. To begin, the components are presented separately.

Figure 2 shows the Bode magnitude plot for a zero and a low-pass pole, and compares the two with the Bode straight line plots. The straight-line plots are horizontal up to the pole (zero) location and then drop (rise) at 20 dB/decade. The second Figure 3 does the same for the phase. The phase plots are horizontal up to a frequency factor of ten below the pole (zero) location and then drop (rise) at 45°/decade until the frequency is ten times higher than the pole (zero) location. The plots then are again horizontal at higher frequencies at a final, total phase change of 90°.

Figure 4 and Figure 5 show how superposition (simple addition) of a pole and zero plot is done. The Bode straight line plots again are compared with the exact plots. The zero has been moved to higher frequency than the pole to make a more interesting example. Notice in Figure 4 that the 20 dB/decade drop of the pole is arrested by the 20 dB/decade rise of the zero resulting in a horizontal magnitude plot for frequencies above the zero location. Notice in Figure 5 in the phase plot that the straight-line approximation is pretty approximate in the region where both pole and zero affect the phase. Notice also in Figure 5 that the range of frequencies where the phase changes in the straight line plot is limited to frequencies a factor of ten above and below the pole (zero) location. Where the phase of the pole and the zero both are present, the straight-line phase plot is horizontal because the 45°/decade drop of the pole is arrested by the overlapping 45°/decade rise of the zero in the limited range of frequencies where both are active contributors to the phase.

Gain margin and phase margin

Bode plots are used to assess the stability of negative-feedback amplifiers by finding the gain and phase margins of an amplifier. The notion of gain and phase margin is based upon the gain expression for a negative feedback amplifier given by

where AFB is the gain of the amplifier with feedback (the closed-loop gain), β is the feedback factor, and AOL is the gain without feedback (the open-loop gain). The gain AOL is a complex function of frequency, with both magnitude and phase. [note 1] Examination of this relation shows the possibility of infinite gain (interpreted as instability) if the product βAOL = −1 (that is, the magnitude of βAOL is unity and its phase is −180°, the so-called Barkhausen stability criterion). Bode plots are used to determine just how close an amplifier comes to satisfying this condition.

Key to this determination are two frequencies. The first, labeled here as f180, is the frequency where the open-loop gain flips sign. The second, labeled here f0 dB, is the frequency where the magnitude of the product |βAOL| = 1 = 0 dB. That is, frequency f180 is determined by the condition

where vertical bars denote the magnitude of a complex number, and frequency f0 dB is determined by the condition

One measure of proximity to instability is the gain margin. The Bode phase plot locates the frequency where the phase of βAOL reaches 180°, denoted here as frequency f180. Using this frequency, the Bode magnitude plot finds the magnitude of βAOL. If |βAOL|180 ≥ 1, the amplifier is unstable, as mentioned. If |βAOL|180 < 1, instability does not occur, and the separation in dB of the magnitude of |βAOL|180 from |βAOL| = 1 is called the gain margin. Because a magnitude of 1 is 0 dB, the gain margin is simply one of the equivalent forms: .

Another equivalent measure of proximity to instability is the phase margin . The Bode magnitude plot locates the frequency where the magnitude of |βAOL| reaches unity, denoted here as frequency f0 dB. Using this frequency, the Bode phase plot finds the phase of βAOL. If the phase of βAOL(f0 dB) > 180°, the instability condition cannot be met at any frequency (because its magnitude is going to be < 1 when f = f180), and the distance of the phase at f0 dB in degrees above 180° is called the phase margin.

If a simple yes or no on the stability issue is all that is needed, the amplifier is stable if f0 dB < f180. This criterion is sufficient to predict stability only for amplifiers satisfying some restrictions on their pole and zero positions (minimum phase systems). Although these restrictions usually are met, if they are not, then another method must be used, such as the Nyquist plot. [6] [7] Optimal gain and phase margins may be computed using Nevanlinna–Pick interpolation theory. [8]

Examples using Bode plots

Figures 6 and 7 illustrate the gain behavior and terminology. For a three-pole amplifier, Figure 6 compares the Bode plot for the gain without feedback (the open-loop gain) AOL with the gain with feedback AFB (the closed-loop gain). See negative feedback amplifier for more detail.

In this example, AOL = 100 dB at low frequencies, and 1 / β = 58 dB. At low frequencies, AFB ≈ 58 dB as well.

Because the open-loop gain AOL is plotted and not the product β AOL, the condition AOL = 1 / β decides f0 dB. The feedback gain at low frequencies and for large AOL is AFB ≈ 1 / β (look at the formula for the feedback gain at the beginning of this section for the case of large gain AOL), so an equivalent way to find f0 dB is to look where the feedback gain intersects the open-loop gain. (Frequency f0 dB is needed later to find the phase margin.)

Near this crossover of the two gains at f0 dB, the Barkhausen criteria are almost satisfied in this example, and the feedback amplifier exhibits a massive peak in gain (it would be infinity if β AOL = −1). Beyond the unity gain frequency f0 dB, the open-loop gain is sufficiently small that AFBAOL (examine the formula at the beginning of this section for the case of small AOL).

Figure 7 shows the corresponding phase comparison: the phase of the feedback amplifier is nearly zero out to the frequency f180 where the open-loop gain has a phase of −180°. In this vicinity, the phase of the feedback amplifier plunges abruptly downward to become almost the same as the phase of the open-loop amplifier. (Recall, AFBAOL for small AOL.)

Comparing the labeled points in Figure 6 and Figure 7, it is seen that the unity gain frequency f0 dB and the phase-flip frequency f180 are very nearly equal in this amplifier, f180f0 dB ≈ 3.332 kHz, which means the gain margin and phase margin are nearly zero. The amplifier is borderline stable.

Figures 8 and 9 illustrate the gain margin and phase margin for a different amount of feedback β. The feedback factor is chosen smaller than in Figure 6 or 7, moving the condition | β AOL | = 1 to lower frequency. In this example, 1 / β = 77 dB, and at low frequencies AFB ≈ 77 dB as well.

Figure 8 shows the gain plot. From Figure 8, the intersection of 1 / β and AOL occurs at f0 dB = 1 kHz. Notice that the peak in the gain AFB near f0 dB is almost gone. [note 2] [9]

Figure 9 is the phase plot. Using the value of f0 dB = 1 kHz found above from the magnitude plot of Figure 8, the open-loop phase at f0 dB is −135°, which is a phase margin of 45° above −180°.

Using Figure 9, for a phase of −180° the value of f180 = 3.332 kHz (the same result as found earlier, of course [note 3] ). The open-loop gain from Figure 8 at f180 is 58 dB, and 1 / β = 77 dB, so the gain margin is 19 dB.

Stability is not the sole criterion for amplifier response, and in many applications a more stringent demand than stability is good step response. As a rule of thumb, good step response requires a phase margin of at least 45°, and often a margin of over 70° is advocated, particularly where component variation due to manufacturing tolerances is an issue. [9] See also the discussion of phase margin in the step response article.

Bode plotter

Figure 10: Amplitude diagram of a 10th-order electronic filter plotted using a Bode plotter Bodeplot.png
Figure 10: Amplitude diagram of a 10th-order electronic filter plotted using a Bode plotter

The Bode plotter is an electronic instrument resembling an oscilloscope, which produces a Bode diagram, or a graph, of a circuit's voltage gain or phase shift plotted against frequency in a feedback control system or a filter. An example of this is shown in Figure 10. It is extremely useful for analyzing and testing filters and the stability of feedback control systems, through the measurement of corner (cutoff) frequencies and gain and phase margins.

This is identical to the function performed by a vector network analyzer, but the network analyzer is typically used at much higher frequencies.

For education and research purposes, plotting Bode diagrams for given transfer functions facilitates better understanding and getting faster results (see external links).

Two related plots that display the same data in different coordinate systems are the Nyquist plot and the Nichols plot. These are parametric plots, with frequency as the input and magnitude and phase of the frequency response as the output. The Nyquist plot displays these in polar coordinates, with magnitude mapping to radius and phase to argument (angle). The Nichols plot displays these in rectangular coordinates, on the log scale.

See also

Notes

  1. Ordinarily, as frequency increases, the magnitude of the gain drops, and the phase becomes more negative, although these are only trends and may be reversed in particular frequency ranges. Unusual gain behavior can render the concepts of gain and phase margin inapplicable. Then other methods such as the Nyquist plot have to be used to assess stability.
  2. The critical amount of feedback where the peak in the gain just disappears altogether is the maximally flat or Butterworth design.
  3. The frequency where the open-loop gain flips sign f180 does not change with a change in feedback factor; it is a property of the open-loop gain. The value of the gain at f180 also does not change with a change in β. Therefore, we could use the previous values from Figures 6 and 7. However, for clarity the procedure is described using only Figures 8 and 9.

Related Research Articles

An electronic oscillator is an electronic circuit that produces a periodic, oscillating or alternating current (AC) signal, usually a sine wave, square wave or a triangle wave, powered by a direct current (DC) source. Oscillators are found in many electronic devices, such as radio receivers, television sets, radio and television broadcast transmitters, computers, computer peripherals, cellphones, radar, and many other devices.

<span class="mw-page-title-main">Loop gain</span> Sum of the gain around a feedback loop

In electronics and control system theory, loop gain is the sum of the gain, expressed as a ratio or in decibels, around a feedback loop. Feedback loops are widely used in electronics in amplifiers and oscillators, and more generally in both electronic and nonelectronic industrial control systems to control industrial plant and equipment. The concept is also used in biology. In a feedback loop, the output of a device, process or plant is sampled and applied to alter the input, to better control the output. The loop gain, along with the related concept of loop phase shift, determines the behavior of the device, and particularly whether the output is stable, or unstable, which can result in oscillation. The importance of loop gain as a parameter for characterizing electronic feedback amplifiers was first recognized by Heinrich Barkhausen in 1921, and was developed further by Hendrik Wade Bode and Harry Nyquist at Bell Labs in the 1930s.

<span class="mw-page-title-main">Resonance</span> Physical characteristic of oscillating systems

Resonance is a phenomenon that occurs when an object or system is subjected to an external force or vibration that matches its natural frequency. When this happens, the object or system absorbs energy from the external force and starts vibrating with a larger amplitude. Resonance can occur in various systems, such as mechanical, electrical, or acoustic systems, and it is often desirable in certain applications, such as musical instruments or radio receivers. However, resonance can also be detrimental, leading to excessive vibrations or even structural failure in some cases.

A low-pass filter is a filter that passes signals with a frequency lower than a selected cutoff frequency and attenuates signals with frequencies higher than the cutoff frequency. The exact frequency response of the filter depends on the filter design. The filter is sometimes called a high-cut filter, or treble-cut filter in audio applications. A low-pass filter is the complement of a high-pass filter.

<span class="mw-page-title-main">Negative-feedback amplifier</span> Type of electronic amplifier

A negative-feedback amplifier is an electronic amplifier that subtracts a fraction of its output from its input, so that negative feedback opposes the original signal. The applied negative feedback can improve its performance and reduces sensitivity to parameter variations due to manufacturing or environment. Because of these advantages, many amplifiers and control systems use negative feedback.

In signal processing, a finite impulse response (FIR) filter is a filter whose impulse response is of finite duration, because it settles to zero in finite time. This is in contrast to infinite impulse response (IIR) filters, which may have internal feedback and may continue to respond indefinitely.

The Sallen–Key topology is an electronic filter topology used to implement second-order active filters that is particularly valued for its simplicity. It is a degenerate form of a voltage-controlled voltage-source (VCVS) filter topology. It was introduced by R. P. Sallen and E. L. Key of MIT Lincoln Laboratory in 1955.

<span class="mw-page-title-main">Step response</span> Time behavior of a system controlled by Heaviside step functions

The step response of a system in a given initial state consists of the time evolution of its outputs when its control inputs are Heaviside step functions. In electronic engineering and control theory, step response is the time behaviour of the outputs of a general system when its inputs change from zero to one in a very short time. The concept can be extended to the abstract mathematical notion of a dynamical system using an evolution parameter.

In control theory and signal processing, a linear, time-invariant system is said to be minimum-phase if the system and its inverse are causal and stable.

<span class="mw-page-title-main">Butterworth filter</span> Type of signal processing filter

The Butterworth filter is a type of signal processing filter designed to have a frequency response that is as flat as possible in the passband. It is also referred to as a maximally flat magnitude filter. It was first described in 1930 by the British engineer and physicist Stephen Butterworth in his paper entitled "On the Theory of Filter Amplifiers".

In electronics engineering, frequency compensation is a technique used in amplifiers, and especially in amplifiers employing negative feedback. It usually has two primary goals: To avoid the unintentional creation of positive feedback, which will cause the amplifier to oscillate, and to control overshoot and ringing in the amplifier's step response. It is also used extensively to improve the bandwidth of single pole systems.

<span class="mw-page-title-main">Nyquist stability criterion</span> Graphical method of determining the stability of a dynamical system

In control theory and stability theory, the Nyquist stability criterion or Strecker–Nyquist stability criterion, independently discovered by the German electrical engineer Felix Strecker at Siemens in 1930 and the Swedish-American electrical engineer Harry Nyquist at Bell Telephone Laboratories in 1932, is a graphical technique for determining the stability of a dynamical system.

In electronics and signal processing, a Bessel filter is a type of analog linear filter with a maximally flat group delay, which preserves the wave shape of filtered signals in the passband. Bessel filters are often used in audio crossover systems.

<span class="mw-page-title-main">Current divider</span> Simple linear circuit

In electronics, a current divider is a simple linear circuit that produces an output current (IX) that is a fraction of its input current (IT). Current division refers to the splitting of current between the branches of the divider. The currents in the various branches of such a circuit will always divide in such a way as to minimize the total energy expended.

An all-pass filter is a signal processing filter that passes all frequencies equally in gain, but changes the phase relationship among various frequencies. Most types of filter reduce the amplitude of the signal applied to it for some values of frequency, whereas the all-pass filter allows all frequencies through without changes in level.

In electronics, a differentiator is a circuit that outputs a signal approximately proportional to the rate of change of its input signal. Because the derivative of a sinusoid is another sinusoid whose amplitude is multiplied by its frequency, a true differentiator that works across all frequencies can't be realized. Real circuits such as a 1st-order high-pass filter are able to approximate differentiation at lower frequencies by limiting the gain above its cutoff frequency. An active differentiator includes an amplifier, while a passive differentiator is made only of resistors, capacitors and inductors.

<span class="mw-page-title-main">Phase margin</span> Parameter of electronic amplifiers

In electronic amplifiers, the phase margin (PM) is the difference between the phase lag φ and -180°, for an amplifier's output signal at zero dB gain - i.e. unity gain, or that the output signal has the same amplitude as the input.

Pole splitting is a phenomenon exploited in some forms of frequency compensation used in an electronic amplifier. When a capacitor is introduced between the input and output sides of the amplifier with the intention of moving the pole lowest in frequency to lower frequencies, pole splitting causes the pole next in frequency to move to a higher frequency. This pole movement increases the stability of the amplifier and improves its step response at the cost of decreased speed.

Iso-damping is a desirable system property referring to a state where the open-loop phase Bode plot is flat—i.e., the phase derivative with respect to the frequency is zero, at a given frequency called the "tangent frequency", . At the "tangent frequency" the Nyquist curve of the open-loop system tangentially touches the sensitivity circle and the phase Bode is locally flat which implies that the system will be more robust to gain variations. For systems that exhibit iso-damping property, the overshoots of the closed-loop step responses will remain almost constant for different values of the controller gain. This will ensure that the closed-loop system is robust to gain variations.

<span class="mw-page-title-main">Transimpedance amplifier</span> Amplifier that converts current to voltage

In electronics, a transimpedance amplifier (TIA) is a current to voltage converter, almost exclusively implemented with one or more operational amplifiers. The TIA can be used to amplify the current output of Geiger–Müller tubes, photo multiplier tubes, accelerometers, photo detectors and other types of sensors to a usable voltage. Current to voltage converters are used with sensors that have a current response that is more linear than the voltage response. This is the case with photodiodes where it is not uncommon for the current response to have better than 1% nonlinearity over a wide range of light input. The transimpedance amplifier presents a low impedance to the photodiode and isolates it from the output voltage of the operational amplifier. In its simplest form a transimpedance amplifier has just a large valued feedback resistor, Rf. The gain of the amplifier is set by this resistor and because the amplifier is in an inverting configuration, has a value of -Rf. There are several different configurations of transimpedance amplifiers, each suited to a particular application. The one factor they all have in common is the requirement to convert the low-level current of a sensor to a voltage. The gain, bandwidth, as well as current and voltage offsets change with different types of sensors, requiring different configurations of transimpedance amplifiers.

References

  1. R. K. Rao Yarlagadda (2010). Analog and Digital Signals and Systems . Springer Science & Business Media. p.  243. ISBN   978-1-4419-0034-0.
  2. Van Valkenburg, M. E. University of Illinois at Urbana-Champaign, "In memoriam: Hendrik W. Bode (1905-1982)", IEEE Transactions on Automatic Control, Vol. AC-29, No 3., March 1984, pp. 193–194. Quote: "Something should be said about his name. To his colleagues at Bell Laboratories and the generations of engineers that have followed, the pronunciation is boh-dee. The Bode family preferred that the original Dutch be used as boh-dah."
  3. "Vertaling van postbode, NL>EN". mijnwoordenboek.nl. Retrieved 2013-10-07.
  4. David A. Mindell Between Human and Machine: Feedback, Control, and Computing Before Cybernetics JHU Press, 2004, ISBN   0801880572, pp. 127–131.
  5. Skogestad, Sigurd; Postlewaite, Ian (2005). Multivariable Feedback Control. Chichester, West Sussex, England: John Wiley & Sons, Ltd. ISBN   0-470-01167-X.
  6. Thomas H. Lee (2004). "§14.6. Gain and Phase Margins as Stability Measures". The design of CMOS radio-frequency integrated circuits (2nd ed.). Cambridge UK: Cambridge University Press. pp. 451–453. ISBN   0-521-83539-9.
  7. William S. Levine (1996). "§10.1. Specifications of Control System". The control handbook: the electrical engineering handbook series (2nd ed.). Boca Raton FL: CRC Press/IEEE Press. p. 163. ISBN   0-8493-8570-9.
  8. Allen Tannenbaum (February 1981). Invariance and Systems Theory: Algebraic and Geometric Aspects. New York, NY: Springer-Verlag. ISBN   9783540105657.
  9. 1 2 Willy M C Sansen (2006). Analog design essentials. Dordrecht, The Netherlands: Springer. pp. 157–163. ISBN   0-387-25746-2.