{"id":21156,"date":"2026-01-22T07:00:00","date_gmt":"2026-01-22T12:00:00","guid":{"rendered":"https:\/\/blog.espol.edu.ec\/algoritmos101\/?p=21156"},"modified":"2026-04-05T20:23:31","modified_gmt":"2026-04-06T01:23:31","slug":"s2eva2025paoii_t1-trayectoria-avion-papel","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-s2eva30\/s2eva2025paoii_t1-trayectoria-avion-papel\/","title":{"rendered":"s2Eva2025PAOII_T1 Trayectoria avi\u00f3n de papel"},"content":{"rendered":"\n<p><strong>Ejercicio<\/strong>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-2eva30\/2eva2025paoii_t1-trayectoria-avion-papel\/\" data-type=\"post\" data-id=\"21149\">2Eva2025PAOII_T1 Trayectoria avi\u00f3n de papel<\/a><\/p>\n\n\n\n<p>Muestras de trayectoria.<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>tj = &#091;0, 0.4 , 0.8 , 1.2 , 1.6 , 2 , 2.4 , 2.8 , 3.2 ]\nxj = &#091;0, 1.3142, 2.5572, 4.0112, 5.4723, 6.818, 8.1856, 9.6158, 11.0212]\nfj = &#091;2, 2.0130, 1.6521, 1.26 , 1.0931, 0.897, 0.5822, 0.3083, 0.0934 ]<\/code><\/pre>\n\n\n\n<p><em>Opci\u00f3n<\/em>: Se cambian los \u00edndices de los datos de entrada para diferenciar de los ti,xi,fi usados en el algoritmo de Lagrange.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">literal a. Planteamiento<\/h2>\n\n\n\n<figure class=\"wp-block-image alignright size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2026\/01\/trayectoriaAvionpapel01.png\" alt=\"trayectoria avi\u00f3n de papel x,y\" class=\"wp-image-21152\" style=\"width:350px\" \/><\/figure>\n\n\n\n<p>Con 9 muestras es posible crear un polinomio de grado 8. Sin embargo si el grado del polinomio es grande, pueden aparecer oscilaciones como en el ejercicio <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-unidades\/mn-u04\/interpolar-pato\/\">Interpolar - Pato en pleno vuelo<\/a>.<\/p>\n\n\n\n<p>La trayectoria seg\u00fan la gr\u00e1fica del enunciado no presenta grandes variaciones en el intervalo. Como punto de partida se selecciona un punto en cada extremo, luego los puntos necesarios adicionales para un polinomio seleccionado de grado menor a 8.<\/p>\n\n\n\n<p>Para un polinomio de grado 3, con 4 muestras, se incluyen los extremos y dos puntos intermedios, por ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>xi = &#091;0, 2.5572, 8.1856, 11.0212]\nfi = &#091;2, 1.6521, 0.5822,  0.0934 ]<\/code><\/pre>\n\n\n\n<p>Se considera opcional describir la trayectoria de cada componente respecto a tiempo: x vs t, y vs t. Revisar conceptos b\u00e1sicos de <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-unidades\/fp-u09\/cinematica-subgraficas\/\" data-type=\"post\" data-id=\"11344\">cinem\u00e1tica<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">literal b.<\/h2>\n\n\n\n<p>Usando el m\u00e9todo de Lagrange con los puntos seleccionados<\/p>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> L_0 = \\frac{(x-2.5572)(x-8.1856)(x-11.0212)}{(0-2.5572)(0-8.1856)(0-11.0212)} <\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> L_1 = \\frac{(x-0)(x-8.1856)(x-11.0212)}{(2.5572-0)(2.5572-8.1856)(2.5572-11.0212)} <\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> L_2 = \\frac{(x-0)(x-2.5572)(x-11.0212)}{(8.1856-0)(8.1856-2.5572)(8.1856-11.0212)} <\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> L_3 = \\frac{(x-0)(x-2.5572)(x-8.1856)}{(11.0212-0)(11.0212-2.5572)(11.0212-8.1856)} <\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(x) = 2 L_0 +1.6521 L_1 +0.5822 L_2 + 0.0934 L_3 <\/span>\n\n\n\n<p>polinomio simplificado con el algoritmo, truncando a 4 d\u00edgitos cada coeficiente se obtiene:<\/p>\n\n\n\n<p>p(x) = 0.0007888 x<sup>3<\/sup> - 0.01507 x<sup>2<\/sup> - 0.1026 x + 2.0<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">literal c. resultados con algoritmo<\/h2>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>    valores de fi:  &#091;2.     1.6521 0.5822 0.0934]\ndivisores en L&#091;i]:  &#091;-230.69814251  121.82188208 -130.6412841   264.51451339]\n\nPolinomio de Lagrange, expresiones\n0.013561602987979*x*(x - 11.0212)*(x - 8.1856) +\n0.000353099717678867*x*(x - 8.1856)*(x - 2.5572) +\n-0.00866933724855683*(x - 11.0212)*(x - 8.1856)*(x - 2.5572) +\n-0.00445647793516493*x*(x - 11.0212)*(x - 2.5572)\n\nPolinomio de Lagrange: \n0.000788887521936148*x**3 - 0.015076980044162*x**2 - 0.102651135756033*x + 2.0\n\n                      3                      2                            \n0.000788887521936148\u22c5x  - 0.015076980044162\u22c5x  - 0.102651135756033\u22c5x + 2.0<\/code><\/pre>\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\/2026\/01\/trayectoriaAvionpapelEjemplo01.png\" alt=\"trayectoria avi\u00f3n de papel ejemplo simple\" class=\"wp-image-21158\" \/><\/figure>\n\n\n\n<p>otro ejemplo, tratando de incorporar el \u00e1ngulo de lanzamiento se usa el punto cercano al punto inicial.<\/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\/2026\/01\/trayectoriaAvionpapelEjemplo.png\" alt=\"trayectoria de avi\u00f3n de papel ejemplo grado 3\" class=\"wp-image-21157\" \/><\/figure>\n\n\n\n<p>Con la gr\u00e1fica se observa el error del polinomio con los puntos no considerados.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">literal d.<\/h2>\n\n\n\n<p>El error de un punto se puede calcular como al diferencia entre el polinomio y la muestra en un punto no usado para generar el polinomio, por ejemplo usando \u00edndice 1 de la tabla:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;&gt;&gt; px(xj&#091;1])-fj&#091;1]\n-0.1721532974199469<\/code><\/pre>\n\n\n\n<p>La cota ser\u00eda el error mas grande, seg\u00fan lo desarrollado con el polinomio en cada caso. Queda como tarea revisar su propuesta de soluci\u00f3n.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Algoritmo en Python<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# 2Eva2025PAOII_T1 Trayectoria avi\u00f3n de papel\n# polinomio de interpolaci\u00f3n\nimport numpy as np\nimport sympy as sym\nimport matplotlib.pyplot as plt\n\n# INGRESO\ntj = &#x5B;0, 0.4   , 0.8   , 1.2   , 1.6   , 2    , 2.4   , 2.8   , 3.2    ]\nxj = &#x5B;0, 1.3142, 2.5572, 4.0112, 5.4723, 6.818, 8.1856, 9.6158, 11.0212]\nfj = &#x5B;2, 2.0130, 1.6521, 1.26  , 1.0931, 0.897, 0.5822, 0.3083, 0.0934 ]\n\nxi = &#x5B;0, 2.5572, 8.1856, 11.0212]\nfi = &#x5B;2, 1.6521,  0.5822, 0.0934 ]\n\n# PROCEDIMIENTO\n# Vectores como arreglo, numeros reales\nxi = np.array(xi,dtype=float)\nfi = np.array(fi,dtype=float)\nn = len(xi)\n\n# Polinomio de Lagrange\nx = sym.Symbol('x')\npolinomio = 0*x   # sym.S.Zero en Sympy\ndivisorL = np.zeros(n, dtype = float)\nfor i in range(0,n,1):\n    \n    # Termino de Lagrange\n    numerador = 1\n    denominador = 1\n    for j  in range(0,n,1):\n        if (j!=i):\n            numerador = numerador*(x-xi&#x5B;j])\n            denominador = denominador*(xi&#x5B;i]-xi&#x5B;j])\n    terminoLi = numerador\/denominador\n\n    polinomio = polinomio + terminoLi*fi&#x5B;i]\n    divisorL&#x5B;i] = denominador\n\npolisimple = polinomio.expand() # simplifica los (x-xi)\npx = sym.lambdify(x,polisimple) # evaluaci\u00f3n num\u00e9rica\n\n# SALIDA\nprint('    valores de fi: ',fi)\nprint('divisores en L&#x5B;i]: ',divisorL)\nprint()\nprint('Polinomio de Lagrange, expresiones')\n#print(polinomio)\nterminos = sym.Add.make_args(polinomio)\nn_term = len(terminos)\nfor i in range(0,n_term,1):\n    if i&lt;(n_term-1):\n        print(terminos&#x5B;i],'+')\n    else:\n        print(terminos&#x5B;i])\nprint()\nprint('Polinomio de Lagrange: ')\nprint(polisimple)\nprint()\nsym.pprint(polisimple)\n\n# Gr\u00e1fica --------------\nimport matplotlib.pyplot as plt\nmuestras = 51   # resoluci\u00f3n gr\u00e1fica\n\na = np.min(xi)  # intervalo &#x5B;a,b]\nb = np.max(xi)\nxk = np.linspace(a,b,muestras)\nyk = px(xk)\n\nplt.plot(xj,fj,'o', label = '&#x5B;xj,yj]')\nplt.plot(xi,fi,'o', label = '&#x5B;xi,yi]')\nplt.plot(xk,yk, label = 'p(x)')\nplt.legend()\nplt.xlabel('xi')\nplt.ylabel('yi')\nplt.title('Interpolaci\u00f3n Lagrange')\nplt.grid()\nplt.show()\n\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 2Eva2025PAOII_T1 Trayectoria avi\u00f3n de papel Muestras de trayectoria. Opci\u00f3n: Se cambian los \u00edndices de los datos de entrada para diferenciar de los ti,xi,fi usados en el algoritmo de Lagrange. literal a. Planteamiento Con 9 muestras es posible crear un polinomio de grado 8. Sin embargo si el grado del polinomio es grande, pueden aparecer [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"wp-custom-template-entrada-mn-ejemplo","format":"standard","meta":{"footnotes":""},"categories":[49],"tags":[58,54],"class_list":["post-21156","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\/21156","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=21156"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/21156\/revisions"}],"predecessor-version":[{"id":23881,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/21156\/revisions\/23881"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=21156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=21156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=21156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}