# Programa elaborado por Nalleli Iridian Avila García (1941603)
# Materia Física Computacional
# Tarea #09

import numpy as np
from scipy.integrate import quad

# Datos de temperatura y capacidad calorífica molar a presión constante
T1, T2, T3 = 300, 500, 2100
cp1, cp2, cp3 = 6.81495, 8.25375, 8.6055

# Función para calcular el polinomio de segundo grado de Lagrange
def lagrange_polynomial(T):
    term1 = ((T - T2) * (T - T3)) / ((T1 - T2) * (T1 - T3)) * cp1
    term2 = ((T - T1) * (T - T3)) / ((T2 - T1) * (T2 - T3)) * cp2
    term3 = ((T - T1) * (T - T2)) / ((T3 - T1) * (T3 - T2)) * cp3
    return term1 + term2 + term3

# Permitir al usuario ingresar un nuevo valor de temperatura (T)
T_usuario = float(input("Ingrese una nueva temperatura (T) para calcular la capacidad calorífica interpolada: "))

# Calcular la capacidad calorífica interpolada para la temperatura ingresada por el usuario
capacidad_calorifica_interpolada = lagrange_polynomial(T_usuario)
print(f"La capacidad calorífica interpolada a {T_usuario} K es: {capacidad_calorifica_interpolada:.5f}")

# Datos del proceso
T_inicial = 350 # Temperatura inicial en Kelvin
T_final = 800 # Temperatura final en Kelvin
n = 23 # Cantidad de sustancia en moles

# Calcular el cambio en la entalpía mediante la integral
delta_H, _ = quad(lagrange_polynomial, T_inicial, T_final)

# Calor absorbido es igual al cambio en la entalpía
Q = delta_H * n
print(f"El calor absorbido por los {n} moles de nitrógeno en el proceso isobarico cuasiestático es: {Q:.5f} J")

# Estimación máxima del valor absoluto de la tercera derivada
max_third_derivative = 1e-13

# Calcular el error absoluto
error_absoluto = n * (T_final - T_inicial) ** 4 * max_third_derivative / 24
print(f"Estimación del error absoluto: {error_absoluto:.5e} J")

Embed on website

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