Calculadora Termodinámica — Documento técnico

Una calculadora que corrige al estudiante en vez de obedecerlo

Tres regiones del agua y del aire, cada una con las variables que de verdad la determinan. Qué pasa cuando alguien pide vapor sobrecalentado a una temperatura que no lo es, por qué en saturación la presión no es un dato de entrada, y por qué el modelo de lenguaje explica pero nunca calcula.

Propiedades · CoolProp Regiones · saturado · sobrecalentado · gas ideal Unidades · internacional e inglés Despliegue · función serverless + cliente web
01

Qué hace

Dado un estado, una temperatura y una presión, devuelve las propiedades termodinámicas: volumen específico, energía interna, entalpía y entropía. El cálculo lo hace CoolProp, la librería de propiedades de fluidos que se usa en ingeniería.

Pero la herramienta no se limita a consultar. La decisión que la separa de una tabla en línea es que cada región tiene sus propias variables independientes, y la calculadora lo hace cumplir en vez de aceptar cualquier par de números.

RegiónQué la determinaQué devuelve
Agua saturadaSolo la temperatura. La presión queda fijada por ellaLa tabla completa de saturación: propiedades del líquido, del vapor y las diferencias
Vapor sobrecalentadoTemperatura y presión, con la condición de estar realmente en esa regiónLas cuatro propiedades del estado
Gas ideal (aire)Temperatura y presión, sin restricción de regiónLas cuatro, desde el modelo analítico
El criterio pedagógico

Un estudiante que se equivoca de región no comete un error de tecleo: tiene un malentendido. Una calculadora que le devuelve un número igualmente le confirma el malentendido con un resultado de aspecto correcto. Aquí, en vez de eso, se le dice dónde está el límite.

02

Saturación

En la campana de saturación, líquido y vapor coexisten, y eso quita un grado de libertad: fijada la temperatura, la presión ya no se puede elegir.

La presión que escribe el usuario se ignora, a propósito

La calculadora obtiene la presión de saturación real a esa temperatura y la muestra. No es que descarte el dato del usuario por comodidad: es que en esa región la presión no es un dato independiente. Mostrar la que el estudiante escribió sería presentar como estado algo que no puede existir.

Lo que devuelveTabla de saturación completa
Líquido saturado Vf Uf Hf Sf Vapor saturado Vg Ug Hg Sg ───────────────────────────────────────── Diferencias Ufg = Ug − Uf Hfg = Hg − Hf (calor latente) Sfg = Sg − Sf
Las tres diferencias no se piden por separado a la librería: se calculan restando, que es exactamente como se obtienen de una tabla impresa. Hfg es el calor de vaporización, y verlo junto a los dos extremos de los que sale es lo que hace que el estudiante entienda de dónde viene.

El volumen específico se obtiene invirtiendo la densidad que devuelve la librería, porque las tablas termodinámicas trabajan con volumen específico y no con densidad. Es una conversión trivial, y hacerla dentro evita que el estudiante tenga que traducir entre lo que le da la herramienta y lo que dice su libro.

03

Vapor sobrecalentado

Aquí temperatura y presión sí son independientes — pero solo si el punto está realmente en esa región. Y ese es el error más común de quien está aprendiendo.

La validación
si P < P crítica: T_sat = temperatura de saturación a esa presión si T ≤ T_sat + 0,05 K → no es vapor sobrecalentado
El margen de 0,05 K evita rechazar un punto que está sobre la línea de saturación por redondeo. Y la comprobación solo aplica por debajo del punto crítico: por encima no hay línea de saturación que cruzar, así que exigirla sería inventar un límite que no existe.
Un error que enseña

El mensaje no dice «datos inválidos». Dice, con los números del caso concreto:

A 100,0 kPa el agua se satura a 99,6 °C. La temperatura ingresada (80,0 °C) no es vapor sobrecalentado: debe ser mayor a 99,6 °C.

Ahí hay tres cosas que el estudiante necesitaba: cuál es la frontera a su presión, de qué lado cayó, y qué tendría que cambiar. Un mensaje genérico le habría dicho que se equivocó sin decirle en qué, que es la forma más rápida de que abandone la herramienta y vuelva a la tabla del libro.

04

Gas ideal

Para el aire se usa el modelo de gas ideal con calores específicos constantes — la aproximación de aire frío estándar. No se consulta la librería: se aplican las expresiones analíticas.

El modeloAire frío estándar
v = R·T / P u = cv · T h = cp · T s = cp · ln(T/T₀) − R · ln(P/P₀)
Con R, cp y cv constantes del aire. Es deliberado que aquí no intervenga la librería: el estudiante está aprendiendo este modelo, y la gracia es ver que las cuatro propiedades salen de tres constantes y dos logaritmos.
Las referencias están declaradas, y eso no es un detalle

La energía interna y la entalpía se toman nulas a 0 K, y la entropía nula en el estado de referencia de temperatura y presión ambiente.

Ninguna de las tres tiene un cero absoluto físico: solo tienen sentido las diferencias. Un estudiante que compare la entalpía de esta herramienta con la de una tabla que usa otra referencia obtendrá números distintos y creerá que una de las dos está mal. Por eso las referencias se escriben, en vez de dejarlas implícitas en el código.

Nótese además que la entropía es la única que depende de la presión. Es la diferencia estructural entre ella y las otras dos en el modelo de gas ideal, y verla en la fórmula la explica mejor que un párrafo.

05

Unidades

Acepta y convierte entre sistema internacional e inglés. Es donde más se equivoca quien está aprendiendo, y donde el error es más difícil de ver.

La conversión, en un solo punto
energía y entropía J/kg → kJ/kg (siempre, antes de nada) kJ/kg → BTU/lb (si es sistema inglés) temperatura K → °F presión Pa → psi volumen m³/kg → ft³/lb
La librería trabaja en unidades base del SI; las tablas de ingeniería, en kilojulios. Esa primera división por mil se aplica siempre, y la conversión al sistema inglés después. Separar los dos pasos evita el error clásico de aplicar un factor combinado y equivocarse en un orden de magnitud.

La conversión se decide por tipo de magnitud, no por nombre de campo. Añadir una propiedad nueva no obliga a recordar su factor: basta con declarar de qué tipo es.

06

La IA explica, no calcula

Hay un segundo endpoint que explica los resultados en lenguaje natural. La decisión de diseño es que el modelo nunca produce un número.

Los dos caminos
calcular estado, T, P ──→ CoolProp ──→ propiedades explicación estado, T, P ──→ CoolProp ──→ propiedades │ modelo de lenguaje ↓ texto explicativo
El endpoint que explica también calcula primero. No le entrega los parámetros al modelo para que resuelva: resuelve con la librería y le pasa los resultados ya obtenidos.
Por qué no basta con confiar

Un modelo de lenguaje produce valores termodinámicos plausibles: unidades correctas, orden de magnitud correcto, la cantidad de cifras que uno esperaría. Un estudiante no puede detectar que están mal — precisamente porque todavía no sabe cuál es el valor bueno.

La instrucción del sistema se lo dice de forma explícita: que los resultados ya fueron obtenidos, que su tarea es explicarlos, y que no invente valores distintos a los proporcionados. Pero la garantía no es esa instrucción: es que el número correcto ya está calculado antes de que el modelo intervenga.

Lo que el modelo sí aporta es lo que hace bien: redactar de dónde sale cada propiedad, qué significa físicamente, y cómo se obtendría con tablas — incluida la interpolación cuando hace falta. Si esa explicación se equivoca, el número sigue siendo correcto y verificable.

Sin credenciales del proveedor la calculadora funciona igual: lo único ausente es la explicación. La consecuencia natural de haber puesto la frontera donde está.

07

Arquitectura

Un cliente web y una función de servidor, desplegados juntos.

Estructura
api/ función Python · CoolProp para saturado y sobrecalentado · modelo analítico para gas ideal · conversión de unidades por tipo de magnitud · endpoint de explicación frontend/ interfaz web config reescribe las rutas de API hacia la función
La lógica vive en Python porque ahí está la librería de propiedades. Llevarla al navegador habría obligado a reimplementar las ecuaciones de estado del agua, que es exactamente lo que la herramienta evita hacer.
EndpointQué hace
calcularPropiedades para un estado, temperatura y presión
explicacionCalcula lo mismo y devuelve la explicación de esos resultados

La clave del proveedor del modelo se configura como variable de entorno y no se versiona. El repositorio publica una plantilla con los nombres de las variables y sin sus valores.