Normalmente a função [b, a] = butter( n, wn ) do Matlab é usada para projetar um filtro digital de ordem
Se wn for um vetor com 2 elementos,: wn = [w1 w2], a função butter(n, wn) vai retornar um filtro passa-faixa “duplo” de ordem
Para forçar um filtro alalógico devemos introduzir o parâmetro s como string mesmo:
butter(n, wn, 's'). Neste casom obviamente
Exemplo
>> fc = 400;>> wc = 2*pi*fcwc = 2513.3>> [num, den] = butter(2, wc, 's')num = 0 0 6.3165e+06den = 1 3554.3 6.3165e+06>> H = tf(num, den)
H = 6.317e06 ----------------------- s^2 + 3554 s + 6.317e06 Continuous-time transfer function.
>> zpk(H)
ans = 6.3165e+06 ------------------------ (s^2 + 3554s + 6.317e06) Continuous-time zero/pole/gain model.
>> options = bodeoptions;>> options.FreqUnits = 'Hz';>> options.MagUnits = 'dB';>> bodeplot(H, options)>> grid>> xlim([100 1000])Que rende o diagrama de Bode:

Lembrando que a equação genérica de um filtro passa-baixas Butterworth é do tipo:
ou:
onde os pólos
Calculando ganho e defasagem em
>> f=700;>> w=2*pi*fw = 4398.2>> % s=jw>> s=j*ws = 0 + 4398.2i>> b=polyval(num, s)b = 6.3165e+06>> a=polyval(den, s)a = -1.3028e+07 + 1.5633e+07i>> G = b/aG = -0.19872 - 0.23845i>> G_abs = abs(G)G_abs = 0.3104>> G_dB = 20*log10(abs(G))G_dB = -10.162>> phase_rad = angle(G)phase_rad = -2.2656>> help rad2deg rad2deg Convert angles from radians to degrees. rad2deg(X) converts angle units from radians to degrees for each element of X. See also deg2rad.
Documentation for rad2deg Other functions named rad2deg
>> phase_deg = rad2deg(phase_rad)phase_deg = -129.81ou seja, em
ou
Referências:
Fernando Passold, em 05/06/2026.