Autor: Edison Del Rosario

  • 3Eva_2020PAOI_T3 EDP Parabólica

    3ra Evaluación 2020-2021 PAO I. 22/Septiembre/2020

    Tema 3. (35 puntos) Desarrolle con el método implícito para aproximar la solución de la EDP Parabólica

    \frac{\partial u}{\partial t} - c^2 \frac{\partial ^2 u}{\partial x^2} = g(x)
    u(x,0) = f(x) u(0,t) = 0 u(1,t) = 0
    f(x) = \begin{cases} 5x , & 0 \le x \le 0.5 \\ 5(1-x) , & 0.5 \lt x \le 1\end{cases} g(x) = 2 , 0 \le x \le 1

    Considere para h=0.25, k=0.05, c=1

    a. Grafique la malla
    b. Escriba las ecuaciones para las derivadas
    c. Plantee las ecuaciones
    d. Resuelva para tres pasos
    e. Estime el error (solo plantear)

    Rúbrica: literal a (5 puntos), literal b (5puntos), literal c (10 puntos), literal d (10 puntos), literal e (5 puntos)

  • s3Eva_2020PAOI_T2 EDO Modelo epidemiológico no letal

    Ejercicio: 3Eva_2020PAOI_T2 EDO Modelo epidemiológico no letal

    El ejercicio representa un sistema de ecuaciones diferenciales ordinarias, que serán resueltas usando Runge-Kutta de 2do Orden.

    Modelo Epidemiologico SIR 01

    De compararse con la curva de contagios de Covid-19 se tienen diferencias en la población recuperada, pues el modelo se considera no letal por lo que no se contabiliza el número de fallecidos.

    El módelo es el más básico y permite cambiar por ejemplo la tasa de infección, y se ve los cambios en la curva de infectados. Se puede observar lo que se indicaba como objetivo de "aplanar la curva" al disminuir la población expuesta mediante cambiar la tasa de infección al exponer más o menos población al contagio por iteacción entre "suceptibles" e "infectados.


    Desarrollo analítico

    Las fórmulas para el algoritmo se identifican como:
    binfecta = 1.4
    grecupera = 1/4

    f(t,S,I,R) = -1.4(S)(I) g(t,S,I,R) = 1.4(S)(I) - \frac{1}{4}(I) w(t,S,I,R) = \frac{1}{4}(I)

    que luego se usan en cada iteración que se registra en la tabla empezando con las condiciones iniciales

    itera Si Ii Ri
    0 1 0.001 0
    1 0.9977 0.002809 0.0003937
    2 0.9916 0.007862 0.0014987
    3 tarea ... ...

    itera = 1
    K_{1S} = h. f(t_i,S_i,I_i,R_i) =

    = 1(-1.4)( 1)(0.001) = -0.0014 K_{1I} = h. g(t_i,S_i,I_i,R_i) = = 1\Big((1.4)(1)(0.001) - \frac{1}{4}0.001 \Big) = 0.00115 K_{1R} = h. w(t_i,S_i,I_i,R_i) = = 1 \Big( \frac{1}{4} 0.001 \Big) = 0.00025 K_{2S} = h. f(t_i+h, S_i + K_{1S}, I_i+K_{1I}, R_i +K_{1R}) = = 1 \Big( (-1.4)(1-0.0014)(0.001+0.00115)\Big) = = -0.003005786 K_{2I} = h. g(t_i+h, S_i + K_{1S}, I_i+K_{1I}, R_i + K_{1R}) = = 1\Big((1.4)(1-0.0014)(0.001+0.00115) -\frac{1}{4} (0.001+0.00115)\Big) = = 0.002468286 K_{2R} = h w(t_i+h, S_i + K_{1S}, I_i+K_{1I}, R_i +K_{1R}) = 1\Big( \frac{1}{4}(0.001+0.00115) \Big) = 0.0005375 S_i = S_i + \frac{K_{1S}+K_{2S}}{2} = 1 + \frac{-0.0014 -0.003005786}{2} = 0.997797107 I_i = I_i + \frac{K_{1I}+K_{2I}}{2} = 0.001 + \frac{0.00115+0.002468286}{2} = 0.002809143 R_i = R_i + \frac{K_{1R}+K_{2R}}{2} = 0 + \frac{0.00025 + 0.0005375}{2} = 0.00039375 t_i = t_i + h = 1 + 1 = 2

     

    itera = 2

    K_{1S} = 1(-1.4)(0.9977)(0.002809) = -0.003924 K_{1I} = 1 \Big(1.4(0.9977)(0.002809) - \frac{1}{4}0.002809 \Big) = 0.003221 K_{1R} = 1(\frac{1}{4} 0.002809) = 0.0007022 K_{2S} = 1 \Big( -1.4*(0.9977-0.003924)(0.002809+0.003221) \Big) = = -0.008391 K_{2I} = 1 \Big(1.4(0.9977-0.003924)(0.002809+0.003221) - \frac{1}{4}(0.002809+0.003221) \Big) = 0.006883 K_{2R} = 1 \Big( \frac{1}{4}(0.002809+0.0032218) \Big) = 0.001507

     

    S_i = 0.9977 + \frac{-0.003924 -0.008391}{2} = 0.9916

     

    I_i = 0.002809 + \frac{0.003221+0.006883}{2} = 0.007862

     

    R_i = 0.0003937 + \frac{0.0007022 + 0.001507}{2} = 0.001498

     

    t_i = t_i + h = 2 + 1 = 3

     

    itera 3 - TAREA


    Instrucciones en Python

    # 3Eva_2020PAOI_T2 Modelo epidemiológico no letal
    # Sistemas EDO con Runge-Kutta de 2do Orden
    import numpy as np
    
    def rungekutta2_fgw(f,g,w,t0,x0,y0,z0,h,muestras):
        tamano = muestras +1
        tabla = np.zeros(shape=(tamano,4),dtype=float)
        tabla[0] = [t0,x0,y0,z0]
        ti = t0
        xi = x0
        yi = y0
        zi = z0
        for i in range(1,tamano,1):
            K1x = h * f(ti,xi,yi,zi)
            K1y = h * g(ti,xi,yi,zi)
            K1z = h * w(ti,xi,yi,zi)
            
            K2x = h * f(ti+h, xi + K1x, yi+K1y, zi +K1z)
            K2y = h * g(ti+h, xi + K1x, yi+K1y, zi +K1z)
            K2z = h * w(ti+h, xi + K1x, yi+K1y, zi +K1z)
    
            xi = xi + (1/2)*(K1x+K2x)
            yi = yi + (1/2)*(K1y+K2y)
            zi = zi + (1/2)*(K1z+K2z)
            ti = ti + h
            
            tabla[i] = [ti,xi,yi,zi]
        tabla = np.array(tabla)
        return(tabla)
    
    # Programa
    # Parámetros de las ecuaciones
    
    binfecta = 1.4
    grecupera = 1/4
    # Ecuaciones
    f = lambda t,S,I,R : -binfecta*S*I
    g = lambda t,S,I,R : binfecta*S*I - grecupera*I
    w = lambda t,S,I,R : grecupera*I
    # Condiciones iniciales
    t0 = 0
    S0 = 1.0
    I0 = 0.001
    R0 = 0.0
    
    # parámetros del algoritmo
    h = 1.0
    muestras = 51
    
    # PROCEDIMIENTO
    tabla = rungekutta2_fgw(f,g,w,t0,S0,I0,R0,h,muestras)
    ti = tabla[:,0]
    Si = tabla[:,1]
    Ii = tabla[:,2]
    Ri = tabla[:,3]
    # SALIDA
    np.set_printoptions(precision=6)
    print(' [ ti, Si, Ii, Ri]')
    print(tabla)
    
    # Grafica tiempos vs población
    import matplotlib.pyplot as plt
    plt.plot(ti,Si, label='S')
    plt.plot(ti,Ii, label='I')
    plt.plot(ti,Ri, label='R')
    plt.title('Modelo SIR')
    plt.xlabel('t tiempo')
    plt.ylabel('población')
    plt.legend()
    plt.grid()
    plt.show()
    
  • s1Eva_IIT2009_T1 Movimiento de partícula en plano

    Ejercicio: 1Eva_IIT2009_T1 Movimiento de partícula en plano

    a. Planteamiento del problema

    Las ecuaciones expresan las trayectorias de dos partículas,

    x(t) = 3 \sin ^{3}(t)-1 y(t) = 4 \sin (t)\cos (t)

    que para que se encuentren o choquen, sus coordenadas deberían ser iguales.

    x(t) = y(t) 3 \sin ^{3}(t)-1 = 4 \sin (t)\cos (t)

    Se reordena la expresión, de la forma f(t) = 0 para usarla en el algoritmo de búsqueda de raíces.

    3 \sin ^{3}(t)-1 - 4 \sin (t)\cos (t) = 0 f(t) = 3 \sin ^{3}(t)-1 - 4 \sin (t)\cos (t)

    b. Intervalo de búsqueda de raíz

    Como la variable independiente es tiempo, el evento a buscar se supone sucede en tiempos positivos t>=0, por lo que el valor inicial a la izquierda del intervalo será a=0

    Para el caso de b, a la derecha, se usa lo indicado en el enunciado para la pregunta del literal b, donde se indica t ∈ [0, π/2], por lo que b = π/2

    [0, π/2]

    verificando que exista cambio de signo entre f(a) y f(b)

    f(0) = 3 \sin ^{3}(0)-1 - 4 \sin (0)\cos (0) = -1 f(\pi /2) = 3 \sin ^{3}(\pi /2)-1 - 4 \sin (\pi /2)\cos (\pi /2) = 3 (1)^3-1 - 4 (1)(0) = 2

    con lo que se comprueba que al existir cambio de signo, debe existir una raíz en el intervalo.


    c. Método de Falsa Posición

    Desarrollo analítico con lápiz y papel

    Se trata de mostrar los pasos en al menos tres iteraciones del método, usando las siguientes expresiones:

    f(t) = 3 \sin ^{3}(t)-1 - 4 \sin (t)\cos (t) c = b - f(b) \frac{a-b}{f(a)-f(b)}

    [0, π/2]

    iteración 1

    a = 0 , b = \pi/2

    tomando los datos al validar los puntos extremos

    f(0) = -1 f(\pi /2) = 2 c = \pi/2 - 2 \frac{0-\pi/2}{-1-2} = \pi/6 f(\pi/6) = 3 \sin ^{3}(\pi/6)-1 - 4 \sin (\pi/6)\cos (\pi/6) = -2.3570

    el signo de f(c) es el mismo que f(a), se ajusta el lado izquierdo

    tramo = |c-a| = |\pi /6 - 0| = \pi/6 a = c = \pi/6 , b = \pi/2

    iteración 2

    a = \pi/6 , b = \pi/2 f(\pi/6) = -2.3570 f(\pi /2) = 2 c = \pi/2 - 2 \frac{\pi/6-\pi/2}{-1-2} = 1.0901 f(1.0901) = 3 \sin ^{3}(1.0901)-1 - 4 \sin (1.0901)\cos (1.0901) = -0.5486

    el signo de f(c) es el mismo que f(a), se ajusta el lado izquierdo

    tramo = |c-a| = | 1.0901-\pi/6| = 1.0722 a = c = 1.0901 , b = \pi/2

    iteración 3

    a = 1.0901 , b = \pi/2 f(1.0901) = -0.5486 f(\pi /2) = 2 c = \pi/2 - 2 \frac{-0.5486-\pi/2}{-0.5486-2} = 1.19358 f(1.19358) = 3 \sin ^{3}(1.19358)-1 - 4 \sin (1.19358)\cos (1.19358) = 0.0409

    el signo de f(c) es el mismo que f(b), se ajusta el lado derecho

    tramo = |b-c| = | \pi/2- 1.19358| = 0.3772 a = 1.0901 , b = 1.19358


    Algoritmo con Python

    Los parámetros aplicados en el algoritmo son los desarrollados en el planteamiento del problema e intervalo de búsqueda, con lo que se obtiene los siguientes resultados:

     raiz: 1.1864949811467547
    error: 9.919955449055884e-05
    

    s1EIIT20019T1 Mov Punto Plano 01

    las instrucciones en Python son:

    # 1Eva_IIT2009_T1 Movimiento de partícula en plano
    import numpy as np
    import matplotlib.pyplot as plt
    
    #INGRESO
    xt = lambda t: 3*(np.sin(t)**3)-1
    yt = lambda t: 4*np.sin(t)*np.cos(t)
    fx = lambda t: 3*(np.sin(t)**3)-1 - 4*np.sin(t)*np.cos(t) 
    
    a = 0
    b = np.pi/2
    tolera = 0.001
    
    # intervalo para gráfica
    La = a
    Lb = b
    muestras = 21
    
    # PROCEDIMIENTO
    # Posicion Falsa
    tramo = abs(b-a)
    fa = fx(a)
    fb = fx(b)
    while not(tramo<=tolera):
        c = b - fb*(a-b)/(fa-fb)
        fc = fx(c)
        cambio = np.sign(fa)*np.sign(fc)
        if cambio>0:
            # actualiza en izquierda
            tramo = abs(c-a)
            a = c
            b = b
            fa = fc
        else:
            # actualiza en derecha
            tramo = abs(b-c)
            a = a
            b = c
            fb = fc
    
    # para grafica
    ti = np.linspace(La,Lb,muestras)
    xi = xt(ti)
    yi = yt(ti)
    fi = fx(ti)
    
    # SALIDA
    print(' raiz:', c)
    print('error:', tramo)
    
    # GRAFICA
    plt.plot(ti,xi, label='x(t)')
    plt.plot(ti,yi, label='y(t)')
    plt.plot(ti,fi, label='f(t)')
    plt.plot(c,fx(c),'ro')
    plt.axhline(0, color='green')
    plt.axvline(c, color='magenta')
    plt.legend()
    plt.xlabel('t')
    plt.title('Método de Falsa Posición')
    plt.show()
    
  • s1Eva_IIT2010_T1 Aproximar con polinomio

    Ejercicio: 1Eva_IIT2010_T1 Aproximar con polinomio

    Desarrollo Analítico

    Encabezado ejemplo para el desarrollo con Papel y lápiz:


    Tarea 01 Semana 01 Fecha: año/mes/día
    Apellidos Nombres
    Referencia: 1Eva_IIT2010_T1 Aproximar con polinomio

    Opción 1. Usando el polinomio de Taylor

    Usando Unidad 1 Polinomio de Taylor, supondremos que:  x0=0

    El polinomio de Taylor requerido es de: grado 2

    P_{n}(x) = f(x_0)+\frac{f'(x_0)}{1!} (x-x_0) + + \frac{f''(x_0)}{2!}(x-x_0)^2 +

    Se escribe la función f(x) y sus derivadas para el polinomio:

    f(x) = e^x \cos (x) +1

    primera derivada

    f'(x) = e^x \cos (x) - e^x \sin(x) f'(x) = e^x (\cos (x) - \sin(x))

    segunda derivada

    f''(x) = e^x( \cos (x) - \sin(x))+ + e^x (-\sin(x) - \cos(x)) f''(x) = -2 e^x \sin(x))

    Punto de referencia x0 = 0, tomado como ejemplo dentro del intervalo.

    Observación: escriba las expresiones, reemplazando los valores. Un criterio de evaluación es que, si en la lección o examen no tuvo tiempo para usar la calculadora, se puede evaluar si realizaba las operaciones con el punto de referencia y expresiones correctas.

    f(0) = e^0 \cos (0) +1 = 2 f'(0) = e^0(\cos (0) - \sin(0)) = 1 f''(0) = -2 e^0 \sin(0)) = 0

    Sustitución en el polinomio de Taylor planteado:

    p_2(x) = f(x_0) + \frac{f'(x_0)}{1!}(x-x_0) + \frac{f''(x_0)}{2!}(x-x_0)^2 P_{2}(x) = 2+\frac{1}{1} (x-0) + + \frac{0}{2}(x-0)^2 + P_{2}(x) = 2+ x

    El error referenciado a los otros puntos será:

    errado = |f(x)-p(x)| errado = \Big|\Big( e^x \cos (x) +1 \Big) - (2+ x)\Big|

    usando un punto diferente a x0=0, como x = π/2

    errado = \Big| \Big( e^{\frac{\pi}{2}}\cos \Big( \frac{\pi}{2} \Big) +1 \Big) - \Big(2+ \frac{\pi}{2}\Big) \Big| errado = | 1 - 3.5707| = 2.5707

    Tarea: calcular el error,  para x = π, verificando que pase por los puntos requeridos.



    Opción 2. Usando el polinomio de interpolación

    Siguiendo la unidad 4 para interpolación, el polinomio requerido tiene la forma:

    p(x) = a + bx + cx^2

    por lo que conociendo los pares ordenados por donde debe pasar se puede plantear las ecuaciones y encontrar a,b,c.

    f(0) = e^0 \cos (0) +1 = 2 f(\pi/2) = e^{\pi/2} \cos (\pi /2) +1 = 1(0)+1 =1 f(\pi) = e^{\pi} \cos (\pi) +1 = e^{\pi} +1

    se encuentra que a = 2 cuando x = 0 y que reemplazando los valores de x =π/2 y x=π se tiene:

    2 + (π/2) b + (π/2)2 c = 1
    2 +    π  b +   (π)2 c = eπ +1

    que se convierte en:

    (π/2) b + (π/2)2 c = -1
       π  b +   (π)2 c = -(eπ +1)

    al multiplicar la primera ecuación por 2 y restando de la segunda

    - π2/2 c = eπ -1
    c = (-2/π2)(eπ -1)
    

    y sustituir c en la segunda ecuación:

    π b + (π)2 (-2/π2)(eπ -1) = -(eπ +1)
    π b = -(eπ +1) + 2(eπ -1) = -eπ -1 + 2eπ -2
    b = (eπ -3)/π

    El polinomio resultante es:

    p(x) = 2 + \frac{e^{\pi}-3}{\pi}x + \frac{-1(e^{\pi}-1)}{\pi ^2}x^2

    Probando respuesta con los valores en la función y polinomio usando Python, se encuentra que el polinomio pasa por los puntos. Al observar la gráfica observa que se cumple lo requerido pero visualiza el error de aproximación usando el método de la opción 2.

    polinomio Taylor aproximacion


    Algoritmo con Python

    Algoritmo desarrollado en clase, usado como taller, modificado para el problema planteado.

    Observación: Se reordena el algoritmo para mantener ordenados y separados los bloques de ingreso, procedimiento y salida. Así los bloques pueden ser convertidos fácilmente a funciones algorítmicas def-return.

    Observe que la variable n se interprete correctamente como "términos" o "grados" del polinomio de Taylor.

    # Aproximación Polinomio de Taylor alrededor de x0
    # f(x) en forma simbólica con sympy
    import numpy as np
    import math
    import sympy as sym
    import matplotlib.pyplot as plt
    
    # INGRESO --------------------
    x = sym.Symbol('x')
    fx = sym.exp(x)*sym.cos(x) + 1
    
    x0 = 0
    n  = 3 # grado de polinomio
    
    # Intervalo para Gráfica
    a = 0
    b = np.pi
    muestras = 21
    
    # PROCEDIMIENTO  -------------
    # construye polinomio Taylor
    k = 0 # contador de términos
    polinomio = 0
    while (k <= n):
        derivada   = fx.diff(x,k)
        derivadax0 = derivada.subs(x,x0)
        divisor   = math.factorial(k)
        terminok  = (derivadax0/divisor)*(x-x0)**k
        polinomio = polinomio + terminok
        k = k + 1
    
    # forma lambda para evaluación numérica
    fxn = sym.lambdify(x,fx,'numpy')
    pxn = sym.lambdify(x,polinomio,'numpy')
    
    # evaluar en intervalo para gráfica
    xi = np.linspace(a,b,muestras)
    fxi = fxn(xi)
    pxi = pxn(xi)
    
    # SALIDA  --------------------
    print('polinomio p(x)=')
    print(polinomio)
    print()
    sym.pprint(polinomio)
    
    # Gráfica
    plt.plot(xi,fxi,label='f(x)')
    plt.plot(xi,pxi,label='p(x)')
    # franja de error
    plt.fill_between(xi,pxi,fxi,color='yellow')
    plt.xlabel('xi')
    plt.axvline(x0,color='green', label='x0')
    plt.axhline(0,color='grey')
    plt.title('Polinomio Taylor: f(x) vs p(x)')
    plt.legend()
    plt.show()
    

    Resultado del algoritmo

    Revisar si el polinomio es concordante con lo realizado a lápiz y papel, de no ser así revisar el algoritmo o los pasos realizados en papel, deben ser iguales.
    Comprobando que el algoritmo esté correcto y pueda ser usado en otros ejercicios.

    polinomio p(x)=
    -x**3/3 + x + 2
    
       3        
      x         
    - -- + x + 2
      3         
    

    Resultados gráficos para x0=0

    Continuar con el ejercicio con x0 = π y luego con el siguiente punto x0 = π/2.

    Comparar resultados y presentar: Observaciones  y recomendaciones semejantes a las indicadas durante el desarrollo de la clase.

    polinomio Taylor error de aproximacion

  • 3Eva_IIT2019_T4 completar polinomio de interpolación

    3ra Evaluación II Término 2019-2020. 11/Febrero/2020. MATG1013

    Tema 4. (25 puntos) Una función f(x) en el intervalo [0,1] está definida por el trazador cúbico natural S(x):

    S_0(x) = 1 + 1.1186x + 0.6938 x^3

     0.0 ≤ x ≤ 0.4

    S_1(x) = 1.4918 + 1.4516(x-0.4) + c(x-0.4)^2 +d(x-0.4)^3

    0.4 ≤ x ≤ 0.6

    S_2(x) = 1.8221 + 1.8848(x-0.6) + +1.3336(x-0.6)^2 - 1.1113(x-0.6)^3

    0.6 ≤ x ≤ 1.0

    Sin embargo, el papel donde se registraron los polinomios sufrió un percance que no permite leer algunos valores para S1(x).

    a) Realice las operaciones necesarias para encontrar os valores: c, d
    b) Use el método de Newton para resolver la ecuación S(x) = 1.6

    Rúbrica: plantear las condiciones(10 puntos), resolver el sistema (5 puntos), literal b (10 puntos)

  • s3Eva_IIT2019_T4 completar polinomio de interpolación

    Ejercicio: 3Eva_IIT2019_T4 completar polinomio de interpolación

    Para visualizar la solución, se plantea graficar los polinomios que están completos S0(x) y S2(x).

    S_0(x) = 1 + 1.1186x + 0.6938 x^3

     0.0 ≤ x ≤ 0.4

    S_1(x) = 1.4918 + 1.4516(x-0.4) + c(x-0.4)^2 +d(x-0.4)^3

    0.4 ≤ x ≤ 0.6

    S_2(x) = 1.8221 + 1.8848(x-0.6) + +1.3336(x-0.6)^2 - 1.1113(x-0.6)^3

    0.6 ≤ x ≤ 1.0

    Como en trazadores cúbicos, lo que se usa es un polinomio por cada tramo muestreado para una curva contínua, etc. se tiene que los polinomios deben tener valores iguales en los puntos el eje x = 0.4 y 0.6

    Por lo que se evalua con  los polinomios completos:

    S_0(0.4) = 1 + 1.1186(0.4) + 0.6938 (0.4)^3 = 1.4918432 S_2(0.6) = 1.8221 + 1.8848(0.6-0.6) + +1.3336(0.6-0.6)^2-1.1113(0.6-0.6)^3=1.8221

    Opción 1

    Valores que se usan en los extremos del polinomio S1(x) para crear un sistema de dos ecuaciones y determinar los valores de c y d, completando el polinomio.

    S_1(0.4) = 1.4918 + 1.4516(0.4-0.4) + c(0.4-0.4)^2 +d(0.4-0.4)^3

    como los términos de c y d se hacen cero, hace falta una ecuación.

    S_1(0.6) = 1.4918 + 1.4516(0.6-0.4) + + c(0.6-0.4)^2 +d(0.6-0.4)^3 = 1.8221 1.8221 = 1.4918 + 1.4516(0.2) + c(0.2)^2 +d(0.2)^3 0,03998 = 0.04c +0,008d

    la otra ecuación se podría obtener usando la propiedad que las primeras derivadas de los polinomios deben ser iguales en los puntos x=0,4 y x= 0.6

    S'0(0.2) =S'1(0.2)

    Tarea: Desarrollar la siguiente ecuación y resolver


    Opción 2

    Si no recuerda la propiedad anterior, puede optar por usar otros conceptos para aproximar el resultado.

    Si para el tramo en que se busca el polinomio se puede retroceder un tamaño de paso x = 0.2 y evualuar usando S0(0.2), se obtiene otropunto de referencia para crear un polinomio que pase por los mismos puntos.

    S_0(0.2) = 1 + 1.1186*(0.2) + 0.6938 (0.2)^3

    Se aplica lo mismo para un tamaño de paso más adelante de x = 0.6 es x = 0.8m se evalua S2(0.8) y se tienen suficientes puntos para usar cualquier método de interpolación y determinar el polinomio para el tramo faltante.

    S_2(0.8) = 1.8221 + 1.8848(0.8-0.6) + +1.3336(0.8-0.6)^2 - 1.1113(0.8-0.6)^3
    xi     = [0.        0.2        0.4      ]
    S0(xi) = [1.        1.2292704  1.4918432]
    xi     = [0.6       0.8        1.       ]
    S2(xi) = [1.8221    2.2435136  2.7182728]
    

    que permite hacer una tabla de puntos, y usando por ejemplo el método de interpolación de Lagrange  con x entre [0.2, 0.8] se obtiene otra forma del polinomio buscado:

    p(x)=1.2292704 \frac{(x-0.4)(x-0.6)(x-0.8)}{(0.2-0.4)(0.2-0.6)(0.2-0.8)} + +1.4918432\frac{(x-0.2)(x-0.6)(x-0.8)}{0.4-0.2)(0.4-0.6)(0.4-0.8)}+ +1.8221\frac{(x-0.2)(x-0.4)(x-0.8)}{(0.6-0.2)(0.6-0.4)(0.6-0.8)} + + 2.2435136\frac{(x-0.2)(x-0.4)(x-0.6)}{(0.8-0.2)(0.8-0.4)(0.8-0.6)}

    Tarea: continuar con el desarrollo


    El literal b, requiere usar un metodo de búsqueda de raíces, para el cual se puede usar incluso bisección.

    Tarea: continuar con el desarrollo

  • 3Eva_IIT2019_T3 Preparación de terreno en refineria

    3ra Evaluación II Término 2019-2020. 11/Febrero/2020. MATG1013

    Tema 3. (25 puntos) Para valorar la preparación de terreno en una planta procesadora de Refinería, se requiere estimar el volumen de remoción.

    preparación de terreno

    Para una sección rectangular, se dispone de las alturas sobre el nivel del mar del terreno en una cuadrícula antes de los trabajos, siendo el nivel requerido de 220 m en toda el área.

    Nivel inicio (m) 0 50 100 150 200
    0 241 239 238 236 234
    25 241 239 237 235 233
    50 241 239 236 234 231
    75 242 239 236 232 229
    100 243 239 235 231 227

    Usando los métodos de integración numérica determine el volumen de material para ésta actividad.

    a) Determine el volumen de remoción

    b) Exprese y determine el error de aproximación para el volumen

    Rúbrica: literal a (15 puntos), literal b (10 puntos)

    Referencias: Liquidar Refinería del Pacífico tardaría años. 27 de enero, 2020. www.eluniverso.com.
    https://www.eluniverso.com/noticias/2020/01/27/nota/7710855/refineria-pacifico-liquidacion-rafael-correa-activos-ministerio
    Inicia liquidación de la Refinería del Pacífico. 16-03-2019. vistazo.com.
    https://www.vistazo.com/seccion/politica-nacional/inicia-liquidacion-de-la-refineria-del-pacifico

    # INGRESO
    nInicio = np.array([[241, 239, 238, 236, 234],
                        [241, 239, 237, 235, 233],
                        [241, 239, 236, 234, 231],
                        [242, 239, 236, 232, 229],
                        [243, 239, 235, 231, 227]])
    
    nRequerido = 220
    
    xi = np.array([0,50,100,150,200])
    yi = np.array([0,25,50,75,100])
    
    hx = 50
    hy = 25
    
    
  • s3Eva_IIT2019_T3 Preparación de terreno en refineria

    Ejercicio: 3Eva_IIT2019_T3 Preparación de terreno en refineria

    Se requiere usar el nivel inicial en la matriz, para restar del nivel requerido que es constante 220

    Nivel inicio (m) 0 50 100 150 200
    0 241 239 238 236 234
    25 241 239 237 235 233
    50 241 239 236 234 231
    75 242 239 236 232 229
    100 243 239 235 231 227

    lo que genera la matriz de diferencias. El valor es positivo indica remoción, el valor negativo indica por rellenar.

    Diferencia (m) 0 50 100 150 200
    0 21 19 18 16 14
    25 21 19 17 15 13
    50 21 19 16 14 11
    75 22 19 16 12 9
    100 23 19 15 11 7

    El volumen se puede calcular por un método en cada fila, y luego los resultados por columnas por otro método o el mismo.
    Por ejemplo Simpson de 1/3

    I= \frac{hx}{3}(f(x_0) +4f(x_1)+f(x_2))

    con lo que se obtiene:

    I_{fila}(0) = \frac{50}{3}(21 +4(19)+18) +\frac{50}{3}(18 +4(16)+14) =24750 I_{fila}(25) = = \frac{50}{3}(21 +4(19)+17) + \frac{50}{3}(17 +4(15)+13) = 23383,33 I_{fila}(50) = \frac{50}{3}(21 +4(19)+16) + \frac{50}{3}(16 +4(14)+11) = 22000 I_{fila}(75) = \frac{50}{3}(22 +4(19)+16) + \frac{50}{3}(16 +4(12)+5) =21850 I_{fila}(100) = \frac{50}{3}(23 +4(19)+15) + \frac{50}{3}(15 +4(11)+7) = 20483,33

    y usando el otro eje, se completa el volumen usando dos veces simpson:

    Volumen = \frac{h_y}{3}(f(x_0) +4f(x_1)+f(x_2)) Remover = \frac{25}{3}(24750 +4(23383,33)+22000) + + \frac{25}{3}(22000 +4(21850)+20483,33)=2251388,89

    El signo lo trae desde la diferencia, y muestra el sentido del desnivel.

    Se adjunta la gráfica de superficie en azul como referencia del signo,  respecto al nivel requerido en color verde.

    refineria Remover 01

    Error de truncamiento

    la cota del error de truncamiento se estima como O(h5)

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

    para un valor de z entre [a,b]

    para cuantificar el valor, se puede usar la diferencia finita Δ4f, pues con la derivada sería muy laborioso.

  • 3Eva_IIT2019_T2 Diferenciación, valor en frontera

    3ra Evaluación II Término 2019-2020. 11/Febrero/2020. MATG1013

    Tema 2. (25 Puntos)) Aproxime la solución del problema de valor de frontera para la ecuación mostrada, usando diferenciación numérica con h = 1/4

    y'' = -(x+1)y' + 2y + (1-x^2) e^{-x}

    0 ≤ x ≤ 1
    y(0) = -1
    y(1) = 0

    a) Plantee las derivadas en diferencias divididas
    b) Formule y simplifique la ecuación de diferencias divididas para el problema para cada punto interno de la tabla
    c) Presente la forma matricial del sistema de ecuaciones
    d) Encuentre los valores intermedios de y(xi) en la tabla, i = 1, 2, 3
    e) Estime el error

    i 0 1 2 3 4
    xi 0 1/4 1/2 3/4 1
    yi -1 0

    Rúbrica: Plantear las derivadas (5 puntos), plantear la ecuación en forma discreta (5 puntos), matriz del sistema de ecuaciones (5 puntos), estimar el error (5 puntos)

  • 3Eva_IIT2019_T1 Lanzamiento de Cohete

    3ra Evaluación II Término 2019-2020. 11/Febrero/2020. MATG1013

    Tema 1. (25 Puntos) Apollo 8 Lazamiento 01
    En el lanzamiento de un cohete se midieron las alturas alcanzadas a intervalos regulares de tiempo, mostradas en la siguiente tabla:

    t s 0 25 50 75 100 125
    y(t) Km 0 32 58 78 92 100

    Usando tres puntos, se requiere obtener el polinomio de grado 2 que describe la función de altura y(t) a partir de los datos obtenidos, usando interpolación

    a) Realice la tabla de diferencias finitas
    b) Plantee el polinomio de interpolación con diferencias finitas avanzadas
    c) A partir del polinomio obtenido, escriba las funciones de velocidad y’(t)
    y aceleración y’’(t) en cada punto de la tabla

    Rúbrica: literal a (5 puntos) literal b (5 puntos), literal c (15 puntos)


    ti = [ 0, 25, 50, 75, 100, 125]
    yi = [ 0, 32, 58, 78,  92, 100]

    Referencias: Batalla por la luna, el programa Apolo. History Latinoamérica