{"id":3608,"date":"2017-11-08T09:40:56","date_gmt":"2017-11-08T14:40:56","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/matg1013\/?p=3608"},"modified":"2026-04-05T19:48:21","modified_gmt":"2026-04-06T00:48:21","slug":"s1eva2008tii_t3_mn-ganancia-en-inversion","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-s1eva10\/s1eva2008tii_t3_mn-ganancia-en-inversion\/","title":{"rendered":"s1Eva2008TII_T3_MN Ganancia en inversi\u00f3n"},"content":{"rendered":"\n<p><strong>Ejercicio<\/strong>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-1eva10\/1eva2008tii_t3_mn-ganancia-en-inversion\/\" data-type=\"post\" data-id=\"486\">1Eva2008TII_T3_MN Ganancia en inversi\u00f3n<\/a><\/p>\n\n\n\n<p>Se dispone de los datos (<strong>x<\/strong>, <strong>f<\/strong>(<strong>x<\/strong>)), en donde <strong>x<\/strong> es un valor de inversi\u00f3n y <strong>f<\/strong>(<strong>x<\/strong>) es un valor de ganancia, ambos en miles de d\u00f3lares.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>xi = &#091;3.2 , 3.8 , 4.2 , 4.5 ]\nfi = &#091;5.12, 6.42, 7.25, 6.85]<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Literal a<\/h2>\n\n\n\n<p>Los datos se usan junto al modelo propuesto:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> f(x) = a_1 x^3 + a_2 x^2 + a_3 x + a_4<\/span>\n\n\n\n<p>generando las expresiones del sistema de ecuaciones:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> a_1 (3.2)^3 + a_2 (3.2)^2 + a_3 (3.2) + a_4 = 5.12<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> a_1 (3.8)^3 + a_2 (3.8)^2 + a_3 (3.8) + a_4 = 6.42<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> a_1 (4.2)^3 + a_2 (4.2)^2 + a_3 (4.2) + a_4 = 7.25<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> a_1 (4.5)^3 + a_2 (4.5)^2 + a_3 (4.5) + a_4 = 6.85<\/span>\n\n\n\n<h2 class=\"wp-block-heading\">literal b<\/h2>\n\n\n\n<p>Se convierte a la forma Ax=B<\/p>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\begin{bmatrix} (3.2)^3 &amp;&amp; (3.2)^2 &amp;&amp; (3.2) &amp;&amp; 1 \\\\ (3.8)^3 &amp;&amp; (3.8)^2 &amp;&amp; (3.8) &amp;&amp; 1 \\\\ (4.2)^3 &amp;&amp; (4.2)^2 &amp;&amp; (4.2) &amp;&amp; 1 \\\\ (4.5)^3 &amp;&amp; (4.5)^2 &amp;&amp; (4.5) &amp;&amp; 1 \\end{bmatrix} . \\begin{bmatrix} a_1 \\\\ a_2 \\\\ a_3 \\\\ a_4 \\end{bmatrix} = \\begin{bmatrix} 5.12 \\\\ 6.42 \\\\ 7.25 \\\\6.85 \\end{bmatrix} <\/span>\n\n\n\n<p>Se crea la matriz aumentada<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\begin{bmatrix} (3.2)^3 &amp;&amp; (3.2)^2 &amp;&amp; (3.2) &amp;&amp; 1 &amp;&amp; 5.12\\\\ (3.8)^3 &amp;&amp; (3.8)^2 &amp;&amp; (3.8) &amp;&amp; 1 &amp;&amp; 6.42 \\\\ (4.2)^3 &amp;&amp; (4.2)^2 &amp;&amp; (4.2) &amp;&amp; 1 &amp;&amp; 7.25 \\\\ (4.5)^3 &amp;&amp; (4.5)^2 &amp;&amp; (4.5) &amp;&amp; 1 &amp;&amp; 6.85 \\end{bmatrix} <\/span>\n\n\n\n<p>Se pivotea por filas:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\begin{bmatrix} (4.5)^3 &amp;&amp; (4.5)^2 &amp;&amp; (4.5) &amp;&amp; 1 &amp;&amp; 6.85 \\\\ (4.2)^3 &amp;&amp; (4.2)^2 &amp;&amp; (4.2) &amp;&amp; 1 &amp;&amp; 7.25 \\\\ (3.8)^3 &amp;&amp; (3.8)^2 &amp;&amp; (3.8) &amp;&amp; 1 &amp;&amp; 6.42 \\\\ (3.2)^3 &amp;&amp; (3.2)^2 &amp;&amp; (3.2) &amp;&amp; 1 &amp;&amp; 5.12 \\end{bmatrix} <\/span>\n\n\n\n<p>Como se pide un m\u00e9todo directo, se inicia con el algoritmo de eliminaci\u00f3n hacia adelante con factor para cada fila a partir de la diagonal.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\begin{bmatrix} (4.5)^3 &amp;&amp; (4.5)^2 &amp;&amp; (4.5) \\\\ (4.2)^3 - (4.5)^3\\frac{(4.2)^3}{(4.5)^3} &amp;&amp; (4.2)^2 - (4.5)^2\\frac{(4.2)^3}{(4.5)^3} &amp;&amp; (4.2) - (4.5)\\frac{(4.2)^3}{(4.5)^3} \\\\ (3.8)^3 - (4.5)^3\\frac{(3.8)^3}{(4.5)^3} &amp;&amp; (3.8)^2 - (4.5)^2\\frac{(3.8)^3}{(4.5)^3} &amp;&amp; (3.8) -(4.5)\\frac{(3.8)^3}{(4.5)^3} \\\\ (3.2)^3 - (4.5)^3\\frac{(3.2)^3}{(4.5)^3} &amp;&amp; (3.2)^2 -(4.5)^2\\frac{(3.2)^3}{(4.5)^3} &amp;&amp; (3.2) - (4.5)\\frac{(3.2)^3}{(4.5)^3} \\end{bmatrix} <\/span>\n\n\n\n<p>continua a la derecha de la matriz:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\begin{bmatrix} 1 &amp;&amp; 6.85 \\\\ 1 - 1\\frac{(4.2)^3}{(4.5)^3} &amp;&amp; 7.25 - 6.85\\frac{(4.2)^3}{(4.5)^3} \\\\ 1 -1\\frac{(3.8)^3}{(4.5)^3} &amp;&amp; 6.42 - 6.85\\frac{(3.8)^3}{(4.5)^3}\\\\1 -1\\frac{(3.2)^3}{(4.5)^3} &amp;&amp; 5.12-6.85\\frac{(3.2)^3}{(4.5)^3} \\end{bmatrix} <\/span>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>Pivoteo parcial por filas AB: ----\n&#091;&#091;91.125 20.25   4.5    1.     6.85 ]\n &#091;74.088 17.64   4.2    1.     7.25 ]\n &#091;54.872 14.44   3.8    1.     6.42 ]\n &#091;32.768 10.24   3.2    1.     5.12 ]]\nEliminaci\u00f3n hacia adelante: ------\ni: 0 k: 1 factor: 0.8130370370370371\ni: 0 k: 2 factor: 0.6021618655692729\ni: 0 k: 3 factor: 0.35959396433470514\n&#091;&#091;91.125  20.25    4.5     1.      6.85  ]\n &#091; 0.      1.176   0.5413  0.187   1.6807]\n &#091; 0.      2.2462  1.0903  0.3978  2.2952]\n &#091; 0.      2.9582  1.5818  0.6404  2.6568]]\ni: 1 k: 2 factor: 1.9100529100529142\ni: 1 k: 3 factor: 2.5154950869236625\n&#091;&#091; 9.1125e+01  2.0250e+01  4.5000e+00  1.0000e+00  6.8500e+00]\n &#091; 0.0000e+00  1.1760e+00  5.4133e-01  1.8696e-01  1.6807e+00]\n &#091; 0.0000e+00  0.0000e+00  5.6296e-02  4.0729e-02 -9.1503e-01]\n &#091; 0.0000e+00  0.0000e+00  2.2011e-01  1.7010e-01 -1.5710e+00]]\ni: 2 k: 3 factor: 3.9097744360903106\n&#091;&#091; 9.1125e+01  2.0250e+01  4.5000e+00  1.0000e+00  6.8500e+00]\n &#091; 0.0000e+00  1.1760e+00  5.4133e-01  1.8696e-01  1.6807e+00]\n &#091; 0.0000e+00  0.0000e+00  5.6296e-02  4.0729e-02 -9.1503e-01]\n &#091; 0.0000e+00  0.0000e+00  0.0000e+00  1.0860e-02  2.0065e+00]]\nEliminaci\u00f3n hacia atras: ------\ni: 3  pivote: 0.010860484544693044\n k: 2 factor: 3.7501994302000807\n k: 1 factor: 17.214974358977564\n k: 0 factor: 92.07692307694026\n&#091;&#091; 9.1125e+01  2.0250e+01  4.5000e+00  0.0000e+00 -1.7791e+02]\n &#091; 0.0000e+00  1.1760e+00  5.4133e-01  0.0000e+00 -3.2862e+01]\n &#091; 0.0000e+00  0.0000e+00  5.6296e-02  0.0000e+00 -8.4400e+00]\n &#091; 0.0000e+00  0.0000e+00  0.0000e+00  1.0860e-02  2.0065e+00]]\ni: 2  pivote: 0.05629629629629451\n k: 1 factor: 9.615789473684513\n k: 0 factor: 79.93421052631832\n&#091;&#091; 9.1125e+01  2.0250e+01  0.0000e+00  0.0000e+00  4.9674e+02]\n &#091; 0.0000e+00  1.1760e+00  0.0000e+00  0.0000e+00  4.8295e+01]\n &#091; 0.0000e+00  0.0000e+00  5.6296e-02  0.0000e+00 -8.4400e+00]\n &#091; 0.0000e+00  0.0000e+00  0.0000e+00  1.0000e+00  1.8476e+02]]\ni: 1  pivote: 1.1759999999999984\n k: 0 factor: 17.219387755102066\n&#091;&#091;  91.125     0.        0.        0.     -334.876 ]\n &#091;   0.        1.176     0.        0.       48.2952]\n &#091;   0.        0.        1.        0.     -149.9209]\n &#091;   0.        0.        0.        1.      184.7569]]\ni: 0  pivote: 91.125\n&#091;&#091;  91.125     0.        0.        0.     -334.876 ]\n &#091;   0.        1.        0.        0.       41.0673]\n &#091;   0.        0.        1.        0.     -149.9209]\n &#091;   0.        0.        0.        1.      184.7569]]\nAB:\n&#091;&#091;   1.        0.        0.        0.       -3.6749]\n &#091;   0.        1.        0.        0.       41.0673]\n &#091;   0.        0.        1.        0.     -149.9209]\n &#091;   0.        0.        0.        1.      184.7569]]\nM\u00e9todo de Gauss-Jordan\nsoluci\u00f3n X: \n&#091;  -3.6749   41.0673 -149.9209  184.7569]<\/code><\/pre>\n\n\n\n<p>con lo que el polinomio buscado es:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> f(x) = -3.67490842 x^3 + 41.06730769 x^2 +<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> -149.92086081 x + 184.75692308<\/span>\n\n\n\n<p>que genera la siguiente gr\u00e1fica:<\/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\/2017\/11\/GananciaInversion01.png\" alt=\"Ganancia Inversi\u00f3n gr\u00e1fica curva ejercicio\" class=\"wp-image-14015\" \/><\/figure>\n\n\n\n<p>para encontrar la cantidad necesaria a invertir y obtener 6.0 de ganancia en f(x):<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> 6.0 = -3.67490842 x^3 + 41.06730769 x^2 +<\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\">-149.92086081 x + 184.75692308<\/span>\n\n\n\n<p>que para usar en el algoritmo se realiza se reordena como g(x) = 0<\/p>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> -3.67490842 x^3 + 41.06730769 x^2 +<\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\">-149.92086081 x + 184.75692308 - 6.0 = 0<\/span>\n\n\n\n<p>y se aplica la b\u00fasqueda de ra\u00edces en el rango [a, b] que de la gr\u00e1fica se estima en [3.2, 3.8]<\/p>\n\n\n\n<p>La ejecuci\u00f3n del algoritmo de b\u00fasqueda queda como <strong>tarea<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Algoritmo en Python<\/h2>\n\n\n\n<p>para obtener la gr\u00e1fica y respuesta a la matriz:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# 1Eva2008TII_T3_MN Ganancia en inversi\u00f3n\n# M\u00e9todo de Gauss-Jordan\n# Sistemas de Ecuaciones A.X=B\nimport numpy as np\n\n# INGRESO\nxi = &#x5B;3.2 , 3.8 , 4.2 , 4.5 ]\nfi = &#x5B;5.12, 6.42, 7.25, 6.85]\n\nA = &#x5B;&#x5B;4.5**3 , 4.5**2 , 4.5 , 1],\n     &#x5B;4.2**3 , 4.2**2 , 4.2 , 1],\n     &#x5B;3.8**3 , 3.8**2 , 3.8 , 1],\n     &#x5B;3.2**3 , 3.2**2 , 3.2 , 1]]\n\nB = &#x5B;6.85,7.25,6.42,5.12]\n\n# PROCEDIMIENTO\nnp.set_printoptions(precision=4)\ncasicero = 1e-15\n# Matrices como arreglo, numeros reales\nA = np.array(A,dtype=float)\nB = np.array(B,dtype=float)\n\n# Matriz aumentada AB\nB_columna = np.transpose(&#x5B;B])\nAB  = np.concatenate((A,B_columna),axis=1)\n\n# Pivoteo parcial por filas\ntamano = np.shape(AB)\nn = tamano&#x5B;0]\nm = tamano&#x5B;1]\n\n# Para cada fila en AB\nfor i in range(0,n-1,1):\n    # columna desde diagonal i en adelante\n    columna = abs(AB&#x5B;i:,i])\n    dondemax = np.argmax(columna)\n    \n    if (dondemax !=0): # NO en diagonal\n        # intercambia filas\n        temporal = np.copy(AB&#x5B;i,:])\n        AB&#x5B;i,:]  = AB&#x5B;dondemax+i,:]\n        AB&#x5B;dondemax+i,:] = temporal\nprint('Pivoteo parcial por filas AB: ----')\nprint(AB)\n\n# Eliminaci\u00f3n hacia adelante\nprint('Eliminaci\u00f3n hacia adelante: ------')\nfor i in range(0,n-1,1): # una fila\n    pivote   = AB&#x5B;i,i]\n    adelante = i + 1\n    for k in range(adelante,n,1): # diagonal adelante\n        factor  = AB&#x5B;k,i]\/pivote\n        AB&#x5B;k,:] = AB&#x5B;k,:] - AB&#x5B;i,:]*factor\n\n        print('i:',i,'k:',k, 'factor:',factor)\n    print(AB)\n\n# Eliminaci\u00f3n hacia atras\nprint('Eliminaci\u00f3n hacia atras: ------')\nultfila = n-1\nultcolumna = m-1\nfor i in range(ultfila,0-1,-1): # una fila\n    pivote   = AB&#x5B;i,i]\n    print('i:',i,' pivote:',pivote)\n    \n    atras = i - 1\n    for k in range(atras,0-1,-1): # diagonal adelante\n        factor  = AB&#x5B;k,i]\/pivote\n        AB&#x5B;k,:] = AB&#x5B;k,:] - AB&#x5B;i,:]*factor\n        for j in range(0,m,1): # casicero revisa\n            if abs(AB&#x5B;k,j])&lt;casicero:\n                AB&#x5B;k,j]=0\n\n        print(' k:',k, 'factor:',factor)\n    print(AB)\n    \n    AB&#x5B;i,:] = AB&#x5B;i,:]\/AB&#x5B;i,i] # diagonal a unos\n    \nprint('AB:')\nprint(AB)\nX = np.copy(AB&#x5B;:,ultcolumna])\n\n# SALIDA\nprint('M\u00e9todo de Gauss-Jordan')\nprint('soluci\u00f3n X: ')\nprint(X)\n\n# Revisa polinomio\nimport matplotlib.pyplot as plt\na = np.min(xi)\nb = np.max(xi)\nmuestras = 21\n\npx = lambda x: X&#x5B;0]*x**3 + X&#x5B;1]*x**2 +X&#x5B;2]*x + X&#x5B;3]\nxk = np.linspace(a,b,muestras)\npxk = px(xk)\n\n# gr\u00e1fica\nplt.plot(xk,pxk)\nplt.plot(xi,fi,'ro')\nplt.show()\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\">literal c<\/h2>\n\n\n\n<p>Continuar con el ejercicio usando el m\u00e9todo de la bisecci\u00f3n y el polinomio resultante del literal b. <\/p>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> g(x) = -3.67490842 x^3 + 41.06730769 x^2 +<\/span>\n\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\">-149.92086081 x + 184.75692308 - 6.0 = 0<\/span>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# INGRESO\nfx  = lambda x: -3.67490842*x**3+41.06730769*x**2-149.92086081*x+184.75692308-6\na = 3.2\nb = 4.4\ntolera = 0.001\n<\/pre><\/div>\n\n\n<p>el resultado es:<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>m\u00e9todo de Bisecci\u00f3n\ni &#091;'a', 'c', 'b'] &#091;'f(a)', 'f(c)', 'f(b)']\n   tramo\n0 &#091;3.2 3.8 4.4] &#091;-0.88    0.42    1.1248]\n   0.6000000000000001\n1 &#091;3.2 3.5 3.8] &#091;-0.88   -0.4533  0.42  ]\n   0.30000000000000027\n2 &#091;3.5  3.65 3.8 ] &#091;-0.4533 -0.0352  0.42  ]\n   0.1499999999999999\n3 &#091;3.65  3.725 3.8  ] &#091;-0.0352  0.1924  0.42  ]\n   0.07500000000000018\n4 &#091;3.65   3.6875 3.725 ] &#091;-0.0352  0.078   0.1924]\n   0.03750000000000009\n5 &#091;3.65   3.6688 3.6875] &#091;-0.0352  0.0212  0.078 ]\n   0.018749999999999822\n6 &#091;3.65   3.6594 3.6688] &#091;-0.0352 -0.0071  0.0212]\n   0.009374999999999911\n7 &#091;3.6594 3.6641 3.6688] &#091;-0.0071  0.007   0.0212]\n   0.0046874999999997335\n8 &#091;3.6594 3.6617 3.6641] &#091;-7.1088e-03 -5.4563e-05  7.0073e-03]\n   0.0023437499999996447\n9 &#091;3.6617 3.6629 3.6641] &#091;-5.4563e-05  3.4754e-03  7.0073e-03]\n   0.0011718749999998224\n10 &#091;3.6617 3.6623 3.6629] &#091;-5.4563e-05  1.7102e-03  3.4754e-03]\n   0.0005859374999999112\nra\u00edz en:  3.6623046875000003<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 1Eva2008TII_T3_MN Ganancia en inversi\u00f3n Se dispone de los datos (x, f(x)), en donde x es un valor de inversi\u00f3n y f(x) es un valor de ganancia, ambos en miles de d\u00f3lares. Literal a Los datos se usan junto al modelo propuesto: generando las expresiones del sistema de ecuaciones: literal b Se convierte a la [&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":[44],"tags":[58,54],"class_list":["post-3608","post","type-post","status-publish","format-standard","hentry","category-mn-s1eva10","tag-ejemplos-python","tag-mnumericos"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/3608","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=3608"}],"version-history":[{"count":6,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/3608\/revisions"}],"predecessor-version":[{"id":23801,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/3608\/revisions\/23801"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=3608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=3608"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=3608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}