{"id":11709,"date":"2025-08-26T13:40:13","date_gmt":"2025-08-26T18:40:13","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/analisisnumerico\/?p=11709"},"modified":"2026-04-05T20:23:50","modified_gmt":"2026-04-06T01:23:50","slug":"s2eva2025paoi_t2-edo-modelo-economico-solow-swan","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-s2eva30\/s2eva2025paoi_t2-edo-modelo-economico-solow-swan\/","title":{"rendered":"s2Eva2025PAOI_T2 EDO Modelo econ\u00f3mico Solow-Swan"},"content":{"rendered":"\n<p><strong>Ejercicio<\/strong>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-2eva30\/2eva2025paoi_t2-edo-modelo-economico-solow-swan\/\" data-type=\"post\" data-id=\"11675\">2Eva2025PAOI_T2 EDO Modelo econ\u00f3mico de Solow-Swan<\/a><\/p>\n\n\n\n<p>El modelo de crecimiento econ\u00f3mico de Solow-Swan describe c\u00f3mo el capital por&nbsp;trabajador <strong>k<\/strong> cambia con el tiempo dk\/dt .<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\frac{\\delta k}{\\delta t} = s f(k) -(d+n)k <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> f(k) = k^{\\alpha} <\/span>\n\n\n\n<h2 class=\"wp-block-heading\">literal a<\/h2>\n\n\n\n<p>La EDO es de primera derivada o primer orden, en la que se sustituyen los valore de las constantes y f(k)<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> f(t,k) = \\frac{\\delta k}{\\delta t} = 0.15 k ^{0.3}-(0.05+0.015)k <\/span>\n\n\n\n<p>Tiene como variable independiente el tiempo t, y como variable dependiente k.<\/p>\n\n\n\n<p>Para evitar repetir la variable k en el algoritmo junto a Runge-Kutta, se cambia la variable por x:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> f(t,y) = 0.15 y ^{0.3}-(0.05+0.015)y <\/span>\n\n\n\n<h2 class=\"wp-block-heading\">literal b<\/h2>\n\n\n\n<p>Desarrolle tres iteraciones con expresiones completas para <strong>k<\/strong>(<strong>t<\/strong>) con tama\u00f1o de paso <strong>h<\/strong>=0.2 meses, que se aplica al algoritmo EDO dy\/dx con Runge-Kutta de 2do Orden<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_1 = h f(t_i,y_i) <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_2 = h f(t_i+h, y_i + K_1) <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> y_{i+1} = y_i + \\frac{K_1+K_2}{2} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> t_{i+1} = t_i + h <\/span>\n\n\n\n<p><strong>itera=0, ti<\/strong>= 0<strong>, yi<\/strong>=k(0)=1<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_1 = 0.2 \\left( 0.15 (1) ^{0.3}-(0.05+0.015)(1) \\right) =0.017<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_2 = 0.2 \\left( 0.15 (1+0.017) ^{0.3}-(0.05+0.015)(1+0.017) \\right) =0.016931<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> y_{1} = 1+ \\frac{0.017+0.016931}{2} = 1.016966<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> t_{1} = 0 + 0.2 = 0.2 <\/span>\n\n\n\n<p><strong>itera = 1<\/strong><\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_1 = 0.2 \\Big( 0.15 (1.016966) ^{0.3}<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> -(0.05+0.015)(1.016966) \\Big) =0.016931<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_2 = 0.2 \\Big( 0.15 (1.016966+0.016931) ^{0.3} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\">-(0.05+0.015)(1.016966+0.016931) \\Big)=0.016861 <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> y_{2} = 1.016966 + \\frac{0.016931+0.016861}{2} =1.033862<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> t_{2} = 0.2 + 0.2 = 0.4 <\/span>\n\n\n\n<p><strong>itera = 2<\/strong><\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_1 = 0.2 \\left( 0.15 (1.033862) ^{0.3}-(0.05+0.015)(1.033862) \\right) =0.016861<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> K_2 = 0.2 \\Big( 0.15 (1.033862+0.016861) ^{0.3}<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> -(0.05+0.015)(1.033862+0.016861) \\Big)=0.016789<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> y_{3} = 033862 + \\frac{0.016861+0.016789}{2} <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> t_{3} = 0.4 + 0.2 = 0.6 <\/span>\n\n\n\n<p>Resultados con el algoritmo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>EDO dy\/dx con Runge-Kutta 2 Orden\ni, &#091;xi,     yi,     K1,    K2]\n0 &#091;0. 1. 0. 0.]\n1 &#091;0.2      1.016966 0.017    0.016931]\n2 &#091;0.4      1.033862 0.016931 0.016861]\n3 &#091;0.6      1.050687 0.016861 0.016789]\n4 &#091;0.8      1.06744  0.016789 0.016716]\n5 &#091;1.       1.084119 0.016716 0.016642]\n6 &#091;1.2      1.100723 0.016642 0.016567]\n7 &#091;1.4      1.117252 0.016567 0.01649 ]\n8 &#091;1.6      1.133703 0.01649  0.016413]\n9 &#091;1.8      1.150077 0.016413 0.016334]\n10 &#091;2.       1.166371 0.016334 0.016255]\n...\n295 &#091;5.900000e+01 3.121417e+00 1.647361e-03 1.632629e-03]\n296 &#091;5.920000e+01 3.123042e+00 1.632695e-03 1.618093e-03]\n297 &#091;5.940000e+01 3.124653e+00 1.618158e-03 1.603683e-03]\n298 &#091;5.960000e+01 3.126249e+00 1.603748e-03 1.589400e-03]\n299 &#091;5.980000e+01 3.127832e+00 1.589464e-03 1.575241e-03]\n300 &#091;6.000000e+01 3.129400e+00 1.575305e-03 1.561206e-03]<\/code><\/pre>\n\n\n\n<p>gr\u00e1fica para 60 periodos completos con h=0.2<\/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\/2025\/08\/EDO_Solow-Swan01.png\" alt=\"EDO Solow-Swan 01\" class=\"wp-image-18337\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# EDO dy\/dx. M todo de RungeKutta 2do Orden \n# estima la solucion para muestras espaciadas h en eje x\n# valores iniciales x0,y0, entrega tabla&#x5B;xi,yi,K1,K2]\nimport numpy as np\n\ndef rungekutta2(d1y,x0,y0,h,muestras,\n                vertabla=False,precision=6):\n    '''solucion a EDO dy\/dx, con Runge Kutta de 2do orden\n    d1y es la expresi n dy\/dx, tambien planteada como f(x,y),\n    valores iniciales: x0,y0, tama o de paso h.\n    muestras es la cantidad de puntos a calcular. \n    '''\n    tamano = muestras + 1\n    tabla = np.zeros(shape=(tamano,2+2),dtype=float)\n    tabla&#x5B;0] = &#x5B;x0,y0,0,0] # incluye el punto &#x5B;x0,y0]\n    \n    xi = x0 # valores iniciales\n    yi = y0\n    for i in range(1,tamano,1):\n        K1 = h * d1y(xi,yi)\n        K2 = h * d1y(xi+h, yi + K1)\n\n        yi = yi + (K1+K2)\/2\n        xi = xi + h\n        \n        tabla&#x5B;i] = &#x5B;xi,yi,K1,K2]\n       \n    if vertabla==True:\n        np.set_printoptions(precision)\n        print( 'EDO dy\/dx con Runge-Kutta 2 Orden')\n        print('i, &#x5B;xi,     yi,     K1,    K2]')\n        for i in range(0,tamano,1):\n            print(i,tabla&#x5B;i])\n\n    return(tabla)\n\n# PROGRAMA PRUEBA -------------------\n\n# INGRESO\n# d1y = y' = f, d2y = y'' = f'\nd1y = lambda t,k: 0.15*k**(0.3)-(0.05+0.015)*k\nx0 = 0\ny0 = 1\nh  = 0.2\nmuestras = int(60\/h)\n\n# PROCEDIMIENTO\ntabla = rungekutta2(d1y,x0,y0,h,muestras,\n                    vertabla=True)\nxi = tabla&#x5B;:,0]\nyiRK2 = tabla&#x5B;:,1]\n\n# SALIDA\n#print(' &#x5B;xi, yi, K1, K2]')\n#print(tabla)\n\n# GRAFICA\nimport matplotlib.pyplot as plt\nplt.plot(xi,yiRK2)\nplt.plot(xi&#x5B;0],yiRK2&#x5B;0],\n         'o',color='r', label ='&#x5B;t0,k0]')\n##plt.plot(xi&#x5B;1:],yiRK2&#x5B;1:],\n##         'o',color='m',\n##         label ='&#x5B;xi,yi] Runge-Kutta')\nplt.title('EDO dk\/dt: Solow-Swan')\nplt.xlabel('t')\nplt.ylabel('k')\nplt.legend()\nplt.grid()\nplt.show()\n<\/pre><\/div>\n\n\n<p>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 2Eva2025PAOI_T2 EDO Modelo econ\u00f3mico de Solow-Swan El modelo de crecimiento econ\u00f3mico de Solow-Swan describe c\u00f3mo el capital por&nbsp;trabajador k cambia con el tiempo dk\/dt . literal a La EDO es de primera derivada o primer orden, en la que se sustituyen los valore de las constantes y f(k) Tiene como variable independiente el tiempo [&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-11709","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\/11709","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=11709"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/11709\/revisions"}],"predecessor-version":[{"id":23882,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/11709\/revisions\/23882"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=11709"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=11709"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=11709"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}