Matlab: filtri IIR
Ciao a tutti.
Qualcuno ha da consigliarmi qualche link, dispensa dove viene mostrata l'implementazione di filtri IIR in Matlab? Intendo senza l'utilizzo di tool ma da codice, sono filtri semplici.
Grazie.
Qualcuno ha da consigliarmi qualche link, dispensa dove viene mostrata l'implementazione di filtri IIR in Matlab? Intendo senza l'utilizzo di tool ma da codice, sono filtri semplici.
Grazie.
Risposte
Ad esempio, il codice mostrato in questo sito: http://lyle.smu.edu/~ayewah/Lab/Lab8/, la prima forma, che funzione di trasferimento rappresenta?
Il filtro rappresentato in questo codice:
con $a = [1,-1.9,1]$ e $b = [-1.0,0.8]$ è il seguente:
$H(z)=(1-1.9z^(-1)+z^(-2))/(1-1.0+0.8z^(-1))$
Non sono sicuro del risultato, credo ci sia qualche errore.
Grazie.
function y = miofiltro(b, a, x) q = length(b); p = length(a); x_n = zeros(q, 1); y_n = zeros(p, 1); for i = 1:length(x) x_n(2:q) = x_n(1:q-1); x_n(1) = x(i); y(i) = b*x_n - a*y_n; y_n(2:p) = y_n(1:p-1); y_n(1) = y(i); end
con $a = [1,-1.9,1]$ e $b = [-1.0,0.8]$ è il seguente:
$H(z)=(1-1.9z^(-1)+z^(-2))/(1-1.0+0.8z^(-1))$
Non sono sicuro del risultato, credo ci sia qualche errore.
Grazie.