www.gusucode.com > signal 工具箱matlab源码程序 > signal/@filtdes/@bsbutter/design.m
function varargout = design(h,d) %#ok<INUSL> %DESIGN Method to design the filter given the specs. % Copyright 1988-2012 The MathWorks, Inc. if nargout == 1, hfdesign = fdesign.bandstop('N,F3dB1,F3dB2', d.Order, d.Fc1, d.Fc2); Hd = butter(hfdesign); varargout = {Hd}; else % Set up design params N = get(d,'order'); if rem(N,2), error(message('signal:filtdes:bsbutter:design:MustBeEven')); end % Get frequency specs, they have been prenormalized Fc1 = get(d,'Fc1'); Fc2 = get(d,'Fc2'); Fc = [Fc1, Fc2]; [z,p,k] = butter(N/2,Fc,'stop'); varargout = {z, p, k}; end