{"id":8098,"date":"2022-01-25T19:30:04","date_gmt":"2022-01-26T00:30:04","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/analisisnumerico\/?p=8098"},"modified":"2026-04-05T20:49:40","modified_gmt":"2026-04-06T01:49:40","slug":"s2eva2021paoii_t3-edp-linea-de-transmision-sin-perdidas","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-s2eva30\/s2eva2021paoii_t3-edp-linea-de-transmision-sin-perdidas\/","title":{"rendered":"s2Eva2021PAOII_T3 EDP L\u00ednea de transmisi\u00f3n sin p\u00e9rdidas"},"content":{"rendered":"\n<p><strong>Ejercicio<\/strong>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-2eva30\/2eva2021paoii_t3-edp-linea-transmision-sinperdidas\/\" data-type=\"post\" data-id=\"8077\">2Eva2021PAOII_T3 EDP L\u00ednea de transmisi\u00f3n sin p\u00e9rdidas<\/a><\/p>\n\n\n\n<p>Desarrollo para determinar el Voltaje&nbsp; v(t),<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{\\partial ^2 V}{\\partial x^2} =LC \\frac{\\partial ^2 V}{\\partial t^2} <\/span>\n\n\n\n<p class=\"has-text-align-center\">0 &lt; x &lt; 200<br>t&gt;0<\/p>\n\n\n\n<p>Seleccionando diferencias divididas centradas para x y t<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2022\/01\/transmisionSinPerdidas02.png\" alt=\"l\u00ednea de transmisi\u00f3n Sin P\u00e9rdidas 02\" class=\"wp-image-18393\" \/><\/figure>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{v_{i,j+1}-2v_{i,j}+v_{i,j-1}}{(\\Delta x)^2} =LC \\frac{v_{i+1,j}-2v_{i,j}+v_{i-1,j}}{(\\Delta t)^2} <\/span>\n\n\n\n<p>agrupando las constantes como lambda,<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{(\\Delta t)^2}{LC}\\frac{v_{i,j+1}-2v_{i,j}+v_{i,j-1}}{(\\Delta x)^2} =LC \\frac{v_{i+1,j}-2v_{i,j}+v_{i-1,j}}{(\\Delta t)^2} \\frac{(\\Delta t)^2}{LC}<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{(\\Delta t)^2}{LC(\\Delta x)^2} \\Big[ v_{i,j+1} -2v_{i,j}+v_{i,j-1} \\Big] =v_{i+1,j}-2v_{i,j}+v_{i-1,j} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda = \\frac{(\\Delta t)^2}{LC(\\Delta x)^2} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda = \\frac{(0.1)^2}{(0.1)(0.3)(10)^2} = 0.003333<\/span>\n\n\n\n<p>con lo que se comprueba que \u03bb \u2264 1, por lo que el algoritmo es convergente.<\/p>\n\n\n\n<p>Para reducir la cantidad de muestras, se iguala \u03bb = 1, manteniendo el valor de \u0394x y calculando \u0394t<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\Delta t = \\Delta x \\sqrt{LC} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\Delta t = 10 \\sqrt{0.1(0.3)} = 1.7320 <\/span>\n\n\n\n<p>continuando con el valor de \u03bb en la ecuaci\u00f3n general,<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda \\Big[ v_{i,j+1} -2v_{i,j}+v_{i,j-1} \\Big] =v_{i+1,j} -2v_{i,j}+v_{i-1,j} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda v_{i,j+1} +(-2\\lambda +2) v_{i,j} + \\lambda v_{i,j-1} = v_{i+1,j}+v_{i-1,j} <\/span>\n\n\n\n<p>usando la condici\u00f3n inicial, para j = 0, y diferencias divididas centradas:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{\\partial V}{\\partial t}(x,0) = 0<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{v_{i,1}-v_{i,-1}}{2\\Delta t} = 0<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{i,1}-v_{i,-1} = 0<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{i,1} = v_{i,-1} <\/span>\n\n\n\n<p>y en la ecuaci\u00f3n del problema, con j = 0<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda v_{i,1} +(-2\\lambda +2) v_{i,0} + \\lambda v_{i,-1} = v_{i+1,0}+v_{i-1,0} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> 2 \\lambda v_{i,1} +(-2\\lambda +2) v_{i,0} = v_{i+1,0}+v_{i-1,0} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> 2 \\lambda v_{i,1} = (2\\lambda -2) v_{i,0} + v_{i+1,0}+v_{i-1,0} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{i,1} = \\frac{1}{2 \\lambda}\\Bigg[ (2\\lambda -2) v_{i,0} + v_{i+1,0}+v_{i-1,0} \\Bigg] <\/span>\n\n\n\n<p>si \u03bb=1,<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{i,1} = \\frac{v_{i+1,0}+v_{i-1,0}}{2 } <\/span>\n\n\n\n<p>con j =0, i =1<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{1,1} = \\frac{v_{2,0}+v_{0,0}}{2 } =\\frac{1}{2}\\Big( 110 \\sin \\frac{\\pi(0+2\\Delta x) }{200}+0 \\Big) =17<\/span>\n\n\n\n<p>con j =0, i =2<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,1} = \\frac{v_{3,0}+v_{1,0}}{2 }<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,1} = \\frac{1}{2}\\Big( 110 \\sin \\frac{\\pi(30) }{200}+110 \\sin \\frac{\\pi(10) }{200} \\Big)=33.57<\/span>\n\n\n\n<p>con j =0, i =3<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{3,1} = \\frac{v_{4,0}+v_{2,0}}{2}<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,1} = \\frac{1}{2}\\Big( 110 \\sin \\frac{\\pi(40) }{200}+110 \\sin \\frac{\\pi(20) }{200} \\Big)=49.32<\/span>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"442\" height=\"298\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2022\/01\/transmisionSinPerdidas03.png\" alt=\"transmisi\u00f3n Sin Perdidas03\" class=\"wp-image-18394\" \/><\/figure>\n\n\n\n<p>para j&gt;0, se dispone de los valores de los puntos dentro del rombo, excepto v[i,j+1]<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda v_{i,j+1} +(-2\\lambda +2) v_{i,j} + \\lambda v_{i,j-1} = v_{i+1,j}+v_{i-1,j} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\lambda v_{i,j+1} = (2\\lambda -2) v_{i,j} - \\lambda v_{i,j-1} + v_{i+1,j}+v_{i-1,j} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{i,j+1} = \\frac{1}{\\lambda}\\Big( (2\\lambda -2) v_{i,j} - \\lambda v_{i,j-1} + v_{i+1,j}+v_{i-1,j} \\Big)<\/span>\n\n\n\n<p>teniendo como valores de las filas:<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>u&#091;:,1] = &#091;  0.  ,  17.  ,  33.57,  49.32,  63.86,  76.82,  87.9 , ...  ])\nu&#091;:,0] = &#091;  0.  ,  17.21,  33.99,  49.94,  64.66,  77.78,  88.99, ...  ])<\/code><\/pre>\n\n\n\n<p>con j = 1 ; i = 1 ; (\u03bb=1)<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{1,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda -2) v_{1,1} - \\lambda v_{1,0} + v_{2,1}+v_{0,1} \\Big)<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{1,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda-2) 17-\\lambda 17.21+ 33.57+0\\Big)=16.37 <\/span>\n\n\n\n<p>con j = 1 ; i = 2 ; (\u03bb=1)<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda -2) v_{2,1} - \\lambda v_{2,0} + v_{3,1}+v_{1,1} \\Big)<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda-2) 33.57-\\lambda 33.99+ 49.32+17\\Big)=32.33 <\/span>\n\n\n\n<p>con j = 1 ; i = 3 ; (\u03bb=1)<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda -2) v_{3,1} - \\lambda v_{3,0} + v_{4,1}+v_{2,1} \\Big)<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> v_{2,2} = \\frac{1}{\\lambda}\\Big( (2\\lambda-2) 49.32-\\lambda 49.94 + 63.86+33.57\\Big)=47.49 <\/span>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<p>usando el algoritmo con los valores y ecuaciones encontradas se obtiene:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2022\/01\/EDP_LineaSinPedidas01.gif\" alt=\"EDP Linea Sin Perdidas 01\" class=\"wp-image-18395\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>21 41\nxi =\n&#091;  0  10  20  30  40  50  60  70  80  90 100 110 120 130 140 150 160 170\n 180 190 200]\ntj =\n&#091; 0.    1.73  3.46  5.2   6.93  8.66 10.39 12.12 13.86 15.59 17.32 19.05\n 20.78 22.52 24.25 25.98 27.71 29.44 31.18 32.91 34.64 36.37 38.11 39.84\n 41.57 43.3  45.03 46.77 48.5  50.23 51.96 53.69 55.43 57.16 58.89 60.62\n 62.35 64.09 65.82 67.55 69.28]\nmatriz u =\n....\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Instrucciones en Python<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# 2Eva_2021PAOII_T2 EDP \u2013 L\u00ednea de transmisi\u00f3n sin p\u00e9rdidas\n# Ecuaciones Diferenciales Parciales\n# Hiperb\u00f3lica. M\u00e9todo explicito\nimport numpy as np\n\n# INGRESO\nL = 0.1\nC = 0.3\n\nx0 = 0\nxn = 200 # Longitud de cable\n\nvx0 = lambda x: 110*np.sin(np.pi*x\/200)\n\ny0 = 0\nyn = 0 # Puntos de amarre\n\nt0 = 0\ntn = 68\n\n# discretiza\ndx = 10\ndt = dx*np.sqrt(L*C)\n\n# PROCEDIMIENTO\nxi = np.arange(x0,xn+dx,dx)\ntj = np.arange(0,tn+dt,dt)\nn = len(xi)\nm = len(tj)\nprint(n,m)\n\nu = np.zeros(shape=(n,m),dtype=float)\nu&#x5B;:,0] = vx0(xi)\nu&#x5B;0,:] = y0\nu&#x5B;n-1,:] = yn\n\n# calcula lamb\nlamb = (dt**2)\/(L*C*(dx**2))\n\n# Aplicando condici\u00f3n inicial\nj = 0\nfor i in range(1,n-1,1):\n    u&#x5B;i,j+1] = ((2*lamb-2)*u&#x5B;i,j]+u&#x5B;i+1,j]+u&#x5B;i-1,j])\/(2*lamb)\n# Para los otros puntos\nfor j in range(1,m-1,1):\n    for i in range(1,n-1,1):\n        u&#x5B;i,j+1] = (1\/lamb)*((2*lamb-2)*u&#x5B;i,j]-lamb*u&#x5B;i,j-1]+u&#x5B;i+1,j]+u&#x5B;i-1,j])\n\n# SALIDA\nnp.set_printoptions(precision=2)\nprint('xi =')\nprint(xi)\nprint('tj =')\nprint(tj)\nprint('matriz u =')\nprint(u)\n\n# GRAFICA\nimport matplotlib.pyplot as plt\n\nfor j in range(0,m,1):\n    y = u&#x5B;:,j]\n    plt.plot(xi,y)\n\nplt.title('EDP hiperb\u00f3lica')\nplt.xlabel('x')\nplt.ylabel('y')\nplt.show()\n\n# **** GR\u00c1FICO CON ANIMACION ***********\nimport matplotlib.animation as animation\n\n# Inicializa parametros de trama\/foto\nretardo = 70   # milisegundos entre tramas\ntramas  = m\nmaximoy = np.max(np.abs(u))\nfigura, ejes = plt.subplots()\nplt.xlim(&#x5B;x0,xn])\nplt.ylim(&#x5B;-maximoy,maximoy])\n\n# lineas de funci\u00f3n y polinomio en gr\u00e1fico\nlinea_poli, = ejes.plot(xi,u&#x5B;:,0], '-')\nplt.axhline(0, color='k')  # Eje en x=0\n\nplt.title('EDP hiperb\u00f3lica')\n# plt.legend()\n# txt_x = (x0+xn)\/2\ntxt_y = maximoy*(1-0.1)\ntexto = ejes.text(x0,txt_y,'tiempo:',\n                  horizontalalignment='left')\nplt.xlabel('x')\nplt.ylabel('y')\nplt.grid()\n\n# Nueva Trama\ndef unatrama(i,xi,u):\n    # actualiza cada linea\n    linea_poli.set_ydata(u&#x5B;:,i])\n    linea_poli.set_xdata(xi)\n    linea_poli.set_label('tiempo linea: '+str(i))\n    texto.set_text('tiempo&#x5B;'+str(i)+']')\n    # color de la l\u00ednea\n    if (i&lt;=9):\n        lineacolor = 'C'+str(i)\n    else:\n        numcolor = i%10\n        lineacolor = 'C'+str(numcolor)\n    linea_poli.set_color(lineacolor)\n    return linea_poli, texto\n\n# Limpia Trama anterior\ndef limpiatrama():\n    linea_poli.set_ydata(np.ma.array(xi, mask=True))\n    linea_poli.set_label('')\n    texto.set_text('')\n    return linea_poli, texto\n\n# Trama contador\ni = np.arange(0,tramas,1)\nani = animation.FuncAnimation(figura,\n                              unatrama,\n                              i ,\n                              fargs=(xi,u),\n                              init_func=limpiatrama,\n                              interval=retardo,\n                              blit=True)\n# Graba Archivo video y GIFAnimado :\n# ani.save('EDP_hiperb\u00f3lica.mp4')\nani.save('EDP_LineaSinPerdidas.gif', writer='imagemagick')\nplt.draw()\nplt.show()\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 2Eva2021PAOII_T3 EDP L\u00ednea de transmisi\u00f3n sin p\u00e9rdidas Desarrollo para determinar el Voltaje&nbsp; v(t), 0 &lt; x &lt; 200t&gt;0 Seleccionando diferencias divididas centradas para x y t agrupando las constantes como lambda, con lo que se comprueba que \u03bb \u2264 1, por lo que el algoritmo es convergente. Para reducir la cantidad de muestras, se [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-mn-ejemplo","format":"standard","meta":{"footnotes":""},"categories":[49],"tags":[58,54],"class_list":["post-8098","post","type-post","status-publish","format-standard","hentry","category-mn-s2eva30","tag-ejemplos-python","tag-mnumericos"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/8098","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=8098"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/8098\/revisions"}],"predecessor-version":[{"id":23904,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/8098\/revisions\/23904"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=8098"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=8098"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=8098"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}