{"id":18265,"date":"2024-10-11T20:28:11","date_gmt":"2024-10-12T01:28:11","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/telg1034\/?p=36"},"modified":"2026-03-27T21:22:01","modified_gmt":"2026-03-28T02:22:01","slug":"parametros-de-sinusoides","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/dsp-unidades\/parametros-de-sinusoides\/","title":{"rendered":"1.1 Se\u00f1al - Par\u00e1metros de sinusoides con Sympy-Python"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"sinusoidal\">1. Se\u00f1ales Sinusoidales<\/h2>\n\n\n\n<p><em><strong>Referencia<\/strong><\/em>: Downey 1.1 p2.<\/p>\n\n\n\n<p>La forma general de una se\u00f1al sinusoidal en el dominio del tiempo se obtiene por medio de su argumento de una funci\u00f3n coseno de variable independiente <strong>t<\/strong>.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> x(t) = A\\cos(\\omega_0 t +\\phi) = A\\cos(2\\pi f_0 t +\\phi) <\/span>\n\n\n\n<p>por lo que se deduce que:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\omega_0 = 2\\pi f_0 <\/span>\n\n\n\n<p>se desatacan tres par\u00e1metros independientes: <br>Amplitud (<strong>A<\/strong>), fase (<strong>\u03c6<\/strong>), frecuencia angular (\u03c9) en radianes o la frecuencia por ciclos (f) en Hz.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ejercicio\">2. Ejercicio<\/h2>\n\n\n\n<p><em><strong>Referencia<\/strong><\/em>: McClellan ejemplo 2.1 p35, Downey 1.1 p2.<\/p>\n\n\n\n<p>Para la se\u00f1al definida por <strong>x<\/strong>(<em>t<\/em>) mostrar los par\u00e1metros de Amplitud, Frecuencia y Fase.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> x(t) = 20 \\cos(2\\pi(40)t - 0.4\\pi) <\/span>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2024\/11\/senalSinusoidal01.png\"><img loading=\"lazy\" decoding=\"async\" width=\"561\" height=\"439\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2024\/11\/senalSinusoidal01.png\" alt=\"se\u00f1al sinusoidal\" class=\"wp-image-41\" \/><\/a><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"analitico\">3. Desarrollo anal\u00edtico<\/h2>\n\n\n\n<p>Por observaci\u00f3n de <strong>x<\/strong>(t) seg\u00fan los conceptos definiciones en la parte te\u00f3rica:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> x(t) = A\\cos(\\omega_0 t +\\phi) <\/span>\n\n\n\n<p>los par\u00e1metros buscados son:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>Amplitud A = 20<\/p>\n\n\n\n<p>\u03c9<sub>0<\/sub> = 2 \u03c0(40) rad\/s<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>f<sub>0<\/sub> = 40 Hz<\/p>\n\n\n\n<p>\u03c6 = -0.4\u03c0 rad.<\/p>\n<\/div>\n<\/div>\n\n\n\n<p>El tama\u00f1o vertical de la se\u00f1al en el tiempo depende del par\u00e1metro Amplitud, su m\u00e1ximo y m\u00ednimo +20 a -20.<\/p>\n\n\n\n<p>El tiempo de entre m\u00e1ximos sucesivos es de 0.025 s, que es 1\/f<sub>0<\/sub> .<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"algoritmo\">4. Algoritmo con Sympy<\/h2>\n\n\n\n<p>Cuando para <strong>x<\/strong>(<strong>t<\/strong>) se requiere obtener sus <strong>par\u00e1metros<\/strong> o caracter\u00edsticas, se usa la forma simb\u00f3lica con las herramientas de la librer\u00eda Sympy.<\/p>\n\n\n\n<p>Luego de hacer el llamado a Sympy,&nbsp; procede a&nbsp; indicar la variable independiente de tiempo <code>'t'<\/code> para ser reconocida como un s\u00edmbolo. Tambi\u00e9n se pueden a\u00f1adir constantes como \u03c0 o 2\u03c0 para facilitar la escritura de la expresi\u00f3n <strong>x<\/strong>(<strong>t<\/strong>):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># ejemplo 2.1 p35 cos_args grafica senoidal<\/span>\n<span style=\"color: #ff0000\"># telg1034 DSP fiec-espol edelros@espol.@espol.edu<\/span>\n<span style=\"color: #d35400\">import<\/span> sympy <span style=\"color: #d35400\">as<\/span> sym\n\n<span style=\"color: #ff0000\"># variables continuas<\/span>\nt = sym.Symbol(<span style=\"color: #008000\">'t'<\/span>, real=<span style=\"color: #d35400\">True<\/span>,nonnegative=<span style=\"color: #d35400\">True<\/span>) <span style=\"color: #ff0000\"># t&gt;=0<\/span>\npi = sym.pi\nDosPi = sym.UnevaluatedExpr(2*sym.pi)<\/code><\/pre>\n\n\n\n<p>La expresi\u00f3n <strong>x<\/strong>(<strong>t<\/strong>) se escribe usando los s\u00edmbolos definidos en el ejercicio.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># INGRESO<\/span>\nx = 20*sym.cos(DosPi*40*t-0.4*pi)<\/code><\/pre>\n\n\n\n<p>Como la expresi\u00f3n <strong>x<\/strong>(<strong>t<\/strong>) es simple y tiene un patr\u00f3n <code>Amplitud*cos(Freq_rad*t+Fase)<\/code>, se separan sus partes con la instrucci\u00f3n <code>x<strong>.args<\/strong><\/code>. La separaci\u00f3n de argumentos se realiza con expresiones de sumas de t\u00e9rminos, factores multiplicadores o argumentos de una funci\u00f3n como el cos().<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># PROCEDIMIENTO<\/span>\namplitud = 1; freq_rad = 0; fase = 0 \npartes = x.args<\/code><\/pre>\n\n\n\n<p>El resultado de las partes es una tupla. La <strong>Amplitud<\/strong> corresponde a la parte que no tiene <code>sym.cos<\/code>, el resto deber\u00eda ser el la parte del coseno. Si la expresi\u00f3n contiene mas de dos partes, se analiza la expresi\u00f3n iterando en cada parte.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>parte_cos = sym.S.Zero <span style=\"color: #ff0000\"># busca cos(t)<\/span>\n<span style=\"color: #d35400\">for<\/span> unaparte <span style=\"color: #d35400\">in<\/span> partes:\n    <span style=\"color: #d35400\">if<\/span> <span style=\"color: #d35400\">not<\/span>(unaparte.has(sym.cos)):\n        amplitud = partes&#091;0]\n    <span style=\"color: #d35400\">else<\/span>:\n        parte_cos = unaparte<\/code><\/pre>\n\n\n\n<p>La expresi\u00f3n interna de <code>cos(Freq_rad*t+Fase)<\/code> se obtiene tambi\u00e9n como el&nbsp; argumento tupla de un solo elemento, obtenida como <code>parte_cos.args[0]<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># revisa cos(freq_rad*t+fase)<\/span>\nargumento_cos = parte_cos.args&#091;0]<\/code><\/pre>\n\n\n\n<p>Los t\u00e9rminos de la suma se revisan uno por uno, La <strong>frecuencia angular<\/strong> se obtiene como el t\u00e9rmino que tiene s\u00edmbolo <code>'t'<\/code>, que al dividir para <code>'t'<\/code> y se obtiene el valor en en radianes. La revisi\u00f3n contenido de t en un t\u00e9rmino&nbsp; se realiza por medio <code>untermino.has(t)<\/code>,&nbsp; La <strong>fase<\/strong> es el t\u00e9rmino sin el s\u00edmbolo <code>'t'<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>terminos_suma = argumento_cos.args\n<span style=\"color: #d35400\">for<\/span> untermino <span style=\"color: #d35400\">in<\/span> terminos_suma:\n<span style=\"color: #d35400\">    if<\/span> untermino.has(t):\n        freq_rad = sym.simplify(untermino\/t)\n        freq_Hz = sym.simplify(freq_rad\/(2*pi))\n<span style=\"color: #d35400\">    else<\/span>:\n        fase = untermino<\/code><\/pre>\n\n\n\n<p>La instrucci\u00f3n <code>sym.simplify()<\/code> permite simplificar los valores como \u03c0 al calcular <code>freq_Hz<\/code><\/p>\n\n\n\n<p>El bloque de resultados muestra en orden los valores obtenidos durante el proceso<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># SALIDA<\/span>\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'x(t): '<\/span>)\nsym.pprint(x)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'\\npartes o argumentos'<\/span>)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'partes : '<\/span>, partes)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'parte_cos: '<\/span>,parte_cos)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'argumento_cos: '<\/span>,argumento_cos)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'t\u00e9rminos_suma: '<\/span>, terminos_suma)\n\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'\\npar\u00e1metros'<\/span>)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'amplitud: '<\/span>,amplitud)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'freq_rad: '<\/span>,freq_rad)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'freq_Hz : '<\/span>,freq_Hz)\n<span style=\"color: #ff00ff\">print<\/span>(<span style=\"color: #008000\">'fase : '<\/span>,fase)<\/code><\/pre>\n\n\n\n<p>los resultados se presentan a continuaci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>x(t): \n20*cos(40*t*2*pi - 0.4*pi)\n\npartes o argumentos\npartes   :  (20, cos(40*t*(2*pi) - 0.4*pi))\nparte_cos:  cos(40*t*(2*pi) - 0.4*pi)\nargumento_cos:  40*t*(2*pi) - 0.4*pi\nt\u00e9rminos_suma:  (-0.4*pi, 40*t*(2*pi))\n\npar\u00e1metros\namplitud:  20\nfreq_rad:  80*pi\nfreq_Hz :  40\nfase    :  -0.4*pi\n&gt;&gt;&gt; <\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Instrucciones en Python<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# ejemplo 2.1 p35 par\u00e1metros de x(t)\n# telg1034 DSP fiec-espol edelros@espol.edu.ec\nimport sympy as sym\n\n# variables continuas\nt = sym.Symbol('t', real=True,nonnegative=True) # t&gt;=0\npi = sym.pi\nDosPi = sym.UnevaluatedExpr(2*sym.pi)\n\n# INGRESO\nx = 20*sym.cos(DosPi*40*t-0.4*pi)\n\n# PROCEDIMIENTO\namplitud = 1; freq_rad = 0; fase = 0 \npartes = x.args\nparte_cos = sym.S.Zero # busca cos(t)\nfor unaparte in partes:\n    if not(unaparte.has(sym.cos)):\n        amplitud = partes&#x5B;0]\n    else:\n        parte_cos = unaparte\n\n# revisa cos(freq_rad*t+fase)\nargumento_cos = parte_cos.args&#x5B;0]\nterminos_suma = argumento_cos.args\nfor untermino in terminos_suma:\n    if untermino.has(t):\n        freq_rad = sym.simplify(untermino\/t)\n        freq_Hz = sym.simplify(freq_rad\/(2*pi))\n    else:\n        fase = untermino\n\n# SALIDA\nprint('x(t): ')\nsym.pprint(x)\nprint('\\npartes o argumentos')\nprint('partes   : ', partes)\nprint('parte_cos: ',parte_cos)\nprint('argumento_cos: ',argumento_cos)\nprint('t\u00e9rminos_suma: ', terminos_suma)\n\nprint('\\npar\u00e1metros')\nprint('amplitud: ',amplitud)\nprint('freq_rad: ',freq_rad)\nprint('freq_Hz : ',freq_Hz)\nprint('fase    : ',fase)\n<\/pre><\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"grafica\">5. Gr\u00e1fica de la se\u00f1al sinusoidal<\/h2>\n\n\n\n<p>Para realizar la gr\u00e1fica de la funci\u00f3n se debe a\u00f1adir las librer\u00edas para los c\u00e1lculos (Numpy) y la librer\u00eda para realizar la gr\u00e1fica (Matplotlib)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># GRAFICAR x(t) ---------------------------<\/span>\n<span style=\"color: #d35400\">import<\/span> numpy <span style=\"color: #d35400\">as<\/span> np\n<span style=\"color: #d35400\">import<\/span> matplotlib.pyplot <span style=\"color: #d35400\">as<\/span> plt<\/code><\/pre>\n\n\n\n<p>Como par\u00e1metros de la funci\u00f3n peri\u00f3dica se puede indicar el n\u00famero de periodos a mostrar en la gr\u00e1fica. Recordando que el periodo <code>T<\/code> es el inverso de la frecuencia <code>f<\/code> en Hz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># INGRESO<\/span>\nmuestreo_T = 20+1 <span style=\"color: #ff0000\"># tramos+1, o pasos+1<\/span>\ngraf_periodos = 2 <span style=\"color: #ff0000\"># periodos en una grafica<\/span><\/code><\/pre>\n\n\n\n<p>Como la gr\u00e1fica b\u00e1sica realiza un muestreo de la se\u00f1al y luego une los puntos con rectas, para observar una curva \"suave\" se usar\u00eda un muestreo de unos 20 tramos o 21 muestras por periodo.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2024\/11\/senalSinusoidal01.png\"><img loading=\"lazy\" decoding=\"async\" width=\"561\" height=\"439\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2024\/11\/senalSinusoidal01.png\" alt=\"se\u00f1al sinusoidal\" class=\"wp-image-41\" \/><\/a><\/figure>\n\n\n\n<p>Las muestras de tiempo ti se obtienen con los datos de [a,b] y dt usando la instrucci\u00f3n <code>np.arange()<\/code>.<\/p>\n\n\n\n<p>Para la evaluaci\u00f3n de x(t) en el intervalo con el vector <code>ti<\/code> es preferible usar la forma num\u00e9rica (lambda) que usa todo el vector <code>ti<\/code> en una sola instrucci\u00f3n. La forma de evaluaci\u00f3n de Sympy es con <code>xt.subs()<\/code> y ser\u00eda con valores individuales. Se realiza la conversi\u00f3n de Sympy a Numpy usando la instrucci\u00f3n <code>sym.lambdify(variable, expresi\u00f3n)<\/code>. (<a href=\"http:\/\/blog.espol.edu.ec\/analisisnumerico\/sympy-formulas-y-funciones-simbolicas\/#lambdify\">lambfify<\/a> en resumen de sympy)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># x(t) a forma num\u00e9rica lambda t:<\/span>\nxt = sym.lambdify(t,x)\nxi = xt(ti) <span style=\"color: #ff0000\"># eval\u00faa en intervalo<\/span><\/code><\/pre>\n\n\n\n<p>Para revisar o recordar los detalles de la creaci\u00f3n de la gr\u00e1fica con <code>plt.plot()<\/code>, puede revisar lo indicado en los enlaces siguientes:<\/p>\n\n\n\n<p><a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/ss-unidades\/ss-u01\/senales-continuas\/\" data-type=\"post\" data-id=\"17795\">Se\u00f1ales Cont\u00ednuas con Python<\/a> (curso: Se\u00f1ales y Sistemas)<\/p>\n\n\n\n<p><a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-unidades\/fp-u08\/graficas-2d-linea\/\" data-type=\"post\" data-id=\"7956\">Gr\u00e1ficas 2D de l\u00ednea<\/a> (curso: Fundamentos de Programaci\u00f3n)<\/p>\n\n\n\n<p><strong><em>Observaci\u00f3n<\/em><\/strong>:&nbsp; Para la gr\u00e1fica se requieren valores num\u00e9ricos reales (float) en los vectores [ti,xi]. Si la expresi\u00f3n de x(t) a\u00fan no se definen los valores de los par\u00e1metros, la secci\u00f3n de la gr\u00e1fica mostrar\u00eda un error. Considerar para el pr\u00f3ximo algoritmo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Instrucciones en Python<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# GRAFICAR x(t) ---------------------------\nimport numpy as np\nimport matplotlib.pyplot as plt\n\n# INGRESO\nmuestreo_T = 20+1 # tramos+1, o pasos+1\nperiodos_graf = 2 # periodos en una grafica\n\n# PROCEDIMIENTO GRAFICA\nT = 1\/freq_Hz\n\na = 0    # &#x5B;a,b] intervalo ti\nb = T*periodos_graf\ndt = T\/(muestreo_T-1)  # tama\u00f1o de paso,tramo, muestreo\nti = np.arange(a,b+dt,dt,dtype=float)\n\n# x(t) a forma num\u00e9rica lambda t:\nxt = sym.lambdify(t,x)\nxi = xt(ti) # eval\u00faa en intervalo\n\n# graficar\nplt.plot(ti,xi,label='x(t)')\nplt.plot(ti,xi,'o',label='x(ti)')\nplt.axhline(0,color='black')\nplt.xlabel('t (segundos)')\nplt.ylabel('y')\nplt.title('x(t) = ' + str(x))\nplt.legend()\nplt.grid()\nplt.show()\n<\/pre><\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">6. Tarea<\/h2>\n\n\n\n<p>Usar el algoritmo con los siguientes ejercicios y observar las diferencias al usar Sympy al determinar los par\u00e1metros. Crear nuevos S\u00edmbolos de ser necesario<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>x = 10*sym.cos(2*pi*440*t-0.4*pi)\nx = 10*sym.cos(DosPi*440*t-0.4*pi)\nx = 20*sym.cos(DosPi*40*t-0.4*pi)\nx = 4*sym.cos(40*pi*t+pi\/3)\nx = A*sym.sin(w*t+p)<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p>Se\u00f1al <a href=\"#sinusoidal\">sinusoidal<\/a><\/p>\n\n\n\n<p><a href=\"#ejercicio\">ejercicio<\/a><\/p>\n\n\n\n<p><a href=\"#analitico\">anal\u00edtico<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#grafica\">gr\u00e1fica<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n","protected":false},"excerpt":{"rendered":"<p>Se\u00f1al sinusoidal ejercicio anal\u00edtico algoritmo gr\u00e1fica 1. Se\u00f1ales Sinusoidales Referencia: Downey 1.1 p2. La forma general de una se\u00f1al sinusoidal en el dominio del tiempo se obtiene por medio de su argumento de una funci\u00f3n coseno de variable independiente t. por lo que se deduce que: se desatacan tres par\u00e1metros independientes: Amplitud (A), fase (\u03c6), [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-dsp-unidades","format":"standard","meta":{"footnotes":""},"categories":[193],"tags":[],"class_list":["post-18265","post","type-post","status-publish","format-standard","hentry","category-dsp-unidades"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/18265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=18265"}],"version-history":[{"count":5,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/18265\/revisions"}],"predecessor-version":[{"id":21322,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/18265\/revisions\/21322"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=18265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=18265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=18265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}