Salta al contenuto
Note per Studenti Esercizio - Poli, zeri, risposta impulsiva e uscita di un IIR

Esercizio - Poli, zeri, risposta impulsiva e uscita di un IIR

In questa pagina 4

Testo (esercitazione del corso Multimedia Signal Processing, UniPD, lezione 24, esercizio 2.1 sui filtri IIR). Un sistema LTI ha funzione di sistema H(z)=1+z−21+0,3 z−1.H(z)=\frac{1+z^{-2}}{1+0{,}3\,z^{-1}} .

  1. Disegnare poli e zeri di H(z)H(z) nel piano zz.
  2. Con la trasformata zeta determinare la risposta impulsiva h[n]h[n].
  3. Ricavare un'espressione della risposta in frequenza H(ejω^)H(e^{j\hat\omega}).
  4. Con la risposta in frequenza determinare l'uscita y1[n]y_1[n] quando l'ingresso è x1[n]=2cos⁡(πn)x_1[n]=2\cos(\pi n), −∞<n<∞-\infty<n<\infty.

Teoria usata: Funzione di sistema, poli, zeri e stabilitàLa funzione di sistema H(z) è la trasformata zeta della risposta impulsiva: con ingresso z^n l'uscita è H(z) z^n. Per un FIR H(z) = Σ b_k z^{-k} è un polinomio con M zeri e M poli in z = 0; in generale H = B(z)/A(z) dall'equazione alle differenze. Sulla circonferenza unitaria H(e^{jω̂}) è la risposta in frequenza: |H| = prodotto delle distanze dagli zeri / prodotto delle distanze dai poli, quindi gli zeri bloccano frequenze e i poli le esaltano. Un LTI causale è BIBO stabile se e solo se tutti i poli hanno modulo < 1 (a meno di cancellazioni polo-zero); i FIR sono sempre stabili.Funzione di sistema, poli, zeri e stabilità →, Antitrasformata zetaPer tornare da X(z) a x[n] serve anche la ROC. Formula di inversione x[n] = (1/2πj)∮ X(z)z^{n-1}dz (somma dei residui). Nella pratica: ispezione (riconoscere coppie note, scegliendo la ROC), divisione lunga (sviluppo in serie di potenze), frazioni parziali per le razionali. Causale con poli semplici p_k: X = Σ A_k/(1-p_k z^-1) con A_k = [(1-p_k z^-1)X]{z=p_k}, x[n] = Σ A_k p_k^n u[n]; se il grado del numeratore in z^-1 è ≥ di quello del denominatore c'è anche una parte polinomiale (impulsi). Poli doppi: n a^n u[n]; poli complessi coniugati: r^n cos(ω0 n + φ).Antitrasformata zeta →, Proprietà della trasformata zetaProprietà della zeta bilatera con le ROC: linearità (ROC ⊇ intersezione), ritardo x[n-n0] → z^{-n0}X(z) (unilatera: + termini iniziali), convoluzione → prodotto, stabilità BIBO ⇔ circonferenza unitaria nella ROC di H, coniugato X*(z*), inversione temporale X(1/z) con ROC invertita, derivazione n x[n] → -z X'(z), moltiplicazione per a^n → X(z/a) (ROC scalata di |a|), teoremi del valore iniziale e finale (ipotesi sul polo in 1). Con la tabella delle coppie notevoli.Proprietà della trasformata zeta →, Filtri IIR - definizione e confronto con i FIRUn filtro IIR (infinite impulse response) è un sistema LTI descritto da $y[n]=\sum{\ell=1}^{N}a_\ell y[n-\ell]+\sum_{k=0}^{M}b_kx[n-k]$: l'uscita usa anche le uscite passate (retroazione), per questo si chiama ricorsivo. Con le condizioni di riposo iniziale è LTI, $H(z)=\frac{\sum b_kz^{-k}}{1-\sum a_\ell z^{-\ell}}$ è un rapporto di polinomi, l'ordine è $N$ (numero di poli) e la risposta impulsiva ha durata infinita. Nel primo ordine $y[n]=a_1y[n-1]+b_0x[n]$ si ha $h[n]=b_0a_1^nu[n]$, ROC $|z|>|a_1|$, stabile se $|a_1|<1$; il gradino dà $b_0\frac{1-a_1^{n+1}}{1-a_1}\to\frac{b_0}{1-a_1}$. Si implementa iterando l'equazione alle differenze, non con la convoluzione. Rispetto ai FIR gli IIR rispettano le stesse specifiche di modulo con ordine molto più basso, ma possono essere instabili e non hanno fase lineare. Progetto: per tentativi (notch), con la trasformazione $s\to z$ dai filtri analogici, o con ottimizzazione numerica.Filtri IIR - definizione e confronto con i FIR →, Risposta in frequenza dei sistemi FIRSe all'ingresso di un FIR c'è un esponenziale complesso A e^{jφ} e^{jω̂n} (per ogni n), l'uscita è lo stesso esponenziale moltiplicato per H(ω̂) = Σ b_k e^{-jω̂k}: la frequenza non cambia, ampiezza e fase sono modificate da |H| (guadagno) e ∠H (sfasamento). Per sovrapposizione si trattano somme di sinusoidi. H è periodica di periodo 2π e, per coefficienti reali, hermitiana (|H| pari, fase dispari). La cascata ha H = H1·H2. Esempi: ritardo (fase lineare), differenza prima (passa-alto), {1,2,1} (passa-basso), media mobile di L punti (Dirichlet: |H| = |sin(Lω̂/2)/(L sin(ω̂/2))|, fase lineare -(L-1)ω̂/2).Risposta in frequenza dei sistemi FIR →.

1. Poli e zeri

Si moltiplica numeratore e denominatore per z2z^2 per avere potenze positive di zz: H(z)=1+z−21+0,3z−1=z2+1z2+0,3z=z2+1z (z+0,3).H(z)=\frac{1+z^{-2}}{1+0{,}3z^{-1}}=\frac{z^2+1}{z^2+0{,}3z}=\frac{z^2+1}{z\,(z+0{,}3)} .

  • Zeri: z2+1=0⇒z=±jz^2+1=0\Rightarrow z=\pm j, due zeri sulla circonferenza unitaria.
  • Poli: z(z+0,3)=0⇒z=0z(z+0{,}3)=0\Rightarrow z=0 e z=−0,3z=-0{,}3.

Entrambi i poli sono dentro il cerchio unitario, quindi il sistema causale è stabile e la ROC è ∣z∣>0,3|z|>0{,}3. (Il polo in z=0z=0 viene dalla differenza di grado fra numeratore e denominatore ed è solo un ritardo.)

Grafico interattivo: H(z) = (1+z^-2)/(1+0,3 z^-1): zeri in ±j (colore 1, sulla circonferenza unitaria), poli in 0 e -0,3 (colore 3)

2. Risposta impulsiva

Si separa H(z)H(z) in due termini, usando lo stesso denominatore: H(z)=11+0,3z−1+z−2 11+0,3z−1.H(z)=\frac{1}{1+0{,}3z^{-1}}+z^{-2}\,\frac{1}{1+0{,}3z^{-1}} . La coppia di base è anu[n]↔11−az−1a^nu[n]\leftrightarrow\frac1{1-az^{-1}} (ROC ∣z∣>∣a∣|z|>|a|), qui con a=−0,3a=-0{,}3: il primo termine dà (−0,3)nu[n](-0{,}3)^nu[n]. Il fattore z−2z^{-2} è un ritardo di due campioni, quindi il secondo termine dà (−0,3)n−2u[n−2](-0{,}3)^{n-2}u[n-2]: h[n]=(−0,3)n u[n]+(−0,3)n−2 u[n−2].h[n]=(-0{,}3)^n\,u[n]+(-0{,}3)^{n-2}\,u[n-2]. Per n=0,1n=0,1 resta solo il primo termine: h[0]=1h[0]=1, h[1]=−0,3h[1]=-0{,}3; da n=2n=2 si sommano i due: h[2]=0,09+1=1,09h[2]=0{,}09+1=1{,}09, h[3]=−0,027−0,3=−0,327h[3]=-0{,}027-0{,}3=-0{,}327, h[4]=0,0081+0,09=0,0981h[4]=0{,}0081+0{,}09=0{,}0981, ... Verifica: iterando l'equazione alle differenze y[n]=−0,3y[n−1]+x[n]+x[n−2]y[n]=-0{,}3y[n-1]+x[n]+x[n-2] con un impulso si ottiene 1; −0,3; 1,09; −0,327; 0,0981; −0,02943; 0,008831;\,-0{,}3;\,1{,}09;\,-0{,}327;\,0{,}0981;\,-0{,}02943;\,0{,}00883, identici alla formula. Per n≥2n\ge2 vale h[n]=(−0,3)n(1+10,09)=12,11 (−0,3)nh[n]=(-0{,}3)^n\big(1+\frac1{0{,}09}\big)=12{,}11\,(-0{,}3)^n: esponenziale a segno alterno che decade (risposta impulsiva infinita, IIR).

3. Risposta in frequenza

Si pone z=ejω^z=e^{j\hat\omega} (lecito perché la circonferenza unitaria è nella ROC): H(ejω^)=1+e−j2ω^1+0,3 e−jω^.H(e^{j\hat\omega})=\frac{1+e^{-j2\hat\omega}}{1+0{,}3\,e^{-j\hat\omega}} . Per il modulo si può raccogliere e−jω^e^{-j\hat\omega} al numeratore: 1+e−j2ω^=e−jω^(ejω^+e−jω^)=2cos⁡ω^ e−jω^1+e^{-j2\hat\omega}=e^{-j\hat\omega}(e^{j\hat\omega}+e^{-j\hat\omega})=2\cos\hat\omega\,e^{-j\hat\omega}, quindi ∣1+e−j2ω^∣=2∣cos⁡ω^∣|1+e^{-j2\hat\omega}|=2|\cos\hat\omega| (si annulla in ω^=±π2\hat\omega=\pm\frac\pi2: i due zeri sulla circonferenza). Il denominatore ha ∣1+0,3e−jω^∣=1,09+0,6cos⁡ω^|1+0{,}3e^{-j\hat\omega}|=\sqrt{1{,}09+0{,}6\cos\hat\omega}.

4. Uscita per x1[n]=2cos⁡(πn)x_1[n]=2\cos(\pi n)

L'ingresso è un coseno eterno di pulsazione ω^0=π\hat\omega_0=\pi (cioè x1[n]=2(−1)nx_1[n]=2(-1)^n), e per un sistema LTI stabile l'uscita è lo stesso coseno moltiplicato per il modulo e sfasato della fase della risposta in frequenza: y1[n]=A ∣H(ejω^0)∣cos⁡(ω^0n+φ+∠H(ejω^0))y_1[n]=A\,|H(e^{j\hat\omega_0})|\cos\big(\hat\omega_0n+\varphi+\angle H(e^{j\hat\omega_0})\big) con A=2A=2, φ=0\varphi=0. A ω^=π\hat\omega=\pi si ha e−jπ=−1e^{-j\pi}=-1 e e−j2π=1e^{-j2\pi}=1: H(ejπ)=1+11−0,3=20,7=207=2,857,∠H(ejπ)=0H(e^{j\pi})=\frac{1+1}{1-0{,}3}=\frac{2}{0{,}7}=\frac{20}{7}=2{,}857,\qquad\angle H(e^{j\pi})=0 (numeratore e denominatore reali positivi). Quindi y1[n]=2⋅207cos⁡(πn)=407cos⁡(πn)=5,714 (−1)n.y_1[n]=2\cdot\frac{20}{7}\cos(\pi n)=\frac{40}{7}\cos(\pi n)=5{,}714\,(-1)^n . Verifica con lfilter su un ingresso causale: dopo circa 2020 campioni l'uscita coincide con 5,714(−1)n5{,}714(-1)^n (il transitorio decade come 0,3n0{,}3^n, e già a n=10n=10 vale circa 10−410^{-4}).

Osservazione. Il polo in −0,3-0{,}3 sta sul semiasse reale negativo, quindi favorisce le frequenze vicine a π\pi: ∣H(ejπ)∣=2,857|H(e^{j\pi})|=2{,}857 contro ∣H(ej0)∣=21,3=1,538|H(e^{j0})|=\frac{2}{1{,}3}=1{,}538; gli zeri in ±j\pm j annullano invece ω^=±π2\hat\omega=\pm\frac\pi2.

Versione ripasso

Punto 1 - poli e zeri. H(z)=z2+1z (z+0,3)H(z)=\dfrac{z^2+1}{z\,(z+0{,}3)}. Zeri in z=±jz=\pm j, sulla circonferenza unitaria. Poli in z=0z=0 (solo ritardo) e z=−0,3z=-0{,}3. ROC ∣z∣>0,3\lvert z\rvert>0{,}3, stabile.

Punto 2 - risposta impulsiva. H=11+0,3z−1(1+z−2)H=\frac1{1+0{,}3z^{-1}}\big(1+z^{-2}\big), quindi h[n]=(−0,3)n u[n]+(−0,3)n−2 u[n−2].h[n]=(-0{,}3)^n\,u[n]+(-0{,}3)^{n-2}\,u[n-2]. Valori: h[0]=1h[0]=1, h[1]=−0,3h[1]=-0{,}3, h[2]=1,09h[2]=1{,}09, h[3]=−0,327h[3]=-0{,}327, h[4]=0,0981h[4]=0{,}0981. Per n≥2n\ge2: h[n]=12,11 (−0,3)nh[n]=12{,}11\,(-0{,}3)^n.

Punto 3 - risposta in frequenza. H(ejω^)=1+e−j2ω^1+0,3 e−jω^H(e^{j\hat\omega})=\dfrac{1+e^{-j2\hat\omega}}{1+0{,}3\,e^{-j\hat\omega}}, con ∣1+e−j2ω^∣=2∣cos⁡ω^∣\lvert1+e^{-j2\hat\omega}\rvert=2\lvert\cos\hat\omega\rvert: gli zeri annullano ω^=±π2\hat\omega=\pm\frac\pi2.

Punto 4 - uscita per x1[n]=2cos⁡(πn)x_1[n]=2\cos(\pi n). A ω^=π\hat\omega=\pi il denominatore vale 1−0,3=0,71-0{,}3=0{,}7 e il numeratore 22, quindi H(ejπ)=20,7=207H(e^{j\pi})=\dfrac{2}{0{,}7}=\dfrac{20}{7}, con fase 00. Regime: y1[n]=407cos⁡(πn)=5,714 (−1)ny_1[n]=\dfrac{40}{7}\cos(\pi n)=5{,}714\,(-1)^n, raggiunto dopo circa 2020 campioni di transitorio.

Teoria: Funzione di sistema, poli, zeri e stabilitàLa funzione di sistema H(z) è la trasformata zeta della risposta impulsiva: con ingresso z^n l'uscita è H(z) z^n. Per un FIR H(z) = Σ b_k z^{-k} è un polinomio con M zeri e M poli in z = 0; in generale H = B(z)/A(z) dall'equazione alle differenze. Sulla circonferenza unitaria H(e^{jω̂}) è la risposta in frequenza: |H| = prodotto delle distanze dagli zeri / prodotto delle distanze dai poli, quindi gli zeri bloccano frequenze e i poli le esaltano. Un LTI causale è BIBO stabile se e solo se tutti i poli hanno modulo < 1 (a meno di cancellazioni polo-zero); i FIR sono sempre stabili.Funzione di sistema, poli, zeri e stabilità →, Antitrasformata zetaPer tornare da X(z) a x[n] serve anche la ROC. Formula di inversione x[n] = (1/2πj)∮ X(z)z^{n-1}dz (somma dei residui). Nella pratica: ispezione (riconoscere coppie note, scegliendo la ROC), divisione lunga (sviluppo in serie di potenze), frazioni parziali per le razionali. Causale con poli semplici p_k: X = Σ A_k/(1-p_k z^-1) con A_k = [(1-p_k z^-1)X]{z=p_k}, x[n] = Σ A_k p_k^n u[n]; se il grado del numeratore in z^-1 è ≥ di quello del denominatore c'è anche una parte polinomiale (impulsi). Poli doppi: n a^n u[n]; poli complessi coniugati: r^n cos(ω0 n + φ).Antitrasformata zeta →, Proprietà della trasformata zetaProprietà della zeta bilatera con le ROC: linearità (ROC ⊇ intersezione), ritardo x[n-n0] → z^{-n0}X(z) (unilatera: + termini iniziali), convoluzione → prodotto, stabilità BIBO ⇔ circonferenza unitaria nella ROC di H, coniugato X*(z*), inversione temporale X(1/z) con ROC invertita, derivazione n x[n] → -z X'(z), moltiplicazione per a^n → X(z/a) (ROC scalata di |a|), teoremi del valore iniziale e finale (ipotesi sul polo in 1). Con la tabella delle coppie notevoli.Proprietà della trasformata zeta →, Filtri IIR - definizione e confronto con i FIRUn filtro IIR (infinite impulse response) è un sistema LTI descritto da $y[n]=\sum{\ell=1}^{N}a_\ell y[n-\ell]+\sum_{k=0}^{M}b_kx[n-k]$: l'uscita usa anche le uscite passate (retroazione), per questo si chiama ricorsivo. Con le condizioni di riposo iniziale è LTI, $H(z)=\frac{\sum b_kz^{-k}}{1-\sum a_\ell z^{-\ell}}$ è un rapporto di polinomi, l'ordine è $N$ (numero di poli) e la risposta impulsiva ha durata infinita. Nel primo ordine $y[n]=a_1y[n-1]+b_0x[n]$ si ha $h[n]=b_0a_1^nu[n]$, ROC $|z|>|a_1|$, stabile se $|a_1|<1$; il gradino dà $b_0\frac{1-a_1^{n+1}}{1-a_1}\to\frac{b_0}{1-a_1}$. Si implementa iterando l'equazione alle differenze, non con la convoluzione. Rispetto ai FIR gli IIR rispettano le stesse specifiche di modulo con ordine molto più basso, ma possono essere instabili e non hanno fase lineare. Progetto: per tentativi (notch), con la trasformazione $s\to z$ dai filtri analogici, o con ottimizzazione numerica.Filtri IIR - definizione e confronto con i FIR →, Risposta in frequenza dei sistemi FIRSe all'ingresso di un FIR c'è un esponenziale complesso A e^{jφ} e^{jω̂n} (per ogni n), l'uscita è lo stesso esponenziale moltiplicato per H(ω̂) = Σ b_k e^{-jω̂k}: la frequenza non cambia, ampiezza e fase sono modificate da |H| (guadagno) e ∠H (sfasamento). Per sovrapposizione si trattano somme di sinusoidi. H è periodica di periodo 2π e, per coefficienti reali, hermitiana (|H| pari, fase dispari). La cascata ha H = H1·H2. Esempi: ritardo (fase lineare), differenza prima (passa-alto), {1,2,1} (passa-basso), media mobile di L punti (Dirichlet: |H| = |sin(Lω̂/2)/(L sin(ω̂/2))|, fase lineare -(L-1)ω̂/2).Risposta in frequenza dei sistemi FIR →.

Errori tipici:

  • Dimenticare il ritardo z−2z^{-2} nel secondo termine di h[n]h[n].
  • Valutare H(ejπ)H(e^{j\pi}) con e−jπ=+1e^{-j\pi}=+1 invece che −1-1 nel denominatore.
  • Pensare che il polo in z=0z=0 sia instabile: è solo un ritardo.
  • Scrivere cos⁡(πn)\cos(\pi n) senza il fattore 22 dell'ampiezza.

Teoria collegata