You are here : matlabSignal Processinglp2bs

# lp2bs() - Signal Processing

```lp2bs transforms analog lowpass filter prototypes
with a cutoff angular frequency of 1 rad/s into bandstop
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.lp2bs 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] = lp2bs(b,a,Wo,Bw) transforms an analog
lowpass filter prototype given by polynomial coefficients into a bandstop
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.B(s)A(s)=b(1)sn+⋯+b(n)s+b(n+1)a(1)sm+⋯+a(m)s+a(m+1)Scalars 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. lp2bs returns the frequency transformed filter
in row vectors bt and at.State-Space Form[At,Bt,Ct,Dt] = lp2bs(A,B,C,D,Wo,Bw) converts the
continuous-time state-space lowpass filter prototype in matrices A, B, C, D shown
belowx˙=Ax+Buy=Cx+Duinto a bandstop filter with center frequency 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 bandstop filter is returned in matrices At, Bt, Ct, Dt.```

### Syntax

`[bt,at] = lp2bs(b,a,Wo,Bw)[At,Bt,Ct,Dt] = lp2bs(A,B,C,D,Wo,Bw)`

### Example

```Q = Wo/Bw;
At = [Wo/Q*inv(A) Wo*eye(ma);-Wo*eye(ma) zeros(ma)];
Bt = -[Wo/Q*(A\B); zeros(ma,n)];
Ct = [C/A zeros(mc,ma)];
Dt = D - C/A*B;```