Transform lowpass analog filters to highpass
[bt,at] = lp2hp(b,a,Wo)
[At,Bt,Ct,Dt] = lp2hp(A,B,C,D,Wo)
lp2hp transforms analog lowpass filter prototypes with a cutoff angular frequency of 1 rad/s into highpass filters with desired cutoff angular frequency. The transformation is one step in the digital filter design process for the butter, cheby1, cheby2, and ellip functions.
The lp2hp function 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.
[bt,at] = lp2hp(b,a,Wo) transforms an analog lowpass filter prototype given by polynomial coefficients into a highpass filter with cutoff angular frequency Wo. Row vectors b and a specify the coefficients of the numerator and denominator of the prototype in descending powers of s.
Scalar Wo specifies the cutoff angular frequency in units of radians/second. The frequency transformed filter is returned in row vectors bt and at.
into a highpass filter with cutoff angular frequency Wo. The highpass filter is returned in matrices At, Bt, Ct, Dt.
lp2hp is a highly accurate state-space formulation of the classic analog filter frequency transformation. If a highpass filter is to have cutoff angular frequency ω0, the standard s-domain transformation is
The state-space version of this transformation is
At = Wo*inv(A); Bt = -Wo*(A\B); Ct = C/A; Dt = D - C/A*B;
See lp2bp for a derivation of the bandpass version of this transformation.