Академический Документы
Профессиональный Документы
Культура Документы
Convolucin de tiempo
discreto
En matemticas y, en particular, anlisis funcional, una convoucin es un
operador matemtico que transforma dos funciones f y g en una tercera funcin.
Lo que representa esta tercera funcin es simplemente la magnitud en la que se
superponen f y una versin trasladada e invertida de g.
El sinicado de la convolucin vara segn las funciones a operar, por ejemplo:
En Ingeniera en Telecomunicaciones, si se convoluciona una seal excitatriz con la respuesta a pulso unitario de un sistema, el resultado es la
respuesta del sistema a la mencionada seal excitatriz.
La convolucin de tiempo discreto tambin es empleada para multiplicar
polinomios.
La operacin inversa de la convolucin o deconvolucin se emplea para
dividir polinomios.
En el presente captulo se denir la suma de convolucin tanto para seales
aperidicas como para seales peridicas. Tambin se denirn varios mtodos
que facilitan a los seres humanos su clculo.
5.1
110
Definicin 5.1 Convolucin para seales de duracin innita y valuada en n = m. Sean f (n) y g(n) dos seales energa, su convolucin evaluada
para n = m se plantea como:
f (n) se mantiene ja.
f (n)
g(n) se reeja y se retrasa en m, es decir, n cambia por (n m) por lo
cual la funcin cambia como:
g (n) g ( (n m))
Las funciones se multiplican: punto a punto como en todo producto de
funciones.
f (n) g ( (n m))
Se calcula el rea del producto
f g (m) = lim
N
1
m=(N 1)
f (n) g ( (n m))
n, mZ
(5.1)
Siguiendo la denicin 5.1 si se desea conocer la convolucin para todo instante de tiempo se tendra que crear un registro para m tomando valores de un
extremo a otro del innito, es decir m (, ). Una forma de generalizar y
simplicar este proceso es mediante un cambio de variable tal como se dene a
continuacin.
Definicin 5.2 Convolucin de seales de duracin innita y para
toda n. Dadas las secuencias energa f (n) y g (n), su convolucin f g (n)
queda descrita por la siguiente ecuacin.
f g (n) = lim
5.2
N
1
m=(N 1)
f (m) g ( (m n)) ;
n, mZ
(5.2)
f g (n) =
Nf
m=0
f (m) g ( (m n)) n [0 , Nf + Ng 2]
111
(5.3)
Teorema 5.2 El dominio de la secuencia de convolucin. Dada la secuencia de duracin nita f , de longitud Nf y cuyo dominio est en el intervalo
n [0 , Nf ]. Dada tamin dada la secuencia g, de longitud Ng y cuyo dominio
est en el intervalo n [0 , Ng ]. El conjunto domnio de la secuencia convoucin
f g (n) es:
dom {f g} = [0 , Nf + Ng 2]
(5.4)
Teorema 5.3 La longitud de la secuencia de convolucin. Dada la secuencia de duracin nita f , de longitud Nf y cuyo dominio est en el intervalo
n [0 , Nf ]. Dada tamin dada la secuencia g, de longitud Ng y cuyo dominio est en el intervalo n [0 , Ng ]. La longitud de la secuencia de convolucin f g (n)
se representa como Nf g y se calcula como:
Nf g = Nf + Ng 1
5.3
(5.5)
A continuacin se describen varios mtodos empleados para realizar la operacin de convolucin. El primer mtodo, por frmula, es el ms complicado y
es implementado solamente para su uso en computadoras. El mtodo de la cinta
deslizante facilita la compresin visual de la mecnica que sigue la convolucin.
Los mtodos de multiplicacin y malla son algoritmos rpidos para el uso de
humanos. El mtodo matricial es usado para el planteamiento de ecuaciones que
modelan algn sistema.
5.3.1
=
=
(5.6)
En donde:
Nf
Ng
(5.7)
112
=
=
=
=
=
=
f(0)g(0)
f(0)g(1)
f(0)g(2)
f(0)g(3)
f(0)g(4)
f(0)g(5)
+
+
+
+
+
+
f(1)g(-1)
f(1)g(0)
f(1)g(1)
f(1)g(2)
f(1)g(3)
f(1)g(4)
+
+
+
+
+
+
f(2)g(-2)
f(2)g(-1)
f(2)g(0)
f(2)g(1)
f(2)g(2)
f(2)g(3)
+
+
+
+
+
+
f(3)g(-3)
f(3)g(-2)
f(3)g(-1)
f(3)g(0)
f(3)g(1)
f(3)g(2)
Cuadro 5.1: Convolucin para las secuencias f = [f (0) , f (1) , f (2) , f (3)] y
g = [g (0) , g (1) , g (2)] . Los trminos marcados en rojo no son vlidos.
Ahora se desarrolla en la tabla del cuadro 5.1 la suma de convolucin para
las secuencias dadas en la ecuacin 5.6.
Los productos en rojo corresponden con ndices para los cuales el segundo
operando de la convolucin no tiene elementos denidos. Ahora bien, realizando
los productos indicados se tiene que la convolucin es:
f g = [f g(0), f g(1), g g (2) , f g(3), f g(4), f g(5)]
(5.8)
donde:
f
f
f
f
f
f
g (0)
g (1)
g (2)
g (3)
g (4)
g (5)
=
=
=
=
=
=
f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)
(5.9)
(5.10)
5.3.2
(5.11)
113
=
=
5.3.3
= [2, 5, 0, 4]
= [4, 1, 3]
(5.12)
114
5.3.4
(5.13)
El mtodo matricial
Considrense las dos secuencias siguientes: son las mismas ecuaciones 5.6.
f
g
=
=
f
f
f
f
f
f
g (0)
g (1)
g (2)
g (3)
g (4)
g (5)
g (0)
g (1)
g (2)
0
0
0
0
g (0)
g (1)
g (2)
0
0
0
0
g (0)
g (1)
g (2)
0
0
0
0
g (0)
g (1)
g (2)
115
f (0)
f (1)
f (2)
f (3)
(5.14)
f g =GF
5.3.5
= [2, 5, 0, 4]
= [4, 1, 3]
f g (n) =
4
1
3
0
0
0
0
4
1
3
0
0
0
0
4
1
3
0
0
0
0
4
1
3
5
=
0
8
22
11
31
4
12
(5.16)
116
f(1)
f(2)
f(3)
g(0)
g(1)
g(2)
f(1)
f(2)
f(3)
f(0)g(0)
f(1)g(0)
f(2)g(0)
f(3)g(0)
g(0)
f(0)g(1)
f(1)g(1)
f(2)g(1)
f(3)g(1)
g(1)
f(0)g(2)
f(1)g(2)
f(2)g(2)
f(3)g(2)
g(2)
5.3.6
El mtodo de la malla
Considrense las dos secuencias siguientes: son las mismas ecuaciones: 5.6.
f
g
=
=
Primero se crea una malla tal como se ilustra en el cuadro 5.4: en el rengln
superior se coloca la secuencia f en tanto que en la columna ms a la derecha
se coloca la secuencia g.
Luego la malla se llena con el producto cartesiano de las secuencia, tal como
se indica en la tabla del cuadro 5.5.
Finalmente, se realizan sumas en diagonal hacia abajo-izquierda, tal como
se indica en el cuadro 5.6. Los totales son los trminos de la secuencia de convolucin.
donde:
117
Cuadro 5.7: Convolucin por el mtodo de malla para las secuencias f=[2,5,0,4]
y g=[4,1,3].
f
f
f
f
f
f
g (0)
g (1)
g (2)
g (3)
g (4)
g (5)
=
=
=
=
=
=
f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)
5.3.7
= [2, 5, 0, 4]
= [4, 1, 3]
5.3.8
Considrense las dos secuencias siguientes: son las mismas ecuaciones: 5.6.
118
f(1)
g(1)
f(0)g(0)
f(2)
g(2)
f(1)g(0)
+
f(0)g(1)
f*g(0)
f(3)
f(2)g(0)
+
f(1)g(1)
f(0)g(2)
f*g(1)
f(3)g(0)
+
f*g(2)
f(2)g(1)
f(1)g(2)
f*g(3)
f(3)g(1)
f(2)g(2)
f(3)g(2)
f*g(4)
f*g(5)
5
1
20
2
22
0
3
0
5
6
11
4
+
16
0
15
31
4
0
4
12
12
Cuadro 5.9: Convolucin por el mtodo del producto para las secuencias
f=[2,5,0,4] y g=[4,1,3].
f
g
=
=
g (0)
g (1)
g (2)
g (3)
g (4)
g (5)
=
=
=
=
=
=
f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)
5.3.9
=
=
[2, 5, 0, 4]
[4, 1, 3]
119
5.4
=
=
(5.17)
(5.18)
(5.19)
(5.20)
(5.21)
(5.22)
120
(5.23)
f (n) g (n ) = h (n )
(5.24)
f (n ) g (n ) = h (n )
(5.25)
5.5
(5.26)
Por ejemplo
>
>
>
f = [2, 5, 0, 4]
g = [4, 1, 3]
conv (f, g)
>
121
> f = [2, 5, 0, 4]
> g = [4, 1, 3]
> conv (f, g, f ull )
> [8, 22, 11, 31, 4, 12]
Por ejemplo
> f = [2, 5, 0, 4]
> g = [4, 1, 3]
> conv (f, g, same )
> [22, 11, 31, 4]
5.6
Convolucin circular
5.6.1
Secuencia peridica
Sea la secuencia peridica f con longitud N = 3 tal como se ilustra a continuacin (note que en la ecuacin hay un origen denido)
1 FFT es la abreviacin de Fast Fourier Transform y es un algoritmo para calcular en
forma rpida la Transforma Discreta de Fourier.
122
(5.27)
(5.28)
5.6.2
5.6.3
Teorema 5.10 Desplazamiento hacia adelante de una secuencia peridica. Un dezplazamiento hacia adelante implica un corrimiento hacia la
izquierda de los elementoos de la secuencia. En este caso, el elemento ms a la
izquierda sale por izquierda e ingresa por la derecha, es decir.
5.6.4
x (n)
x (n + 1)
(5.29)
Teorema 5.11 Desplazamiento hacia atrs de una secuencia peridica. Cuando una secuencia peridica se atrasa un paso, el elemento ms a la
derecha sale por derecha e ingresa por la izquierda, es decir.
x (n)
x (n 1)
(5.30)
5.6.5
123
N
1
m=0
f (m) g ( (m n)) ;
n [0, N 1]
(5.31)
Para ejemplicar el comportamiento peridico de la frmula, sta se desarrollar considerando las secuencias peridicas siguientes:
f
(5.32)
f g (1)
f g (2)
(5.33)
=
=
=
g (2)
g (1)
g (0)
(5.34)
5.6.6
f g (0)
f g (1)
f g (2)
(5.35)
Definicin 5.4 Longitud de la secuencia de convolucin circuilar. Dadas dos secuencias f (n) y g (n) de longitud N , la convolucin circular de ambas
funciones es otra funcin f g (n) de longitud N .
124
Figura 5.1: (a)Representacin del operando f . (b) Acomodo de los dos operandos
f y g para la convolucin circular.
5.7
5.7.1
Ejemplo
[2, 5, 0, 4]
[4, 1, 3, 0]
(5.36)
5.7.2
g (0)
g (1)
g (2)
g (3)
=
=
=
=
24
21
23
20
+
+
+
+
50
54
51
53
+
+
+
+
03
00
04
01
+
+
+
+
41
43
40
44
=
=
=
=
12
34
11
31
(5.37)
Sea la secuencia f = [f (0) , f (1) , f (2)] el primer operando de una convolucin circular. ste operando puede representarse con puntos equidistantes sobre
un crculo. Los puntos se numeran en el sentido de las manecillas del reloj tal como ilustra la gura 5.1.a. Preste atencin en donde se coloca el primer elemento
de la secuencia.
Sea la secuencia g = [g (0) , g (1) , g (2)] el segundo operando de una convolucin circular. Este operando se representa con puntos equidistantes sobre un
crculo inscrito en el crculo del operando f . Los puntos se numeran en sentido contrario al de las manecillas del reloj y haciendo coincidir el origen de la
secuencia g con el origen de la secuencia f . La gura 5.1.b ilustra tal acomodo.
125
126
5.7.3
[2, 5, 0, 4]
[4, 1, 3, 0]
5.7.4
(5.38)
Mtodo matricial
[2, 5, 0, 4]
[4, 1, 3, 0]
f g (0)
f g (1)
f g (2)
127
f g (0)
g (0)
f g (1) = g (1)
f g (2)
g (2)
g (1)
f (0)
g (2) f (1)
g (0)
f (2)
g (2)
g (0)
g (1)
(5.39)
(5.40)
[f g] = GF
En donde:
g (0)
G = g (1)
g (2)
g (1)
g (2)
g (0)
g (2)
g (0)
g (1)
(5.41)
f (0)
F = f (1)
f (2)
(5.42)
5.7.5
Ejemplo
[2, 5, 0, 4]
[4, 1, 3, 0]
f
f
f
f
g (0)
4
1
g (1)
=
g (2) 3
g (3)
0
0
4
1
3
3
0
4
1
1
12
34
3
0 11
4
31
128
5.7.6
5.7.7
Ejemplo
[2, 5, 0, 4]
[4, 1, 3]
Ng
=
=
=
Nf + Ng 1
4+31
6
[f, 0, 0]
[g, 0, 0, 0]
4 0 0 0
1 4 0 0
3 1 4 0
f g =
0 3 1 4
0 0 3 1
0 0 0 3
[2, 5, 0, 4, 0, 0]
(5.43)
[4, 1, 3, 0, 0, 0]
se calcula como:
3 1
2
0 3
5
0 0 0
=
0 0 4
4 0 0
1 4
0
8
22
11
31
4
12
(5.44)
5.8
129
=
=
(5.45)
(5.46)
(5.47)
(5.48)
(5.49)
(5.50)
(5.51)
f (n) g (n ) = h (n )
(5.52)
f (n ) g (n ) = h (n )
(5.53)
(5.54)
130
5.9
5.9.1
Convolucin 2D
f (m, n) =
g (m, n) =
...
...
...
...
...
...
f (0, 1)
f (1, 1)
f (2, 1)
...
...
f (0, 0)
f (1, 0)
f (2, 0)
...
...
f (0, 1)
f (1, 1)
f (2, 1)
...
...
...
f (0, 2) . . .
f (1, 2) . . .
f (2, 2) . . .
...
...
(5.55)
...
...
...
...
...
...
g (0, 1)
g (1, 1)
g (2, 1)
...
...
g (0, 0)
g (1, 0)
g (2, 0)
...
...
g (0, 1)
g (1, 1)
g (2, 1)
...
...
...
g (0, 2) . . .
g (1, 2) . . .
g (2, 2) . . .
...
...
(5.56)
5.9.2
r= c=
f (r, c) g (m r, n c)
(5.57)
f (m, n) =
g (m, n) =
f (0, 0)
f (1, 0)
f (2, 0)
...
f (Mf , 0)
f (0, 1)
f (1, 1)
f (2, 1)
...
f (Mf , 1)
f (0, 2)
f (1, 2)
f (2, 2)
...
f (Mf , 2)
...
...
...
...
...
f (0, Nf )
f (1, Nf )
f (2, Nf )
...
f (Mf , Nf )
g (0, 0)
g (1, 0)
g (2, 0)
...
g (Mg , 0)
g (0, 1)
g (1, 1)
g (2, 1)
...
g (Mg , 1)
g (0, 2)
g (1, 2)
g (2, 2)
...
g (Mg , 2)
...
...
...
...
...
g (0, Ng )
g (1, Ng )
g (2, Ng )
...
g (Mg , Ng )
(Mf , Nf )
size (g)
(Mg , Ng )
131
(5.58)
(5.59)
(5.60)
Mf 1 Nf 1
r=0
c=0
f (r, c) g (m r, n c)
(5.61)
m [0, Mf + Mg 2] n [0, Nf + Ng 2]
5.9.3
(Mf , Nf )
size (g)
(Mg , Ng )
5.9.4
(5.62)
Para reejar una matriz se realizan dos pasos. El orden de los pasos no
importa.
Se reejan las columnas de la matriz.
Se reejan los renglones de la matriz.
132
g (2, 0) g (2, 1)
g (1, 2) g (1, 1)
g (0, 2) g (0, 1)
Segund, se reejan los renglones
g (2, 2)
g R (m, n) = g (1, 2)
g (0, 2)
5.9.5
g (2, 2)
g (1, 2)
g (0, 2)
g (2, 1)
g (1, 1)
g (0, 1)
g (2, 0)
g (1, 0)
g (0, 0)
(5.63)
(5.64)
(5.65)
El algoritmo es simple:
La matriz f (m, n) se mantiene sin cambios.
La matriz g (m, n) se reeja y se desplaza en pasos de adelante hacia atrs
tanto en renglones como en columnas.
133
5.9.6
Ejemplo
1 1
f (m, n) = 1 1
1 1
1 2
g (m, n) = 2 4
1 2
Las dimensiones de las matrices son:
deben convolucionarse
1
1
1
1
2
1
size (f )
(Mf , Nf )
(3, 3)
size (g)
(Mg , Ng )
(3, 3)
(5.66)
(5.67)
(5.68)
(5.69)
1 3
4
3 1
3 9 12 9 3
(5.70)
f g (m, n) =
4 12 16 12 4
3 9 12 9 3
1 3
4
3 1
5.10
Convolucin circular 2D
5.10.1
134
135
g (0, 0)
g (m, n) = g (1, 0)
g (2, 0)
g (0, 1)
g (1, 1)
g (2, 1)
g (0, 2)
g (1, 2)
g (2, 2)
136