Salta al contenuto
Note per Studenti Esercizio - Train your brain 5 - risposta impulsiva da ingresso e uscita

Esercizio - Train your brain 5 - risposta impulsiva da ingresso e uscita

Testo ("Train your brain #5", lezione 7 del corso Multimedia Signal Processing, UniPD). Un sistema causale riceve l'ingresso x[n]=(12)nu[n]x[n]=(\frac12)^nu[n] e produce l'uscita y[n]=(13)nu[n]y[n]=(\frac13)^nu[n]. Calcolare h[n]h[n].

Teoria usata: 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 → (convoluzione →\to prodotto, ritardo, ROC), 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 →.

Svolgimento

Nel dominio nn, y=x∗hy=x*h non si inverte facilmente (si dovrebbe "deconvolvere"). Con la zeta la convoluzione è un prodotto, Y(z)=H(z)X(z)Y(z)=H(z)X(z), e quindi H=YXH=\frac YX. Trasformate (esponenziali causali, Trasformata zeta - definizione e regione di convergenzaLa trasformata zeta bilatera X(z) = Σ x[n] z^{-n} associa a una sequenza una funzione della variabile complessa z, definita nella regione di convergenza (ROC), sempre una corona circolare |z| in (R1, R2). Segnale a durata finita: ROC tutto il piano (tranne eventualmente 0 e ∞); causale: |z| > R1 (teorema di Abel); anticausale: |z| < R2; bilatero: intersezione, se non vuota. La stessa espressione algebrica con ROC diverse è la trasformata di segnali diversi: la ROC fa parte della trasformata. Sulla circonferenza unitaria, se è nella ROC, X(e^{jθ}) è la trasformata di Fourier. Le ROC non contengono poli.Trasformata zeta - definizione e regione di convergenza →): X(z)=11−12z−1,  ∣z∣>12;Y(z)=11−13z−1,  ∣z∣>13.X(z)=\frac1{1-\frac12z^{-1}},\ \ \lvert z\rvert>\tfrac12;\qquad Y(z)=\frac1{1-\frac13z^{-1}},\ \ \lvert z\rvert>\tfrac13. Allora H(z)=YX=1−12z−11−13z−1.H(z)=\frac{Y}{X}=\frac{1-\frac12z^{-1}}{1-\frac13z^{-1}}. Un solo polo in z=13z=\frac13 e uno zero in z=12z=\frac12. Il sistema è causale (dato), quindi la ROC di HH è l'esterno del cerchio del suo polo: ∣z∣>13\lvert z\rvert>\frac13. (Nello svolgimento a lezione si indica ∣z∣>12\lvert z\rvert>\frac12: è una ROC ammissibile in senso lato, ma non la regione di convergenza di HH; il polo è solo in 13\frac13, quindi per un sistema causale la ROC è ∣z∣>13\lvert z\rvert>\frac13. La differenza non cambia la risposta.)

Antitrasformata. Si separano i due termini del numeratore: H=11−13z−1−12 z−111−13z−1H=\dfrac1{1-\frac13z^{-1}}-\dfrac12\,z^{-1}\dfrac1{1-\frac13z^{-1}}. Il primo è (13)nu[n](\frac13)^nu[n]; il secondo, per la linearità e il ritardo di un campione (z−1↔n→n−1z^{-1}\leftrightarrow n\to n-1), è −12(13)n−1u[n−1]-\frac12(\frac13)^{n-1}u[n-1]. Quindi h[n]=(13)nu[n]−12(13)n−1u[n−1].h[n]=\Big(\frac13\Big)^nu[n]-\frac12\Big(\frac13\Big)^{n-1}u[n-1]. Per n=0n=0 resta solo il primo termine, h[0]=1h[0]=1. Per n≥1n\ge1: (13)n−12⋅3(13)n=(13)n(1−32)=−12(13)n(\frac13)^n-\frac12\cdot3(\frac13)^n=(\frac13)^n(1-\frac32)=-\frac12(\frac13)^n. Quindi h[0]=1,h[n]=−12(13)n  (n≥1):1; −16; −118; −154;…h[0]=1,\qquad h[n]=-\tfrac12\big(\tfrac13\big)^n\ \ (n\ge1):\quad 1;\ -\tfrac16;\ -\tfrac1{18};\ -\tfrac1{54};\dots (verificato con la ricorsione lfilter: 1; −0,1667; −0,0556; −0,0185;…1;\ -0{,}1667;\ -0{,}0556;\ -0{,}0185;\dots).

Verifica. Con questa hh e x[n]=(12)nu[n]x[n]=(\frac12)^nu[n] la convoluzione dà (13)n(\frac13)^n (errore massimo 7⋅10−187\cdot10^{-18} sui primi 1212 campioni). Equazione alle differenze: Y(1−13z−1)=X(1−12z−1)Y(1-\frac13z^{-1})=X(1-\frac12z^{-1}), cioè y[n]−13 y[n−1]=x[n]−12 x[n−1].y[n]-\tfrac13\,y[n-1]=x[n]-\tfrac12\,x[n-1]. Controllo diretto sul campione n=1n=1: y[1]=13y[0]+x[1]−12x[0]=13+12−12=13y[1]=\frac13y[0]+x[1]-\frac12x[0]=\frac13+\frac12-\frac12=\frac13 ✓.

Stabilità. Polo 13\frac13 dentro il cerchio unitario: stabile, ∑∣h∣=1+12⋅1/31−1/3=1,25\sum\lvert h\rvert=1+\frac12\cdot\frac{1/3}{1-1/3}=1{,}25. Osservazione: lo zero di HH in z=12z=\frac12 cancella il polo di XX in z=12z=\frac12, per questo YY ha un solo polo (13\frac13) e la ROC di YY (∣z∣>13\lvert z\rvert>\frac13) è più grande dell'intersezione RX∩RH={∣z∣>12}R_X\cap R_H=\{\lvert z\rvert>\frac12\} (una cancellazione polo-zero può allargare la ROC del prodotto).

Versione ripasso

Trasformate. X(z)=11−12z−1X(z)=\dfrac1{1-\frac12z^{-1}} con ∣z∣>12\lvert z\rvert>\frac12, Y(z)=11−13z−1Y(z)=\dfrac1{1-\frac13z^{-1}} con ∣z∣>13\lvert z\rvert>\frac13. Quindi H(z)=YX=1−12z−11−13z−1,∣z∣>13 (causale).H(z)=\frac YX=\frac{1-\frac12z^{-1}}{1-\frac13z^{-1}},\qquad\lvert z\rvert>\tfrac13\ \text{(causale)}.

Antitrasformata. h[n]=(13)nu[n]−12(13)n−1u[n−1].h[n]=\Big(\frac13\Big)^nu[n]-\frac12\Big(\frac13\Big)^{n-1}u[n-1]. Quindi h[0]=1h[0]=1 e h[n]=−12(13)nh[n]=-\frac12\big(\frac13\big)^n per n≥1n\ge1: 1; −16; −118;…1;\ -\frac16;\ -\frac1{18};\dots

Equazione alle differenze. y[n]−13 y[n−1]=x[n]−12 x[n−1]y[n]-\frac13\,y[n-1]=x[n]-\frac12\,x[n-1]. Stabile, perché il polo 13\frac13 è dentro il cerchio.

Teoria: 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 → (convoluzione →\to prodotto, ritardo, ROC), 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 →.

Errori tipici:

  • Dividere nel dominio nn invece di usare H=Y/XH=Y/X in zeta.
  • Scegliere ∣z∣>12\lvert z\rvert>\frac12 per HH: il suo polo è solo 13\frac13.

Teoria collegata