function [b,a] = cheby2_3db(N,Fc,Ast)
% CHEBY2_3DB Design a lowpass Chebyshev Type II filter given a 3 dB point.
% Inputs:
% N - Filter order
% Fc - 3 dB cutoff frequency (0 to 1)
% Ast - Stopband attenuation (dB)
%
% NOTE 1: This function requires the Signal Processing Toolbox.
%
% NOTE 2: To design highpass, bandpass, and bandstop filters use the
% resulting filter from this function along with IIRLP2HP, IIRLP2BP, and
% IIRLP2BS respectively. These functions are included in the Filter
% Design Toolbox.
%
% % Example 6th order filter with cutoff at 0.3:
% [b,a] = cheby2_3db(6,.3,80);
% fvtool(b,a)
% Author(s): V. Pellissier, R. Losada
% Copyright 2005 The MathWorks, Inc.
% Compute cutoff frequency of analog lowpass filter
Wc = tan(pi*Fc/2);
% Find corresponding analog stopband-edge frequency
est = sqrt(10^(Ast/10)-1); % Convert to non-dB
Wst = Wc*cosh(1/N*acosh(est));
% Convert analog stopband-edge frequency to digital
Fst = 2*atan(Wst)/pi;
% Use classic design technique
[b,a] = cheby2(N,Ast,Fst);