lab convolución

13
Grupo Práctica 3: Convolución Puesto Apellidos, nombre SOLUCIÓN Fecha Apellidos, nombre SOLUCIÓN El objetivo de esta práctica es familiarizar al alumno con la suma de convolución, fundamental en el estudio de los sistemas lineales, mediante la realización de ejercicios que ilustren las propiedades de dicha operación. Para llevar a cabo la práctica, desarrolle cada ejercicio en un fichero de comandos ‘ejercicio_X.m’ separado (salvo cuando se le solicite desarrollar una función, en cuyo caso el fichero llevará el nombre de la función). Justo antes de finalizar la práctica, comprima los ficheros ‘.m’ generados en un único fichero ‘practica_3_Puesto_XX . zip’, conéctese al sistema de entrega de prácticas de la Intranet y entréguelo en el grupo que corresponda. Salvo que se le indique lo contrario en algún apartado concreto, no está permitido utilizar en los scripts las funciones de control de flujo del programa de MATLAB (for, if-else, etc.). 3.1 Convolución de señales discretas 3.1.1 Ejercicio 1: convolución ‘manual’ de señales causales finitas El objetivo de este ejercicio es llevar a cabo la convolución de dos señales desarrollando directamente el significado de la operación. Sean las señales: [] + = resto n n n x 0 10 0 1 [] = resto n n h 0 3 0 1 El objetivo es calcular [ ] [ ] [ ] n h n x n y * = . Para ello, genere las señales [ ] n x y [ ] n h en el intervalo [ ] 20 , 0 n . Teniendo en cuenta que la señal [ ] n x sólo toma valor en un número finito de puntos, [ ] n y puede escribirse: [] [] [ ] [] [] [] [ ] [] [ ] [ ] [ ] 10 - n h 10 x 9 - n h 9 x ... 1 - n h 1 x n h 0 x k - n h k x + + + + = = -∞ = k n y Para obtener [ ] n y , genere, sin utilizar bucles, cada una de las once funciones (es decir, sumandos) que indica la expresión anterior y a continuación súmelas. Para poder sumarlas, todas ellas han de estar definidas en el mismo intervalo de n, en decir, [ ] 20 , 0 n . Como guía para llevar a cabo esta operación, observe que para generar un vector con la señal [ ] [ ] [ ] 5 5 5 - = n h x n y en el mismo intervalo que esté definida [ ] n h y teniendo en cuenta que los índices en Matlab comienzan en 1, se puede escribir: >> y5=x(5+1).*[zeros(1,5) h(1:end-5)];

Upload: irilizbeth

Post on 24-Oct-2015

24 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: lab convolución

Grupo Práctica 3: Convolución Puesto

Apellidos, nombre SOLUCIÓN Fecha

Apellidos, nombre SOLUCIÓN

El objetivo de esta práctica es familiarizar al alumno con la suma de convolución, fundamental en el

estudio de los sistemas lineales, mediante la realización de ejercicios que ilustren las propiedades de dicha operación.

Para llevar a cabo la práctica, desarrolle cada ejercicio en un fichero de comandos ‘ejercicio_X.m’ separado (salvo cuando se le solicite desarrollar una función, en cuyo caso el fichero llevará el nombre de la función). Justo antes de finalizar la práctica, comprima los ficheros ‘.m’ generados en un único fichero ‘practica_3_Puesto_XX . zip’, conéctese al sistema de entrega de prácticas de la Intranet y entréguelo en el grupo que corresponda.

Salvo que se le indique lo contrario en algún apartado concreto, no está permitido utilizar en los scripts las funciones de control de flujo del programa de MATLAB ( for , if-else , etc.).

3.1 Convolución de señales discretas

3.1.1 Ejercicio 1: convolución ‘manual’ de señales causales finitas

El objetivo de este ejercicio es llevar a cabo la convolución de dos señales desarrollando directamente el significado de la operación.

Sean las señales:

[ ] ≤≤+

=resto

nnnx

0

1001

[ ] ≤≤

=resto

nnh

0

301

El objetivo es calcular [ ] [ ] [ ]nhnxny ∗= . Para ello, genere las señales [ ]nx y [ ]nh en el intervalo

[ ]20,0∈n . Teniendo en cuenta que la señal [ ]nx sólo toma valor en un número finito de puntos, [ ]ny

puede escribirse:

[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]10-nh10x9-nh9x...1-nh1xnh0xk-nhkx ⋅+⋅++⋅+⋅=⋅= ∑∞

−∞=k

ny

Para obtener [ ]ny , genere, sin utilizar bucles, cada una de las once funciones (es decir, sumandos) que

indica la expresión anterior y a continuación súmelas. Para poder sumarlas, todas ellas han de estar

definidas en el mismo intervalo de n, en decir, [ ]20,0∈n . Como guía para llevar a cabo esta operación,

observe que para generar un vector con la señal [ ] [ ] [ ]555 −⋅= nhxny en el mismo intervalo que esté

definida [ ]nh y teniendo en cuenta que los índices en Matlab comienzan en 1, se puede escribir: >> y5=x(5+1).*[zeros(1,5) h(1:end-5)];

Page 2: lab convolución

Tenga en cuenta que esta operación de desplazamiento en la señal [ ]nh es válida porque [ ]nh se

definió en un intervalo mucho mayor que el que ocupan sus valores no nulos.

Represente en una figura con 11 gráficas (11 filas) las 10 señales desplazadas yk[n] y la suma y[n].

Como resultado de la suma de las once subseñales habrá obtenido [ ]ny en el mismo intervalo

[ ]20,0∈n . Represente en otra figura, en un mismo gráfico de tres filas o subgráficos (utilice subplot ),

las señales [ ]nx , [ ]nh e [ ]ny , y dibuje esta última en la gráfica adjunta:

Page 3: lab convolución

Indique cuál es la duración de la señal [ ]ny y en qué índice comienza. A la vista de la expresión

analítica de [ ]ny , indique también qué relación tiene su duración e índice de comienzo con las respectivas

duraciones e índices de comienzo de las señales [ ]nx y [ ]nh :

Duracion Y = Duracion X + Duracion H – 1 => 14 = 11 + 4 - 1.

El inicio de y[n] es básicamente el inicio de x[n] + inicio de h[n] => 0+0=0.

El final de y[n] es el inicio de y[n] + su duración.

3.1.2 Ejercicio 2: convolución ‘manual’ de señales no causales finitas

Repita el ejercicio anterior, pero utilizando esta vez una respuesta al impulso unidad definida por:

[ ] +

=,0

,2nnh

resto

n 32 ≤≤−

Defina ahora las señales involucradas en el intervalo o vector de índices [ ]20,5−∈n , y desarrolle la

convolución siguiendo el mismo procedimiento. Tenga en cuenta que en este caso el valor [ ]kx

corresponde en MATLAB con el índice x( k-(-5)+1) del vector x.

Represente en un mismo gráfico de tres filas o subgráficos (utilice subplot ), la señal [ ]nx y las

nuevas señales [ ]nh e [ ]ny , y dibuje esta última en la gráfica adjunta, indicando claramente qué índices

abarcan los valores no nulos de [ ]ny :

Page 4: lab convolución

Observe que las tres señales comparten un mismo vector de índices, que es suficientemente amplio como para contener los valores no nulos de todas ellas. Indique de nuevo qué relación tiene la duración e

índice de comienzo de [ ]ny con las respectivas duraciones e índices de comienzo de las señales [ ]nx y

[ ]nh :

Duracion Y = Duracion X + Duracion H – 1 => 15 = 11 + 5 - 1.

El inicio de y[n] es básicamente el inicio no nulo de h[n] + inicio no nulo de x[n] => -1+0=-1

El final de y[n] es el inicio de y[n] + su duración.

3.1.3 Ejercicio 3: la función conv de MATLAB

La invocación de esta función de MATLAB se realiza del siguiente modo:

nx=... % Intervalo ‘nx’ de valores no nulo s de la señal ‘x’ x=... % Definición del vector ‘x’ en el i ntervalo ‘nx’

nh=... % Intervalo ‘nh’ de valores no nulo s de la respuesta al impulso ‘h’ h=... % Definición del vector ‘h’ en el i ntervalo ‘nh’

y=conv(x,h); % Devuelve un vector ‘y’ de longitu d ‘nx+nh-1’ ny=... % Intervalo ‘ny’ de valores no nulo s de la salida ‘y’

Observe que la función conv toma como parámetros las señales x y h pero no sus vectores de índices. Por lo tanto, la función no puede obtener ni devolver el vector de índices correcto para la señal y; es responsabilidad del que llama a la función el definir de qué índice a qué índice va el vector de índices de la señal y para poder representarlo adecuadamente. En conclusión, ny lo ha de definir usted.

Page 5: lab convolución

Repita los ejercicios 1 y 2 en dos scripts, ‘ejercicio_3a.m’ y ‘ejercicio_3b.m’, utilizando la función conv . Para ello defina los vectores x y h según se ha indicado más arriba, realice la convolución, y defina el vector de índices que corresponde a la señal y (teniendo en cuenta en qué índice debe comenzar y qué longitud ha de tener). Represente al final de cada script las tres señales involucradas (como en los ejercicios anteriores), pero todas ellas sobre el vector de índices mayor, o sea, sobre ny (para ello, añada ceros antes y/o después de x y h, según convenga).

Compruebe que las señales obtenidas son iguales a las de los ejercicios anteriores.

Page 6: lab convolución

3.1.4 Ejercicio 4: convolución de señales de duración infinita

Sean las señales de duración infinita:

[ ] [ ]22

12

=−

nunxn

[ ] [ ]2+= nunh

Calcule [ ] [ ] [ ]nhnxny ∗= de forma analítica e indíquela a continuación (recuerde que 1

0

11

nnk

k

aa

a

+

=

−=−∑ )

Expresión analítica [ ] [ ]

11

121

12

n

y n u n

+ − = −

El objetivo es calcular [ ] [ ] [ ]nhnxny ∗= utilizando la función conv y evaluar la validez del resultado

cuando [ ]nx y [ ]nh no se generan en intervalos infinitos (algo que no es posible en la práctica) sino que

se truncan a intervalos finitos. Para ello, genere la señal [ ]nx en el intervalo [ ]24,0∈n y la señal [ ]nh en

el intervalo [ ]14,2−∈n , es decir, genere versiones truncadas de estas dos señales: [ ]nxT y [ ]nhT .

Obtenga a continuación su convolución [ ] [ ] [ ]nhnxny TTT ∗= , defina su vector de índices, y represente

las tres señales involucradas (xT[n], hT [n], yT[n]) e y[n] sobre un vector de índices que permita representar las cuatro señales.

Si [ ]nx y [ ]nh tienen longitud infinita, [ ] [ ] [ ]nhnxny ∗= también ha de tenerla. Al truncar las señales

involucradas, el resultado también habrá quedado truncado. Deduzca en qué intervalo de valores de n se

verifica que [ ] [ ]nyny T= , y compruebe que sus deducciones se corresponden con lo observado.

Modifique los intervalos a que se han truncado las señales [ ]nx y [ ]nh para comprobar que sus

conclusiones son correctas. Explique el resultado obtenido:

Page 7: lab convolución

3.2 Operaciones sobre sistemas LTI discretos

Sean las señales:

[ ]

=,0

,1nx

resto

n 40 ≤≤, [ ]

−=

,0

,1

,3

,1

,1

1 nh

resto

n

n

n

n

4

2

1

0

====

, [ ]

−=

,0

,1

,4

,5

,2

2 nh

resto

n

n

n

n

4

3

2

1

====

Genere [ ]nx en el intervalo [ ]9,0∈n y las otras dos en el intervalo [ ]20,0∈n . A partir de ahora,

utilice siempre la función conv para efectuar convoluciones.

3.2.1 Ejercicio 5: conmutatividad

Obtenga la señal [ ] [ ] [ ]nhnxny 11 ∗= y defina su vector de índices. Obtenga a continuación la señal

[ ] [ ] [ ]nxnhny ∗= 12 y defina su vector de índices. Represente las cuatro señales involucradas sobre el

vector de índices de mayor longitud (en un mismo gráfico, como en los ejercicios anteriores), y verifique

que [ ] [ ]nyny 21 = . Si no se verificara, explique el motivo.

Page 8: lab convolución

3.2.2 Ejercicio 6: distribución respecto de la suma

Compruebe que la convolución de la señal [ ]nx con un sistema cuya respuesta al impulso unidad sea

[ ] [ ] [ ]nhnhnh 21 += , es la misma que la suma de las señales resultantes [ ] [ ]nhnx 1∗ y [ ] [ ]nhnx 2∗ . Para

ello, represente en cada caso, en dos gráficos independientes, las señales involucradas (cinco en el primer caso y seis en el segundo), todas ellas sobre el vector de índices de mayor longitud.

Page 9: lab convolución
Page 10: lab convolución

3.2.3 Ejercicio 7: asociatividad

Sea un sistema S1 cuya relación entrada salida está definida por [ ] [ ]nxnny ⋅+= )1( , y otro sistema S2

totalmente caracterizado por [ ]nhhS 12 = . El objetivo es ver si la propiedad asociativa de la convolución

se verifica para estos dos sistemas, es decir, si:

[ ] [ ]( ) [ ] [ ] [ ] [ ]( )nhnhnxnhnhnx SSSS 2121 ∗∗=∗∗

Para obtener la señal resultante de las operaciones a la izquierda de la igualdad, proceda del siguiente modo:

Page 11: lab convolución

• Obtenga la señal [ ]y n aplicando directamente su expresión en función de la entrada, es decir

[ ] [ ]nxnny ⋅+= )1( , en vez de aplicando la convolución.

• Obtenga la señal resultante [ ] [ ] [ ]nhnynw SA 2∗=

Para obtener la señal resultante de las operaciones a la derecha de la igualdad, proceda del siguiente modo:

• Obtenga la respuesta al impulso unidad del sistema S1, es decir, obtenga la respuesta de este sistema al

impulso unidad: [ ] [ ]nnnhS δ⋅+= )1(1 . Para ello defina [ ]nδ en el mismo intervalo que lo estaba [ ]nx .

• Obtenga la respuesta al impulso del sistema S1 en serie con S2, es decir [ ] [ ] [ ]nhnhnh SS 21 ∗= . Observe

que para ello tendrá que ampliar el rango de definición de [ ]nhS1 .

• Obtenga la respuesta de este nuevo sistema a la señal de entrada: [ ] [ ] [ ]nhnxnwB ∗= .

Represente en cada caso, en dos gráficos independientes, las señales involucradas (cuatro en ambos

casos), todas ellas sobre el vector de índices de mayor longitud. Compruebe que las señales [ ]nwA y

[ ]nwB son idénticas. Si no lo fueran, explique el motivo.

No se cumplen los premisas de los sistemas LTI, por lo tanto su propiedad asociativa tampoco.

¿Qué premisa/s de los sistemas LTI no se cumple/n?

Page 12: lab convolución
Page 13: lab convolución