Esercizio - convoluzione di gradino ed esponenziali causali
In questa pagina 4
Testo (dispense del corso Teoria dei Segnali, UniPD, Es. 2.8J e 2.8K).
- 2.8J. Calcolare la convoluzione del gradino con se stesso.
- 2.8K. Calcolare la convoluzione dei due segnali esponenziali reali e . Considerare anche il caso in cui .
Teoria usata: ConvoluzioneLa convoluzione $x*y(t)=\int x(u),y(t-u),du$ combina due segnali ribaltando e traslando il secondo, moltiplicando e integrando. È commutativa, associativa, lineare; l'area del risultato è il prodotto delle aree; l'estensione è la somma delle estensioni (estremo con estremo); l'impulso $\delta$ è l'elemento neutro; la convoluzione con il gradino integra. Per due segnali periodici di uguale periodo si usa la convoluzione ciclica (integrale su un periodo). È l'operazione del filtraggio: l'uscita di un filtro è la convoluzione dell'ingresso con la risposta impulsiva.Convoluzione →, Segnali notevoli - gradino, rect, tri, sinc ed esponenzialiI segnali di uso più frequente sono la costante, la sinusoide $A_0\cos(2\pi f_0t+\varphi_0)$ e l'esponenziale complesso $Ae^{i2\pi f_0t}$ (periodici, a potenza finita), il gradino $\mathbf 1(t)$ e il segno, e gli impulsi a energia finita: $\operatorname{rect}$ (area $D$), $\operatorname{tri}$, $\operatorname{sinc}$ (area $1$), la gaussiana $e^{-\pi t^2}$ e gli esponenziali smorzati. Per ciascuno si sanno a memoria forma, area ed energia; gli altri segnali si ottengono da questi con traslazioni, scalature, somme e differenze.Segnali notevoli - gradino, rect, tri, sinc ed esponenziali →, Integrazione per sostituzioneSe nell'integranda c'è g(f(x))·f'(x), la sostituzione y = f(x), dy = f'(x)dx trasforma l'integrale in ∫g(y)dy = G(y) + k, poi si torna a x: G(f(x)) + k. Negli integrali definiti cambiano anche gli estremi (da c, d a f(c), f(d)). Si può usare anche al contrario, con x = f⁻¹(y). È il primo metodo a cui pensare; dà la tabella degli integrali "immediati per sostituzione".Integrazione per sostituzione →.
Come si calcola una convoluzione di segnali causali
La definizione è . Per segnali causali (nulli per tempi negativi) l'integrando è diverso da zero solo se entrambi i fattori lo sono:
- richiede ;
- richiede , cioè .
Quindi l'integrale si riduce all'intervallo , che esiste solo se : È coerente con la regola delle estensioni: e l'estensione della convoluzione è la somma , cioè anche il risultato è causale.
(Es. 2.8J) Il gradino con se stesso è la rampa
Per : nessun soddisfa e insieme, il prodotto è sempre e .
Per : per entrambi i gradini valgono (si ricordi se ), fuori da questo intervallo uno dei due vale (negli estremi e vale , ma un solo punto non cambia un integrale). Quindi Riassumendo: cioè la rampa: zero per , retta di pendenza per (continua in , dove vale ).
Cosa significa. Convolvere un segnale con il gradino significa integrarlo: (perché solo per ). Qui , e l'integrale del gradino da a è la rampa. Coerente anche con la derivata (Esercizio - proprietà della convoluzione, 2.8B): , e infatti la derivata della rampa è il gradino. Ripetendo: .
Perché non si può usare la regola delle aree. La regola qui non dà informazioni: il gradino ha area infinita, e infatti la rampa ha area infinita.
Numeri. ; ; ; (l'integrale numerico di dà esattamente questi valori).
Grafico interattivo: Es. 2.8J: il gradino convoluto con se stesso è la rampa t·1(t)
(Es. 2.8K) Due esponenziali causali
Caso
Con e sull'intervallo (): Passo 1: si raccolgono i fattori. , quindi l'integrando è . Il fattore non dipende da e esce dall'integrale: Passo 2: si integra. Se la primitiva di è (con ; Integrali immediatiTabella degli integrali immediati, ottenuti leggendo al contrario le derivate delle funzioni elementari: potenze, 1/x, esponenziali, seno e coseno, tangente, arcoseno, arcotangente, funzioni iperboliche e loro inverse. Per gli integrali non ci sono regole come per le derivate, solo metodi: linearità, sostituzione, per parti.Integrali immediati →): (si è usato ). Per il risultato è : È simmetrico nello scambio (numeratore e denominatore cambiano entrambi segno), come richiede la commutatività.
Controlli.
- Valore in : , quindi il risultato è continuo (l'integrale su un intervallo di lunghezza è nullo).
- Area (per ): l'area di è , quindi per la regola delle aree l'area della convoluzione deve valere . Infatti ✓.
- Forma: parte da , sale fino a un massimo e poi decade con la velocità dell'esponenziale più lento. Il massimo è dove la derivata si annulla: .
Numeri, e . . In : . Massimo in con valore . Area: . Scambiando i due esponenziali (, ) l'integrale numerico dà gli stessi valori.
Grafico interattivo: Es. 2.8K con σ1 = 1 e σ2 = 3: x(t) = e^{−t}1(t), y(t) = e^{−3t}1(t) e la loro convoluzione (e^{−t} − e^{−3t})/2, che parte da 0, ha il massimo 0,192 in t = 0,549 e decade come e^{−t}
Caso
Ora l'esponente nel Passo 1 è : l'integrando non dipende più da . Infatti L'integrale di una costante su un intervallo di lunghezza è la costante per la lunghezza: Perché compare il fattore . Le due code decadono alla stessa velocità, quindi per ogni i due fattori si compensano esattamente: ogni "fetta" dell'intervallo di integrazione contribuisce lo stesso valore , e il numero di fette è proporzionale a . Nel caso la compensazione è solo parziale e l'integrale è la differenza di due esponenziali.
Coerenza con il caso generale (limite). La formula generale è , che per è della forma . È l'opposto del rapporto incrementale della funzione : , perché . Si ritrova il risultato del caso uguale: i due casi sono lo stesso risultato, uno limite dell'altro.
Controlli. Area: (Integrazione per parti∫ f·g' dx = f·g − ∫ f'·g dx (regola del prodotto letta al contrario). Si usa per log x, arcsin x, arctan x (scritti come "funzione per 1"), per sin²x, cos²x, sinh²x, cosh²x (integrale circolare: l'integrale di partenza ricompare e si porta a sinistra) e per prodotti come x^n·e^(αx), x^n·sin(βx), e^(αx)·sin(βx).Integrazione per parti →) ✓. Massimo: , valore . Per : massimo in di valore ; in vale . Una terza convoluzione con lo stesso esponenziale dà .
Grafico interattivo: Es. 2.8K con σ1 = σ2 = 1: e^{−t}1(t) convoluto con se stesso dà t e^{−t}1(t), con massimo 1/e ≈ 0,368 in t = 1
Controllo
import numpy as np
from scipy.integrate import quad
u = lambda t: (t > 0) * 1.0
# 2.8J: integrale numerico di 1(v) 1(t-v)
for t in (-1.0, 0.5, 2.0, 3.7):
print(t, quad(lambda v: u(v)*u(t - v), -10, 20, points=[0, t])[0], max(t, 0.0))
# 2.8K: integrale numerico contro formula chiusa
def conv(s1, s2, t):
f = lambda v: np.exp(-s1*v) * np.exp(-s2*(t - v)) # solo su 0<v<t
return quad(f, 0, t)[0] if t > 0 else 0.0
def chiusa(s1, s2, t):
return (np.exp(-s1*t) - np.exp(-s2*t))/(s2 - s1) if s1 != s2 else t*np.exp(-s1*t)
for s1, s2 in ((1, 3), (3, 1), (2, 2), (0.5, 2)):
print(s1, s2, max(abs(conv(s1, s2, t) - chiusa(s1, s2, t)) for t in (0.4, 1.0, 2.5))) # ~1e-17
# area e massimo
print(quad(lambda t: chiusa(1, 3, t), 0, np.inf)[0], 1/3) # area 1/(s1 s2)
print(quad(lambda t: chiusa(2, 2, t), 0, np.inf)[0], 1/4)
ts = np.log(3)/2; print(ts, chiusa(1, 3, ts), 0.5*(3**-0.5 - 3**-1.5)) # massimo
print(chiusa(2, 2, 0.5), 1/(2*np.e))Risultati: la rampa si ritrova esattamente (per l'integrale è ); le differenze tra integrale numerico e formula chiusa sono dell'ordine dell'errore di calcolo (meno di ) per tutte le coppie , , , ; le aree numeriche sono e ; il massimo vale in nel caso e in nel caso .
Versione ripasso
- Metodo. Per segnali causali l'integrando è non nullo solo per : per , per .
- 2.8J. (rampa; convolvere con il gradino = integrare).
- 2.8K. : (area ). : gli esponenti in si cancellano, integrando costante su lunghezza : (massimo in ); è il limite del caso generale.
- Errori tipici: integrare su tutto invece di ; dimenticare nel risultato; applicare la formula con denominatore quando .