Está en la página 1de 4

PARCIAL 3, DICIEMBRE DE 2021 1

PARCIAL 3. MÉTODOS NUMÉRICOS


Profesor: Jhon Jairo León Salazar

Brayner Osorio - 1004627572


Facultad de Ingenierı́as
Programa de Ingenierı́a Eléctrica
Universidad Tecnológica de Pereira

I. P ROCEDIMIENTO cambio de las funciones, es decir, si se va ingresar otro sistema


A. Encontrar las aproximaciones a u1 , u2 y u3 en [0, 1] con de ecuaciones diferenciales (S.E.D) no es sino cambiar estás
h = 0,1 funciones ya que el procedimiento del programa está definido
en otra función que se puede ver en la Figura 1,2 y 3.
u′1 = u2 − u3 + t, 0 ≤ t ≤ 1, u1 (0) = 1
u′2 = 3t2 , 0 ≤ t ≤ 1, u2 (0) = 1
u′3 = u2 + e−t , 0 ≤ t ≤ 1, u3 (0) = −1
h = 0,1
Para este ejercicio se realizó un programa en Python en
donde se definieron 4 funciones 3 de ellas para las ecuaciones
anteriores y la cuarta que realiza el método de Runge-Kutta
de 4° orden para sistemas de ecuaciones diferenciales, esto se
puede observar en las Figuras 1,2 y 3.

Figura 2. Programación en Python segunda parte del ejercicio del apartado


A.

Figura 1. Programación en Python primera parte del ejercicio del apartado


A.

Nótese que en la Figura 1, están definida las tres funciones


de manera independiente, esto se hace con el fin de facilitar el

MÉTODOS NUMÉRICOS Y PROGRAMACIÓN, UTP Figura 3. Programación en Python tercera parte del ejercicio del apartado A.
PARCIAL 3, DICIEMBRE DE 2021 2

En la Figura 3, en las lı́neas 72 y 73 se genera la petición por lo tanto, si el intervalo no llega a 1 s, lo único que hace
al usuario del intervalo y en la lı́nea 75 se ejecuta la cuarta el programa es no mostrar la aproximación en ese instante de
función, es decir, se procede a calcular las aproximaciones y tiempo. Esta programación se puede observar en las Figuras
para este ejercicio las aproximaciones a u1 , u2 y u3 en [0, 1] 5, 6 y 7 y los resultados en las Figuras 8 y 9.
con h = 0,1 se pueden detallar en la Figura 4.

Figura 4. Resultados de la programación en Python del ejercicio propuesto


en el apartado A.

Figura 5. Programación en Python primera parte del ejercicio del apartado


B. Encontrar las aproximaciones a u1 , u2 con h = 0,1 B.
Suponga que el péndulo oscilante descrito en el ejemplo
del principio de este capı́tulo es de 2pies de longitud y que
g = 32,17 pies
s2 . Con h = 0,1 s, compare el ángulo θ en el
siguiente problema de valor incial en t = 0, 1 y 2 s:

d2 θ g π
− θ = 0, θ(0) = , θ′ (0) = 0
dt2 L 6
En este caso se procede de forma similar, pero primero se
deja la E.D en un sistema 2 ∗ 2 de la siguiente manera:

u1 (t) = θ(t) y u2 (t) = θ′ (t). Entonces;

u′1 (t) = u2 (t)


g
u′2 (t) = u1 (t)
L
La programación de este problema es prácticamente la
misma del ı́tem anterior, solo que ya no se definen 4 funciones
sino 3, dos para las ecuaciones u′1 y u′2 y la otra para el pro-
cedimiento, es decir, la encargada de resolver el problema de
valor inicial (P.V.I). Para este caso también se pide al usuario
que ingrese el intervalo y se generan todas las aproximaciones
de ese intervalo. Además, al final de la programación en la
parte de los resultados se puede observar el problema de valor
incial en t = 0, 1 y 2 s.
En caso de que el usuario ingrese un intervalo menor de 0
Figura 6. Programación en Python segunda parte del ejercicio del apartado
a 2, no ocurrirá ningún problema en la programación ya que B.
hay un if para que se generen las aproximación en t = 0, 1,
PARCIAL 3, DICIEMBRE DE 2021 3

C. Calcular el nivel del agua después de 10 min con h = 20 s


Un lı́quido de baja viscosidad, como el agua, fluye en un
tanque cónico vertical invertido a través de un orificio circular
en el fondo a razón de

dx p x
= −0,6πr2 2g ,
dt A(x)
donde r es el radio del orificio, x es la altura del nivel
del lı́quido sobre el vértice del cono y, A(x) es el área de la
sección transversal del tanque x unidades arriba del orificio.
Suponga que r = 0,1 pies, g = 32,1 pies s2 y el tanque tiene
inicial de agua de 8 pies y un volumen inicial de 512 π3 pies3 .
Por lo tanto, A(x) = πx2 y en este caso la programación se
vuelve más sencilla ya que solo es una ecuación diferencial y
esto se puede observar en la Figura 10.

Figura 7. Programación en Python tercera parte del ejercicio del apartado B.

Figura 10. Programación en Python del ejercicio del apartado C.


Figura 8. Aproximaciones del intervalo dado ([0, 2]) de la Programación en
Python del ejercicio del apartado B.

Figura 9. Aproximaciones del intervalo dado ([0, 2]) y especificamente en


t = 0, 1 y 2 s de la Programación en Python del ejercicio del apartado B.
Figura 11. Aproximaciones de la programación en Python del ejercicio del
apartado C.
PARCIAL 3, DICIEMBRE DE 2021 4

En la Figura 11, se puede observar que en t = 0 s el nivel En la Figura 13, se puede observar que en t = 0 s el nivel
del agua es de 8 pies y en t = 600 s = 10 min el nivel del del agua es de 8 pies y en t = 1500 s = 25 min el nivel
agua es de 6,526747 pies, es decir, en 10 minutos el agua del agua es de 0,797562 pies, es decir, en 25 minutos el
bajó 1,473253 pies. agua bajó 7,202438 pies, no fue posible calcular un valor más
cercano a cero ya que como habı́a mencionado anteriormente
D. Determinar con 1 min de precisión cuándo estará vacı́o se trabajó con un h = 60 s, por lo tanto, después de
el tanque 0,797562 pies seguı́a una altura negativa y ya no se podrı́a
continuar el proceso, primero porque √ no tendrı́a sentido y
Nuevamente se hace el mismo proceso que se hizo en el ı́tem segundo porque en la ecuación hay una x y está ya quedarı́a
C, solo que en esta ocasión solo se pide al usuario la condición imaginaria. Por ende, se puede afirmar que en 25 min el nivel
inicial de x y el valor inicial del tiempo, en la programación del tanque está en 0,797562 pies y que entre los 25 min y
interna h = 60 s. Esto se puede observar en la Figura 12 los 26 min el tanque queda vacı́o completamente.

Figura 12. Programación en Python del ejercicio del apartado D.

Figura 13. Aproximaciones de la programación en Python del ejercicio del


apartado D.

También podría gustarte