# Descripción del problema
# Tarea #05 Metodo Euler para Ecuaciones Diferenciales
# Elaborado por Nalleli iridian Avila Garcia (1941603)
# Física Computacional (2:00-3:00 pm)
print("Programa que aproxima la ED y'' = x - y, bajo las condiciones: y(0) = 1, h = 0.05, donde x va variando de 0 a 1.")
print("Encuentra los valores de y mediante el método de Euler mejorado.")
print("\n")

# Valores iniciales
x0 = 0.0
y0 = 1.0

# Valor final de x
xn = 1.0

# Tamaño del paso
h = 0.05

# Número de subintervalos
N = int((xn - x0) / h)

# Inicialización
x = x0
y = y0

# Resultado inicial
print("Valores de inicio:")
print(f"x = {x:.4f}, y = {y:.4f}")
print("--------------------------")

# Iteración
for i in range(1, N + 1):
    y_prime = x - y  # y'' = x - y
    y_temp = y + h * y_prime  # Estimación intermedia de y
    y_prime = x + h - y_temp  # Recalcula la pendiente en el punto intermedio
    y = y + h * (y_prime + y_prime) / 2.0  # Método de Euler mejorado para y
    x = x + h
    # Imprimir el valor actual de x e y con 4 decimales
    print(f"Iteración {i}")
    print(f"x = {x:.4f}, y = {y:.4f}")

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: