Skip to content

Instantly share code, notes, and snippets.

@RodrigoPrior
Last active November 5, 2017 15:25
Show Gist options
  • Save RodrigoPrior/a6d5c4256a69e2e2f11f to your computer and use it in GitHub Desktop.
Save RodrigoPrior/a6d5c4256a69e2e2f11f to your computer and use it in GitHub Desktop.
PEL304-aula1.ipnb
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# PEL 2013 - Processamento de Sinais Discretos no Tempo\n",
"\n",
"Nome: Rodrigo Prior Bechelli \n",
"Curso: Processamento de Sinais \n",
"Profa. Ivandro Sanches "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Exercícios"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"source": [
"%pylab inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Sejam dois sinais h(n) e x(n) tais que:\n",
"\n",
"|h(n)|x(n)| n |\n",
"|----|----|---|\n",
"| 10 | 1 | 0 |\n",
"| 5 | -1 | 1 |\n",
"| 3 | 1 | 2 |\n",
"| 2 | -1 | 3 |\n",
"| 1 | 0 | 4 |\n",
"\n",
"com h(n) e x(n) sendo 0 (zero) para os outros valores de n."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"h_n = np.array([10.,5.,3.,2.,1.])\n",
"x_n = np.array([1.,-1.,1.,-1.,0.])\n",
"n = np.array([0,1,2,3,4])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"a) Obtenha o sinal y(n) resultante da convolução entre h(n) e x(n) aplicando\n",
"manualmente a definição de convolução discreta apresentada anteriormente"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\\begin{align}\n",
"y(n) = \\sum_{k=0}^{4} x(k)h(n-k)\n",
"\\end{align}"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"b) Compare o resultado do item anterior com a aplicação da função conv() do\n",
"MATLAB tendo como argumentos de entrada os mesmos sinais h(n) e x(n)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 8., -6., -3., -2., -1.])"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y_n = np.convolve(h_n, x_n, mode='same')\n",
"y_n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 10., -5., 8., -6., -3., -2., -1., -1., 0.])"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y_n = np.convolve(h_n, x_n)\n",
"y_n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"c) Compare o resultado dos itens anteriores com o resultado da multiplicação\n",
"dos polinômios\n",
"\n",
"\\begin{align}\n",
"(10z^0 +5z^{-1} +3z^{-2} +2z^{-3} +1z^{-4} )\n",
"\\end{align}\n",
"e \n",
"\\begin{align}\n",
"(1z^0 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3} ) \n",
"\\end{align}\n",
"\n",
"Note então que convolução é equivalente a uma multiplicação de polinômios."
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"\\begin{align}\n",
"y(n) = \n",
"\t\t& 10.&(1 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3}) & + \\\\\n",
"\t\t& 5z^{-1}.&(1 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3}) & +\\\\\n",
"\t\t& 3z^{-2}.&(1 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3}) & +\\\\\n",
"\t\t& 2z^{-3}.&(1 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3}) & +\\\\\n",
"\t\t& 1z^{-4}.&(1 +(-1)z^{-1} +1z^{-2} +(-1)z^{-3}) & \n",
"\\\\\n",
"\\end{align}\n",
"\n",
"\\begin{equation}\n",
"y(n) = 10z^{0} + (-5)z^{-1} + 8z^{-2} + (-6)z^{-3} + (-3)z^{-4} + (-2)z^{-5} + (-1)z^{-6} + (-1)z^{-7}\n",
"\\end{equation}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"d) Qual é o resultado da convolução de h(n) com o impulso unitário?"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0., 0., 1., 0., 0.])"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"impulso = np.zeros(len(h_n))\n",
"impulso[2] = 1\n",
"impulso"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0., 0., 10., 5., 3., 2., 1., 0., 0.])"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.convolve(h_n, impulso)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Dada uma sequência qualquer x(n) de tamanho N, mostre que podemos construir uma sequência, y(n), periódica (de período N) ao replicar x(n) como segue:\n",
"\n",
"\\begin{align}\n",
"y(n) = \\sum^{\\infty}_{k=-\\infty} x(n-kN)\n",
"\\end{align}\n",
"\n",
"\n",
"Obs.: \n",
"1) x(n) é 0 (zero) para n < 0 e n >= N"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": false
},
"source": [
"\\begin{align}\n",
"y(n) =& \\sum^{\\infty}_{k=-\\infty} x(n-kN) \\\\\n",
"y(n) =& \\sum^{N-1}_{k=0} x(n-kN)\n",
"\\end{align}\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"2) Dica: mostre que y(n) = y(n+N) para qualquer n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"Para: \n",
"\\begin{align}\n",
"y(n) =& y(n+N) \\\\\n",
"y(n) =& \\sum^{\\infty}_{k=-\\infty} x(n-kN) \\\\\n",
"y(n+N) =& \\sum^{\\infty}_{k=-\\infty} x((n+N)-kN) \\\\\n",
"\\end{align}\n",
"Temos: \n",
"\\begin{align}\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty}_{k=-\\infty} x((n+N)-kN) \\\\\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty}_{k=-\\infty} x(n-kN+N) \\\\\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty}_{k=-\\infty} x(n-(k+1)N) \\\\\n",
"\\end{align}\n",
"Efetuando uma mudança de base na somatória temos: \n",
"\\begin{align}\n",
"m =& (k+1) \\\\\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty+1}_{m=-\\infty+1} x(n-mN) \\\\\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty}_{m=-\\infty} x(n-mN) \\\\\n",
"\\end{align}\n",
"Renomeando m temos:\n",
"\\begin{align}\n",
"m =& k \\\\\n",
"\\sum^{\\infty}_{k=-\\infty} x(n-kN) =& \\sum^{\\infty}_{k=-\\infty} x(n-kN) \\\\\n",
"\\end{align}\n",
"c.q.d"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Seja h(n) do exercício 1. Apresente o gráfico das novas sequências dadas por"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"a) a(n) = h(n-3)"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"R.: Para h(n) temos:"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f9844245d10>"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f98442a1b50>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(n, h_n, 'g', marker=\"o\", label='h(n)')\n",
"plt.plot((n - 3), h_n, 'r', marker=\"s\", label='a(n)')\n",
"plt.legend(loc='upper right')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"b) b(n) = h(-n)"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f9844c04190>"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nrGL+D9GAVaS37XjHAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f98444da290>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(n, h_n, 'g', marker=\"o\", label='h(n)')\n",
"plt.plot((-n), h_n, 'r', marker=\"s\", label='b(n)')\n",
"plt.legend(loc='upper right')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"c) c(n) = h(-n+2)"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f9844124610>"
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f98441958d0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(n, h_n, 'g', marker=\"o\", label='h(n)')\n",
"plt.plot((-n+2), h_n, 'r', marker=\"s\", label='c(n)')\n",
"plt.legend(loc='upper right')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"d) d(n) = (h(-n) + h(n))/2, e compare com a sequência do item e)"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f984406ca90>"
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nPyLiYUV0RXqbAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f9844cf0dd0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(n, h_n, 'g', marker=\"o\", label='h(n)')\n",
"plt.plot((-n), h_n, 'r', marker=\"s\", label='d(n)')\n",
"plt.legend(loc='upper right')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"e) e(n) = h(-n) + h(n).*u(n-1) onde u(n) é o degrau unitário, já definido e '.*' é multiplicação elemento a elemento no MATLAB."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"f) f(n) = (h(n) - h(-n))/2"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"g) g(n) = d(n) + f(n), e compare com h(n). d(n) é a função par de h(n) e f(n) é a função ímpar de h(n). Note então que qualquer sequência pode ser decomposta em suas partes pares e ímpares."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## (Time Scaling) Sejam as seguintes transformações:\n",
"\n",
"\\begin{equation}\n",
"y(n) = x(M n) \\\\\n",
"e,\\\\\n",
"z(n) = x(n / N) \\\\\n",
"\\end{equation}\n",
"\n",
"\n",
"com M e N inteiros positivos. A primeira operação é conhecida como **down-sampling**, a segunda como **up-sampling**. No caso 'M n' a sequência x(M n) é formada ao se tomar cada M ésima amostra de x(n). No caso 'n / N' a sequência z(n) é definida como segue:\n",
"\n",
"\\begin{equation}\n",
"z(n) = \\left\n",
"\\{\\begin{matrix}\n",
"x({n \\over x}) & n=0,\\pm N, \\pm 2N,... \\\\ \n",
"0 & caso..contrario\n",
"\\end{matrix}\\right.\n",
"\\end{equation}\n",
"\n",
"\n",
"Com h(n) do exercício 1:\n",
"\n",
"a) (down-sampling) obtenha h(2n) graficamente"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"b) (up-sampling) obtenha h(n/2) graficamente"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.8"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment