Main Content

allpasslp2bpc

Allpass filter for lowpass to complex bandpass transformation

Description

[AllpassNum,AllpassDen] = allpasslp2bpc(Wo,Wt) returns the numerator, AllpassNum, and the denominator, AllpassDen, of the first-order allpass mapping filter for performing a real lowpass to complex bandpass frequency transformation. For more information, see Real Lowpass to Complex Bandpass Frequency Transformation.

Examples

collapse all

Design the allpass mapping filter changing the real lowpass filter with the cutoff frequency Wo at 0.5 into a complex bandpass filter with band edges Wt1 and Wt2 precisely defined at 0.2 and 0.4, respectively. Calculate the frequency response of the mapping filter in the full range.

Wo = 0.5;
Wt = [0.2 0.4];
[AllpassNum,AllpassDen] = allpasslp2bpc(Wo,Wt);
[h,f] = freqz(AllpassNum,AllpassDen,'whole');
plot(f/pi,abs(angle(h))/pi,Wt,Wo,'ro');
title('Mapping Function Wo(Wt)');
xlabel('New Frequency, Wt'); 
ylabel('Old Frequency, Wo');

Figure contains an axes object. The axes object with title Mapping Function Wo(Wt), xlabel New Frequency, Wt, ylabel Old Frequency, Wo contains 3 objects of type line. One or more of the lines displays its values using only markers

Input Arguments

collapse all

Frequency value to be transformed from the prototype filter, specified as a real scalar in the range (0,1) with 1 corresponding to half the sample rate.

Data Types: single | double

Desired frequency locations in the transformed target filter, specified as a real vector with values in the range (-1,1) with 1 corresponding to half the sample rate.

Data Types: single | double

Output Arguments

collapse all

Numerator of the mapping filter, returned as a complex-valued vector.

Data Types: double
Complex Number Support: Yes

Denominator of the mapping filter, returned as a complex-valued vector.

Data Types: double
Complex Number Support: Yes

More About

collapse all

Version History

Introduced in R2011a