3Eva_2021PAOI_T4 Integral con Cuadratura Gaussiana

3ra Evaluación 2021-2022 PAO I. 14/Septiembre/2021

Tema 4 (30 puntos) Aproximar el siguiente integral usando Cuadratura Gaussiana

\int_0^{\pi/4} x^2 \sin (x) \delta x

a) Usado dos segmentos o tramos, y para dos puntos, n=2

b) compare sus resultados con n=3

c) Calcule error entre resultados

Referencia: Burden 8th Edition. Ejercicios 4.7 d.

Rúbrica: Planteo del ejercicio (5 puntos), literal a, con expresiones y valores completos (10 puntos), literal b, con n=3 (10 puntos). literal c (5 puntos).

3Eva_2021PAOI_T3 Respuesta a entrada cero en un sistema LTIC

3ra Evaluación 2021-2022 PAO I. 14/Septiembre/2021

Tema 2 (30 puntos) Para un circuito eléctrico mostrado en la figura, conocido también como un sistema LTIC (lineal contínuo invariante en el tiempo), la “respuesta a entrada cero” corresponde al comportamiento de la corriente y(t) cuando no se aplica una señal de entrada x(t) = 0.

La expresión que describe la relación de entrada x(t) y salida y(t) que permite analizar el sistema en un intervalo de tiempo es:

\frac{\delta^2 y(t)}{\delta t^2}+3 \frac{\delta y(t)}{ \delta t}+2 y(t) = \frac{\delta x(t)}{\delta t} =0

Los componentes inductores y capacitores almacenan energía representada como condiciones iniciales y0(t) =0 , y’0(t) =-5

Considere como de interés el intervalo de tiempo entre [0,6] con al menos 60 tramos.

a) Realice el planteamiento para encontrar y(t) con las condiciones dadas, usando el método de Runge-Kutta de 2do orden

b) Desarrolle tres iteraciones con expresiones y valores, mostrando el uso del método anterior.

Referencia: Lathi B.P and Green R.A.(2018). Capítulo 2.1 p151.Linear Systems and Signals Third Edition. Oxford University Press.
http://blog.espol.edu.ec/telg1001/ltic-respuesta-entrada-cero-con-python/

Rúbrica: Planteo de ejercicio para el método requerido (5 puntos), tamaño de paso (5 puntos), iteraciones completas (15 puntos), desarrollo algorítmico, gráfica (5 puntos)

3Eva_2021PAOI_T2 Tensiones mínimas en cables por carga variable

3ra Evaluación 2021-2022 PAO I. 14/Septiembre/2021

Tema 2 (20 puntos) Continuando con el ejercicio del tema anterior de la carga con dos cables, se requiere encontrar:

a) El valor de θ para el cual la tensión en los dos cables es la mínima posible. Use un algoritmo para encontrar las raíces, es decir TCA=TCB

b) Desarrolle al menos 2 iteraciones

c) El valor correspondiente de la tensión.

Nota: Plantear la solución del problema anterior como una función en Python, para usarla como parte del desarrollo de éste tema

Rúbrica: Planteamiento completo del ejercicio (5 puntos), desarrollo de expresiones  (10 puntos), literal b (5 puntos)

3Eva_2021PAOI_T1 Tensiones en cables por carga variable

3ra Evaluación 2021-2022 PAO I. 14/Septiembre/2021

Tema 1 (20 puntos) Una carga P está sostenida por dos cables como se muestra en la figura.

Las ecuaciones de equilibrio del sistema corresponden a:

\sum^n{F_x = 0} -T_{CA} \cos (\alpha) + T_{CB} \cos (\beta) + P \sin (\theta) = 0 \sum^n{F_y = 0} T_{CA} \sin (\alpha) + T_{CB} \sin (\beta) - P \cos (\theta) = 0

Se requiere determinar la tensión en cada cable para cualquiera de los valores de P y θ que se encuentran desde θ1=β-90° hasta θ2=90°- α , con incrementos dados Δθ.

Usando un algoritmo numérico con método directo para solución de un sistema de ecuaciones, determine para los siguientes conjuntos de  números: La tensión en cada cable para los valores de θ  que van de θ1 a θ2.

α = 35°, β = 75°, P = 400 lb, Δθ = 5°
α = 50°, β = 30°, P = 600 lb, Δθ = 5°
α = 40°, β = 60°, P = 2500 lb, Δθ = 5°

Nota: Observe que los valores de ángulos están presentados en grados sexagesimales

Referencia: Ferdinand P. Beer, E. Johnston, E. Eisenberg. 9va Ed. Cap2. Ejercicio 2.C4 Mecánica vectorial para ingenieros – Estática

Rúbrica: Planteamiento del problema (5 puntos), desarrollo del método directo (10 puntos), algoritmo (5 puntos)

2Eva_2021PAOI_T3 EDP Elíptica con valores en la frontera f(x) g(y)

2da Evaluación 2021-2022 PAO I. 31/Agosto/2021

Tema 3 (40 puntos) Considere la siguiente ecuación diferencial parcial con valores en la frontera (PVF):

\frac{\partial ^2 u}{\partial x^2} +\frac{\partial^2 u}{\partial y^2} = 0 0 \lt x \lt \frac{1}{2}, 0 \lt y\lt \frac{1}{2} u(x,0)=0, 0 \leq x \leq \frac{1}{2} u(0,y)=0 , 0\leq y \leq \frac{1}{2} u\Big(x,\frac{1}{2} \Big) = 200 x , 0 \leq x \leq \frac{1}{2} u\Big(\frac{1}{2} ,y \Big) = 200 y , 0 \leq y \leq \frac{1}{2}

Use el método de diferencias finitas para aproximar la solución del PVF anterior tomando como tamaño de paso

h=k=\frac{1}{6}

Recuerde: presentar la malla, etiquetando cada eje con valores referenciales de los puntos seleccionados, presentar el planteamiento completo del ejercicio, usar expresiones completas en el desarrollo de cada uno de los pasos.

Rúbrica: Aproximación de las derivadas parciales (5 puntos), construcción de la malla (10), construcción del sistema lineal (20), resolución del sistema (5 puntos).

2Eva_2021PAOI_T2 EDO para cultivo de peces

2da Evaluación 2021-2022 PAO I. 31/Agosto/2021

Tema 2 (30 puntos) “La tilapia es un pescado que muestra crecimiento en su consumo” y producción en el país.

La actual situación comercial es estable y sin bajas en el precio.

“Santo Domingo es una provincia con una buena cantidad de piscinas para su cultivo. Aunque lo comercializan al fresco, ya que no tienen el equipo para empacar para exportación.”

Suponga una piscina de cultivo donde no existen depredadores y con alimento suficiente para que los peces no luchen por la comida.

Los peces se capturan a intervalos periódicos descritos por la función h(t) mostrada, con a=0.9 y b=0.75, constantes a > b y t>0 el tiempo en años.

h(t) = a + b \sin (2 \pi t)

Se supone que los peces crecen con un ritmo proporcional a su población, entonces la ecuación diferencial dy/dt modela la población de tilapias en el tiempo y r=1 la tasa neta de crecimiento sin captura. Suponga y(0) =1

\frac{\delta y(t)}{\delta t} = r y(t)-h(t)

a) Realice el planteamiento de la solución usando Runge-Kutta 4to orden, para n=12 meses o tramos.

b) Aproxime considerando h=1/12 y realice 2 pasos usando Runge-Kutta de 2do orden, escriba las expresiones completas para los cálculos.

c) Usando el algoritmo, determine si el negocio de cultivo de tilapia con la estrategia de captura h(t) es sostenible en el tiempo. Recomiende y justifique sus conclusiones observando el comportamiento para al menos 2 años (24 meses).

Rúbrica: Planteamiento del problema (5 puntos), uso del método de 4to orden (10 puntos), iteraciones con método de segundo orden (10 puntos). literal c (5 puntos)

Referencia: El consumo de la tilapia, más económica que la carne, crece en Ecuador. Eluniverso.com. Septiembre 5,2018. https://www.eluniverso.com/noticias/2018/09/05/nota/6938243/consumo-tilapia-mas-economica-que-carne-crece-ecuador/
Como empezar un Cultivo de Peces – Piscicultura – TvAgro por Juan Gonzalo Angel. https://www.youtube.com/watch?v=97qIOpSpXCs

2Eva_2021PAOI_T1 Masa transportada por tubo

2da Evaluación 2021-2022 PAO I. 31/Agosto/2021

Tema 1 (30 puntos) La cantidad de masa transportada, M, por un tubo durante cierto periodo de tiempo se calcula con:

M = \int_{t_1}^{t_2} Q(t)c(t) dt

Donde:
M = masa (mg)
t1 = tiempo inicial (min)
t2 = tiempo final (min)
Q(t) = tasa de flujo (m3/min)
c(t) = concentración (mg/m3)

Las representaciones funcionales siguientes definen las variaciones temporales en el flujo y la concentración:

Q(t)=9+4 \cos ^2 (0.4t) c(t)=5e^{-0.5t}+2 e^{-0.15 t}

a) Determine la masa transportada entre t1 = 2 min y t2 = 8 min, usando integración numérica de Simpson 1/3 con al menos 6 tramos.

b) Estime la cota de error para el literal anterior.

c) Recomiende y justifique cómo mejorar el resultado de lo calculado de forma numérica.

Rúbrica: Planteamiento (5 puntos), iteración con expresiones completas (10 puntos), tamaño de paso (5 puntos), cota error (5 puntos), literal c (5 puntos)

Referencia: Chapra ejercicio 22.14 p667. ¿Cómo funciona una refinería? https://youtu.be/tFJ064TLW4E
¿Cómo lo hacen? – Extracción de petróleo – DiscoveryMAX en Español https://youtu.be/ua8u3iSFqsc

s2Eva_2021PAOI_T3 EDP Elíptica con valores en la frontera f(x) g(y)

Ejercicio: 2Eva_2021PAOI_T3 EDP Elíptica con valores en la frontera f(x) g(y)

Dada la EDP elíptica

\frac{\partial ^2 u}{\partial x^2} +\frac{\partial^2 u}{\partial y^2} = 0 0 \lt x \lt \frac{1}{2}, 0 \lt y\lt \frac{1}{2}

Se convierte a la versión discreta usando diferencias divididas centradas:

 


\frac{u[i-1,j]-2u[i,j]+u[i+1,j]}{\Delta x^2} + + \frac{u[i,j-1]-2u[i,j]+u[i,j+1]}{\Delta y^2} = 0

Se agrupan los términos Δx, Δy semejante a formar un λ al multiplicar todo por Δy2

\frac{\Delta y^2}{\Delta x^2}\Big(u[i-1,j]-2u[i,j]+u[i+1,j] \Big) + + \frac{\Delta y^2}{\Delta y^2}\Big(u[i,j-1]-2u[i,j]+u[i,j+1]\Big) = 0

los tamaños de paso en ambos ejes son de igual valor, se simplifica la ecuación

\lambda= \frac{\Delta y^2}{\Delta x^2} = 1
u[i-1,j]-2u[i,j]+u[i+1,j] + + u[i,j-1]-2u[i,j]+u[i,j+1] = 0
u[i-1,j]-4u[i,j]+u[i+1,j] + + u[i,j-1]+u[i,j+1] = 0

que permite plantear las ecuaciones para cada punto en posición [i,j]

En cada iteración se requiere el uso de los valores en la frontera

u(x,0)=0, 0 \leq x \leq \frac{1}{2} u(0,y)=0 , 0\leq y \leq \frac{1}{2} u\Big(x,\frac{1}{2} \Big) = 200 x , 0 \leq x \leq \frac{1}{2} u\Big(\frac{1}{2} ,y \Big) = 200 y , 0 \leq y \leq \frac{1}{2}

Iteraciones

i=1, j=1

u[0,1]-4u[1,1]+u[2,1] + + u[1,0]+u[1,2] = 0

usando los valores en la frontera,

0-4u[1,1]+u[2,1] + 0+u[1,2] = 0 -4u[1,1]+u[2,1] + u[1,2] = 0

i=2, j=1

u[1,1]-4u[2,1]+u[3,1] + + u[2,0]+u[2,2] = 0

usando los valores en la frontera,

u[1,1]-4u[2,1]+200(1/6) + 0+u[2,2] = 0 u[1,1]-4u[2,1] + u[2,2] = -200(1/6)

i=1, j=2

u[0,2]-4u[1,2]+u[2,2] + + u[1,1]+u[1,3] = 0 0 - 4u[1,2]+u[2,2] + u[1,1]+200\frac{1}{6} = 0 - 4u[1,2] + u[2,2]+u[1,1] = -200\frac{1}{6}

i=2, j=2

u[1,2]-4u[2,2]+u[3,2] + + u[2,1]+u[2,3] = 0 u[1,2]-4u[2,2]+200\frac{2}{6} + u[2,1]+200\frac{2}{6} = 0 u[1,2]-4u[2,2]+ u[2,1] = -(2)200\frac{2}{6}

Sistema de ecuaciones a resolver:

\begin{bmatrix} -4 & 1 &1&0\\1 &-4&0&1\\1&0&-4&1 \\0&1&1&-4\end{bmatrix} \begin{bmatrix} u[1,1]\\u[2,1] \\u[1,2]\\u[2,2] \end{bmatrix} = \begin{bmatrix} 0\\-200(1/6)\\-200(1/6)\\-200(4/6) \end{bmatrix}

Resolviendo el sistema se tiene:

[11.11111111 22.22222222 22.22222222 44.44444444]

Instrucciones Python

import numpy as np

A = np.array([[-4, 1, 1, 0],
              [ 1,-4, 0, 1],
              [ 1, 0,-4, 1],
              [ 0, 1, 1,-4]])

B = np.array([0,-200*(1/6),-200*(1/6),-200*(4/6)])

x= np.linalg.solve(A,B)

print(x)

s2Eva_2021PAOI_T1 Masa transportada por tubo

Ejercicio: 2Eva_2021PAOI_T1 Masa transportada por tubo

Las expresiones siguientes se usan dentro de la expresión del integral

Q(t)=9+4 \cos ^2 (0.4t) c(t)=5e^{-0.5t}+2 e^{-0.15 t} M = \int_{t_1}^{t_2} Q(t)c(t) dt

literal a

Usando los valores dados para el intervalo [2,8] con 6 tramos h = (8-2)/6 =1

Se usa los valores de cada ti en Se puede obtener una tabla de valores muestreados para integrar f(t) = Q(i)c(t)

[ti,	 Qi,	 Ci,	 fi]
[ 2.     10.9416  3.321  36.3374]
[ 3.      9.5252  2.3909 22.7739]
[ 4.      9.0034  1.7743 15.9747]
[ 5.      9.6927  1.3552 13.1352]
[ 6.     11.175   1.0621 11.8687]
[ 7.     12.5511  0.8509 10.6793]
[ 8.     12.9864  0.694   9.0121]

Para el integral se usan los valores por cada dos tramos

I\cong \frac{1}{3}[36.3374+4(22.7739) + 15.9747] + \frac{1}{3}[15.9747+4(13.1352) + 11.8687] + \frac{1}{3}[11.8687+4(10.6793) + 9.0121] I = 95.7965

literal b

L acota de error de truncamiento por cada fórmula usada, se estima como O(h5),

error_{trunca} = -\frac{h^5}{90} f^{(4)}(z)

para un valor de z entre [a,b]

por lo que al usar 3 veces la formula de Simpson se podría estimar en:

error_{trunca} = 3(1^5/90) = 0.033

literal c

El resultado se puede mejorar de dos formas:

1. Dado que el número de tramos es múltiplo de 3, se puede cambiar la fórmula a Simpon de 3/8, que tendría una cota de error menor

2. Aumentar el número de tramos disminuyendo el valor de h para que el error disminuya. Por ejemplo si se reduce a 0.5, el error disminuye en el orden de 0.55

Podría recomendar la segunda opión, pues a pesar que se aumenta la cota de error por cada vez que se usa la fórmula, el error de cada una disminuye en ordenes de magnitud 0,03125


La gráfica del ejercicio es:

Instrucciones en Python

import numpy as np
import matplotlib.pyplot as plt

# INGRESO
Q = lambda t: 9+4*(np.cos(0.4*t)**2)
C = lambda t: 5*np.exp(-0.5*t)+2*np.exp(-0.15*t)

t1 = 2
t2 = 8
n  = 6

# PROCEDIMIENTO
muestras = n+1 
dt = (t2-t1)/n
ti = np.arange(t1,t2+dt,dt)
Qi = Q(ti)
Ci = C(ti)
fi = Qi*Ci

# integración con Simpson 1/3
h= dt
I13 = 0
for i in range(0,6,2):
    S13 = (h/3)*(fi[i]+4*fi[i+1]+fi[i+2])
    I13 = I13 + S13

# SALIDA
np.set_printoptions(precision=4)
print("[ti,\t Qi,\t Ci,\t fi]")
for i in range(0,muestras,1):
    print(np.array([ti[i],Qi[i],Ci[i],fi[i]]))
print("Integral S13: ",I13)
# grafica
plt.plot(ti,Qi, label = "Q(t)")
plt.plot(ti,Ci, label = "c(t)")
plt.plot(ti,fi, label = "f(t)")
plt.plot(ti,Qi,'.b')
plt.plot(ti,Ci,'.r')
plt.plot(ti,fi,'.g')
plt.xlabel("t")
plt.ylabel("f(t)=Q(t)*c(t)")
plt.show()

s2Eva_2021PAOI_T2 EDO para cultivo de peces

Ejercicio: 2Eva_2021PAOI_T2 EDO para cultivo de peces

Siendo la captura una constante mas una función periódica,

h(t) = a + b \sin (2 \pi t)

La ecuación EDO del ejercicio, junto a las constantes a=0.9 y b=0.75, r=1

\frac{\delta y(t)}{\delta t} = r y(t)-h(t)

se convierte en:

\frac{\delta y(t)}{\delta t} = (1) y(t)- \Big( 0.9 + .75 \sin (2 \pi t)\Big) \frac{\delta y(t)}{\delta t} = y(t)- 0.9 - .75 \sin (2 \pi t)

Considerando que la población inicial de peces es 1 o 100%, y(0)=1

literal a

h=1/12
tamano = muestras + 1
estimado = np.zeros(shape=(tamano,2),dtype=float)
estimado[0] = [0,1]
ti = 0
yi = 1
for i in range(1,tamano,1):
    K1 = 1/12 * d1y(ti,yi)
    K2 = 1/12 * d1y(ti+1/24, yi + K1/2)
    K3 = 1/12 * d1y(ti+1/24, yi + K2/2)
    K4 = 1/12 * d1y(ti+1/12, yi + K3)

    yi = yi + (1/6)*(K1+2*K2+2*K3 +K4)
    ti = ti + 1/12
        
    estimado[i] = [ti,yi]

literal b

iteración i=0

t(0) = 0

y(0) = 1

K1 = \frac{1}{12} \Big(1- 0.9 - .75 \sin (2 \pi 0)\Big) = 0,008333 K2 = \frac{1}{12} \Big(1- 0.9 - .75 \sin \Big(2 \pi (0+\frac{1}{12})\Big)\Big) = -0.02222 y(1) = 0 + \frac{0.008333+(-0.02222)}{2} = 0.9930 t(1) = 0 + \frac{1}{12} = \frac{1}{12}

iteración i=1

t(1) = \frac{1}{12}

y(1) = 0.9930

K1 = \frac{1}{12} \Big(0.9930 - 0.9 - .75 \sin \Big( 2 \pi\frac{1}{12}\Big)\Big) = -0.02349 K2 = \frac{1}{12} \Big(0.9930 - 0.9 - .75 \sin \Big(2 \pi (\frac{1}{12}+\frac{1}{12})\Big)\Big) = -0.04832 y(1) = 0.9930 + \frac{-0.02349+(-0.04832)}{2} = 0.9571 t(1) = \frac{1}{12} + \frac{1}{12} = \frac{2}{12}

iteración i=2

t(2) = \frac{2}{12}

y(1) = 0.9571

K1 = \frac{1}{12} \Big(0.9571 - 0.9 - .75 \sin \Big( 2 \pi\frac{2}{12}\Big)\Big) = -0.04936 K2 = \frac{1}{12} \Big(0.9571 - 0.9 - .75 \sin \Big(2 \pi (\frac{2}{12}+\frac{1}{12})\Big)\Big) = -0.06185 y(1) = 0.9571 + \frac{-0.04936+(-0.06185)}{2} = 0.9015 t(3) = \frac{2}{12} + \frac{1}{12} = \frac{3}{12}

literal c

Resultado del algoritmo, muestra que la estragegia de cosecha, en el tiempo no es sostenible, dado que la población de peces en el tiempo decrece.

estimado[xi,yi,K1,K2]
[[ 0.0000e+00  1.0000e+00  8.3333e-03 -2.2222e-02]
 [ 8.3333e-02  9.9306e-01 -2.3495e-02 -4.8330e-02]
 [ 1.6667e-01  9.5714e-01 -4.9365e-02 -6.1852e-02]
 [ 2.5000e-01  9.0153e-01 -6.2372e-02 -5.9196e-02]
 [ 3.3333e-01  8.4075e-01 -5.9064e-02 -4.1109e-02]
 [ 4.1667e-01  7.9066e-01 -4.0361e-02 -1.2475e-02]
 [ 5.0000e-01  7.6425e-01 -1.1313e-02  1.8994e-02]
 [ 5.8333e-01  7.6809e-01  2.0257e-02  4.4822e-02]
 [ 6.6667e-01  8.0063e-01  4.5845e-02  5.8039e-02]
 [ 7.5000e-01  8.5257e-01  5.8547e-02  5.5053e-02]
 [ 8.3333e-01  9.0937e-01  5.4907e-02  3.6606e-02]
 [ 9.1667e-01  9.5513e-01  3.5844e-02  7.5807e-03]
 [ 1.0000e+00  9.7684e-01  6.4031e-03 -2.4313e-02]
 [ 1.0833e+00  9.6788e-01 -2.5593e-02 -5.0602e-02]
 [ 1.1667e+00  9.2978e-01 -5.1645e-02 -6.4322e-02]
 [ 1.2500e+00  8.7180e-01 -6.4850e-02 -6.1881e-02]
 [ 1.3333e+00  8.0844e-01 -6.1757e-02 -4.4027e-02]
 [ 1.4167e+00  7.5554e-01 -4.3288e-02 -1.5645e-02]
 [ 1.5000e+00  7.2608e-01 -1.4494e-02  1.5549e-02]
 [ 1.5833e+00  7.2661e-01  1.6800e-02  4.1077e-02]
 [ 1.6667e+00  7.5554e-01  4.2089e-02  5.3969e-02]
 [ 1.7500e+00  8.0357e-01  5.4464e-02  5.0630e-02]
 [ 1.8333e+00  8.5612e-01  5.0470e-02  3.1799e-02]
 [ 1.9167e+00  8.9725e-01  3.1021e-02  2.3563e-03]
 [ 2.0000e+00  9.1394e-01  1.1619e-03 -2.9991e-02]
 [ 2.0833e+00  8.9953e-01 -3.1289e-02 -5.6773e-02]
 [ 2.1667e+00  8.5550e-01 -5.7835e-02 -7.1028e-02]
 [ 2.2500e+00  7.9107e-01 -7.1578e-02 -6.9169e-02]
 [ 2.3333e+00  7.2069e-01 -6.9069e-02 -5.1948e-02]
 [ 2.4167e+00  6.6018e-01 -5.1235e-02 -2.4254e-02]
 [ 2.5000e+00  6.2244e-01 -2.3130e-02  6.1924e-03]
 [ 2.5833e+00  6.1397e-01  7.4142e-03  3.0909e-02]
 [ 2.6667e+00  6.3313e-01  3.1888e-02  4.2918e-02]
 [ 2.7500e+00  6.7053e-01  4.3378e-02  3.8619e-02]
 [ 2.8333e+00  7.1153e-01  3.8421e-02  1.8746e-02]
 [ 2.9167e+00  7.4012e-01  1.7926e-02 -1.1830e-02]
 [ 3.0000e+00  7.4317e-01  0.0000e+00  0.0000e+00]]

Instrucciones en Python

# EDO. Método de RungeKutta 2do Orden 
# estima la solucion para muestras espaciadas h en eje x
# valores iniciales x0,y0
# entrega arreglo [[x,y]]
import numpy as np

def rungekutta2(d1y,x0,y0,h,muestras):
    tamano   = muestras + 1
    estimado = np.zeros(shape=(tamano,4),dtype=float)
    # incluye el punto [x0,y0]
    estimado[0] = [x0,y0,0,0]
    xi = x0
    yi = y0
    for i in range(1,tamano,1):
        K1 = h * d1y(xi,yi)
        K2 = h * d1y(xi+h, yi + K1)

        yi = yi + (K1+K2)/2
        xi = xi + h
        estimado[i-1,2:]=[K1,K2]
        estimado[i] = [xi,yi,0,0]
    return(estimado)

# PROGRAMA PRUEBA
# Ref Rodriguez 9.1.1 p335 ejemplo.
# prueba y'-y-x+(x**2)-1 =0, y(0)=1

# INGRESO
# d1y = y' = f, d2y = y'' = f'
a =0.9; b=0.75; r=1
d1y = lambda t,y: r*y-(a+b*np.sin(2*np.pi*t))
x0 = 0
y0 = 1
h  = 1/12
muestras = 12*3

# PROCEDIMIENTO
puntosRK2 = rungekutta2(d1y,x0,y0,h,muestras)
xi = puntosRK2[:,0]
yiRK2 = puntosRK2[:,1]

# SALIDA
np.set_printoptions(precision=4)
print('estimado[xi,yi,K1,K2]')
print(puntosRK2)


# Gráfica
import matplotlib.pyplot as plt


plt.plot(xi[0],yiRK2[0],
         'o',color='r', label ='[x0,y0]')
plt.plot(xi[1:],yiRK2[1:],
         'o',color='m',
         label ='y Runge-Kutta 2 Orden')

plt.title('EDO: Solución con Runge-Kutta 2do Orden')
plt.xlabel('x')
plt.ylabel('y')
plt.legend()
plt.grid()
plt.show()