| Signal Processing Toolbox | Search  Help Desk |
| lp2bp | See Also |
Lowpass to bandpass analog filter transformation.
Syntax
[bt,at] = lp2bp(b,a,Wo,Bw) [At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw)
Description
lp2bp transforms analog lowpass filter prototypes with a cutoff frequency of 1 rad/sec into bandpass filters with desired bandwidth and center frequency. The transformation is one step in the digital filter design process for the butter, cheby1, cheby2, and ellip functions.
lp2bp can perform the transformation on two different linear system representations: transfer function form and state-space form. In both cases, the input system must be an analog filter prototype.
Transfer Function Form (Polynomial)
[bt,at] = lp2bp(b,a,Wo,Bw)
transforms an analog lowpass filter prototype given by polynomial coefficients into a bandpass filter with center frequency Wo and bandwidth Bw. Row vectors b and a specify the coefficients of the numerator and denominator of the prototype in descending powers of s:
Wo and Bw specify the center frequency and bandwidth in units of radians/second. For a filter with lower band edge w1 and upper band edge w2, use Wo = sqrt(w1*w2) and Bw = w2-w1.
lp2bp returns the frequency transformed filter in row vectors bt and at.
State-Space Form
[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw)
converts the continuous-time state-space lowpass filter prototype in matrices A, B, C, D:
Wo and bandwidth Bw. For a filter with lower band edge w1 and upper band edge w2, use Wo = sqrt(w1*w2) and Bw = w2-w1.
The bandpass filter is returned in matrices At, Bt, Ct, Dt.
Algorithm
lp2bp is a highly accurate state-space formulation of the classic analog filter frequency transformation. Consider the state-space system:
0 and bandwidth Bw, the standard s-domain transformation is
0/Bw and p = s/
0. Substituting this for s in the Laplace transformed state-space equation, and considering the operator p as d/dt:
0 to recover the time/frequency scaling represented by p and find state matrices for the bandpass filter:
Q = Wo/Bw; [ma,na] = size(A); At = Wo*[A/Q eye(ma,na);-eye(ma,na) zeros(ma,na)]; Bt = Wo*[B/Q; zeros(ma,nb)]; Ct = [C zeros(mc,ma)]; Dt = d;If the input to
lp2bp is in transfer function form, the function transforms it into state-space form before applying this algorithm.
See Also
bilinear |
Bilinear transformation method of analog-to-digital filter conversion. |
impinvar |
Impulse invariance method of analog-to-digital filter conversion. |
lp2bs |
Lowpass to bandstop analog filter transformation. |
lp2hp |
Lowpass to highpass analog filter transformation. |
lp2lp |
Lowpass to lowpass analog filter transformation. |