Está en la página 1de 16

Engineering equation solver (EES)

Por: Néstor Fonseca, Ph.D.


Editado por: Juan E. Tibaquirá, Ph.D.
Profesores Facultad de Ingeniería Mecánica
Universidad Tecnológica de Pereira

1. GENERALIDADES

Engineering Equation Solver (EES) permite proveer solución numérica a un set de


ecuaciones algebraicas lineales o no lineales, diferenciales e integrales, también para
optimización, análisis de incertidumbre, regresión lineal y no lineal y generar directamente
textos y ecuaciones para publicaciones. Dos diferencias con respecto a otros programas:
 Las ecuaciones y variables desconocidas pueden ser ingresadas en cualquier orden.
 Posee una base de información enorme de propiedades matemáticas y termofísicas
útiles en el ámbito de la ingeniería.

Por ejemplo, las tablas de vapor son implementadas de tal forma que cualquier propiedad
termodinámica puede ser obtenida a partir de otras dos propiedades. De forma similar para
la mayoría de refrigerantes, amoniaco, metano, dióxido de carbono y otros fluidos. Las
propiedades del aire son obtenidas a partir de las funciones sicrométricas y para los gases y
sólidos mas comunes a partir de los datos JANAF. Este es un programa externo
desarrollado por la Nasa para definir el calor específico (Cp), entalpía total (H) y entropía
total (S) de más de 400 sustancias en función de la temperatura.

De acuerdo a la experiencia a nivel de docencia, está demostrado que el estudiante debe


resolver problemas como parte de su formación y para esto debe revisar y extrapolar datos
de tablas de propiedades de los fluidos y resolver un sistema de ecuaciones que en algunas
ocasiones resulta complejo sabiendo que lo que se está evaluando no es algebra. Cuando el
estudiante se ha familiarizado con las tablas apropiadas, el uso repetitivo de las tablas no
contribuye a su formación. El tiempo y esfuerzo requerido por el estudiante para resolver el
problema y buscar los valores indicados en las tablas impide que se profundice en lo
realmente importante que es el análisis del problema, el diseño o mejora (optimización) de
nuevos sistemas o equipos. EES esta diseñado para enseñar.

Dentro del proceso de optimización de sistemas térmicos, EES es una herramienta


especialmente útil para los análisis en régimen permanente. Sin embargo permite encontrar
soluciones preliminares en sistemas donde el componente dinámico es importante. Un
análisis más en detalle para optimización puede partir de los resultados de la modelación de
sistema con EES y considerar el efecto dinámico, por ejemplo el efecto de la radicación
solar en un edificio o la variación de la energía interna de un sistema de un colector solar,
sistemas en los cuales su comportamiento depende del paso del tiempo.
Para este análisis en régimen “transiente” en el área de ciencias térmicas se utilizan
programas como TRNSYS desarrollado también por la University of Wisconsin (UW). En
el ejemplo del edificio mostrado a continuación EES fue usado como una fotografía
instantánea para detectar los problemas más significativos con respecto a las cargas
térmicas y el funcionamiento del equipo de ventilación y acondicionamiento de aire para
buscar soluciones rápidas a los problemas de los ocupantes. Luego se efectuó un segundo
modelo usando TRNSYS el cual incluyó el efecto de la radiación solar sobre muros y
ventanas para optimizar el sistema de control de los equipos, considerando la carga térmica
acumulada en los muros, muebles y equipos dentro del edificio para producir finalmente un
ahorro significativo de la demanda de energía.

2. CARACTERÍSTICAS DE EES

 Resuelve simultáneamente 6,000 ecuaciones no lineales (12,000 en versión


profesional)
 Las ecuaciones pueden ser ingresadas en cualquier orden en el editor.
 Velocidad computacional es extremadamente rápida.
 Contiene propiedades termodinámicas y funciones de transporte de alta precisión
para fluidos.
 Es posible graficar diagramas T-s, P-v, P-h, etc. de fluidos.
 Maneja tanto el Sistema Internacional (SI) de unidades como el Inglés.
 Realiza conversión de unidades y chequeo automático de consistencia de las
unidades utilizadas.
 Es posible ejecutar de estudios paramétricos mediante el uso de tablas
 Capacidad simple y multivariada de optimización de una variable.
 Usa funciones definidas, módulos y subprogramas y DLLs (dynamic link libraries).
 Construcciones lógicas como If-Then-Else y otras pueden ser usadas.
 Es posible realizar análisis de incertidumbre
 Ejecuta regresiones linales y no lineales, Interpola automáticamente datos tabulados
 Grafica en dos y tres dimensiones con actualización automática de los datos.
 Salida de archivos en LATEX o PDF.
Usa diagramas con ventanas de acceso de información de entradas y salidas.

La versión profesional permite el uso de animaciones de procesos. Además posee la


capacidad de resolver sistemas de hasta 12,000 variables y ecuaciones con capacidad
limitada de las tablas de datos (solo por la capacidad del equipo).

3. INSTALACIÓN

La licencia EES de la UTP es académica e indefinida, renovable cada año solo si es usada
en equipos de la UTP para fines de docencia.

Para instalarlo es necesario ejecutar SETUP. EES del CD de instalación. Si se está


copiando debe asegurarse que en la carpeta del programa está un archivo con extensión
*.dft.

4. INICIANDO EES

Ayudas: Con botón F1 o en el menú, se encuentran ejemplos e indicaciones para usar cada
una de la funciones de EES. Se puede usar el buscador para encontrar algún tema
específico, por ejemplo diagram, plots.

Barra de herramientas:

 File y Edit: operan de forma similar que otros programas bajo Windows para
guardar abrir imprimir etc. Librerías y textos creados por el usuario usando EES,
pueden ser agregados aquí para ser utilizados mediante funciones o subrutinas en
otros programas. Se tiene la opción de generar archivos en Latex para
publicaciones.
 Search: permite encontrar y modificar palabras en el programa.
 Options:

Variable info: Es utilizado para ver el estado de las variables y resolver problemas de
convergencia asignando valores posibles que ayuden a resolver el problema.

Funtion Info: Permite usar funciones matemáticas, propiedades de fluidos y sólidos como
variables dentro de las ecuaciones. Se pueden agregar como librerías externas nuevas bases
de datos producto de la investigación y/o experimentación.
Unit convertion Info: Permite conocer los factores de conversión mas usados a nivel de
ingeniería y aplicar la conversión dentro de programa.

Ejemplo:
TF=convertTEMP('C'; 'F';100)

(si se usa solo(,) como dice el manual error, usar (;) en algunos computadores)

Longitud=2*convert(ft;in)

Presión=29,9*convert(inHg;kPa)

Constants: Permite incorporar directamente al programa constante utilizadas comúnmente Ej g#


(gravedad) R# (constante de los gases, sigma# constante de radiación)

Units systems: Permite definir el sistema de unidades en que se ejecutará el programa y las
propiedades utilizadas, para que la solución sea consistente. Para fijar condiciones
permanentemente se utiliza store o para llamar alguna configuración utilizada antes Load.

Ej:
h=ENTHALPY(AirH2O;T=T1;P=P1;r=r1)
P1=101325
T1=20
r1=0,7
Valor correcto 46.05 kJ/kg
Stop criteria: Permite fijar los parámetros de iteración del programa cuando esta buscando
una solución. En algunos casos es necesario modificar estos valores para buscar la
convergencia del problema. Número de iteraciones, máximo residual relativo, máximo
cambio admisible de la variable, tiempo transcurrido. Cuando alguno de estos criterios se
cumple el cálculo termina.

Al ejecutar el programa este siempre muestra los resultados de la convergencia.

Default info: Permite cambiar simultáneamente propiedades a variables de acuerdo a la


primera letra con la que fue creada, por ejemplo si se quiere cambiar el tipo de unidad a
todas las variables que comiencen por T de °C a K, solo se modifica aquí y
automáticamente cambia todo dentro del programa. De igual manera para los límites y el
formato de la respuesta.

Preferences: Permite seleccionar las opciones del programa, en cuanto a sistema de


unidades, parámetros de iteración, criterios de integración, opciones del programa,
displays, ecuaciones, impresión, dibujos y números complejos.
Calculate: Permite chequear, ejecutar un set de ecuaciones, maximizar o minimizar, la
solución, realizar el análisis de incertidumbre. Revisar la consistencia de las unidades,
actualizar y/o eliminar condiciones de borde del problema o valores iniciales seleccionados
para ayudar la convergencia.

Tables: Contiene comandos para crear, editar tablas paramétricas y tablas tipo lookup que
pueden ser usadas dentro de funciones y subprogramas.
Plots: Provee comandos para crear gráficos a partir de tablas paramétricas ó tipo lookup y
la capacidad de generar las ecuaciones de aproximación a estas curvas.

Windows: Permite un acceso centralizado a la mayoría de las ventanas de EES


(ecuaciones, tablas, gráficos, solución etc..) y métodos de presentación de estas ventanas.

Ejemplo: ciclo Rankine

Equations: La función básica de EES es resolver sistemas de ecuaciones algebraicas no


lineales. Para demostrar esta capacidad se puede plantear el siguiente problema:

Ejemplo1:
x^2+y^3=77
sqrt(x/(y^2+1))=2
alpha+x=1,234
Ejemplo2: Cálculo de pérdidas por fricción de un fluido en un ducto

D, ε
Z
V

S L

"A) Perdidas por fricción calculadas a partir de la ecuación de Darcy -Weisbach "

Delta_P_f=f*(L/D)*(ro_r*V^2/2) "[Pa]"

"donde"
"L=longitud del tubo [m] "
"D= Diámetro interno [m] "
"V=velocidad promedio del fluido [m/s]"

"f= factor de fricción, utilizando la ecuación de Colebrooks se tiene: "

(1/(sqrt(f)))=1,14+2*log10(D/epsilon)-2*log10(1+(9,3/(Re*(epsilon/D)*sqrt(f))))

Re=D*V*ro_r/mu "Numero de Reynolds"


D=0,05
V=8,7
L=1

mu=VISCOSITY(fluid$ ;x=1;T=T_r_evap) "viscosidad cinematica kg/m-s"


ro_r=DENSITY(fluid$ ;x=1;T=T_r_evap) "Densidad del fluido refrigerante [kg/m3]"

epsilon=0,000001524 "[m]" "epsilon=rugosidad de la pared de los tubos cobre"

fluid$ = 'R22'
T_r_evap=-40 "temperatura de evaporación"

2 EJEMPLO DE APLICACIÓN

Un ejemplo típico donde puede ser de utilidad EES.

Modelo de Válvula de expansión ideal

En un ciclo de refrigeración, se tiene una válvula de expansión que opera con fluido R134a.
El área de entrada y salida del fluido es 0.011 m2
Determinar: la temperatura, flujo de masa y velocidad del fluido a la descargada de la
válvula.
Las condiciones a la entrada y salida de la válvula son las siguientes.

Desarrollo:

Balance de masa :

Donde:

Flujo de masa [kg/s]


Área transversal del ducto [ m2]
Velocidad del fluido [m/s]
Volumen especifico del fluido [m3/kg]

Se sabe que:

Balance de energía: Se asume que la válvula esta aislada, no hay partes móviles es decir el
efecto del trabajo y transferencia de calor son nulos.

Usualmente el efecto de la energía cinética no se considera por su escasa influencia en el


resultado y por la dificultad en resolver el sistema con este término. En EES este efecto
puede ser evaluado fácilmente.

Se recomienda seguir la siguiente metodología:

 Definición del problema.


 Definir el sistema de unidades.(kPa, kJ).
 Definir datos suministrados.
 Definir el sistema de ecuaciones: Balance de masa y de energía
 Definición de propiedades.
 Chequear unidades (kJ/kg por m2/s2)
 Definir variables de optimización
T_1=50 [C]: P_1=700 [kPa]: Vel_1=15 [m/s]: A_1=0,0110 [m^2]
P_2=300 [kPa]

m_dot_1=m_dot_2
m_dot_1=A_1*Vel_1/v_1
m_dot_2=A_2*Vel_2/v_2
A_2=A_1

m_dot_1*(h_1+Vel_1^2/2)=m_dot_2*(h_2+Vel_2^2/2)

v_1=volume(R134a;T=T_1;P=P_1): h_1=enthalpy(R134a;T=T_1;P=P_1)
v_2=volume(R134a;T=T_2;P=P_2): h_2=enthalpy(R134a;T=T_2;P=P_2)

*convert(m^2/s^2;kJ/kg)

- chequear unidades e incluir: se selecciona la variable y con el botón derecho se selecciona


variable info y se le asignan unidades. Otra forma es por variable info directamente. Si se
dejan sin nombrar detectara problemas de unidades. Cuando se tiene un sistema
consistente de ecuaciones y unidades se puede obviar los mensajes de error en las
unidades o desactivar en las preferencias, pero en la mayoría de los casos ayuda para
detectar errores en la formulación del problema.

Escribiendo en EES:

 Cuando se nombran las variables, el programa no hace diferencia si se utiliza


letras mayúsculas o minúsculas para nombrar la misma variable.
 Todo texto dentro de comillas o corchetes es considerado como comentario. Si
se pone dentro de comillas es mostrado dentro de las ecuaciones formateadas y
archivos en Latex, si se pone dentro de corchetes es eliminado de este tipo de
aplicaciones.
 Los espacios y líneas en blanco son ignorados por el programa.
 Las variables deben ser nombradas con letras al inicio y pueden ser
combinadas con caracteres diferentes a: ( ), *, /, +, -, { }, ^, “,.,:. Por ejemplo los
Arrays son nombrados con [ ] (eje: b[1]=30) o las variables intercambiables con
$ (eje: d$='2'). El máximo número de caracteres para nombrar una variable es
30.
 Varias ecuaciones pueden ser montadas sobre la misma línea, pero deben ser
separadas por : ó ; dependiendo de la configuración dada en la configuración
regional de Windows. El máximo numero de caracteres por línea es 255.
 Se puede usar para radicales o potencias el símbolo ^ ó **.
 No se requiere un orden específico de las ecuaciones. Solo el criterio de
ordenamiento del usuario y facilitar la revisión del programa, para detectar
problemas.
 La posición de datos conocidos e incógnitas no afecta la ejecución del
programa.
 Las unidades de variables constantes pueden ser ingresadas en paréntesis
cuadrados y aparecerán en todos los despliegues de resultados, tablas y
gráficos.

Luego de chequera las unidades y la consistencia del problema se ejecuta el programa. Al


regresar a la ventana de las ecuaciones los comentarios aparecen en color azul por defecto
pero puede ser modificado en preferencias.

Las propiedades termodinámicas pueden ser ingresadas fácilmente mediante el comando


“funtion info”. El primer argumento de la función es el nombre de la sustancia. Los demás
argumentos son una o dos variables independientes sin importar cual, designadas con las
siguientes letras T,P,H,S,U,V y X que corresponden a la temperatura, presión, entalpía
específica, entropía específica, energía interna específica, volumen específico y calidad.
Para el aire húmedo es necesario además incluir W, R, D y B que corresponden a humedad
específica, humedad relativa, temperatura de dew point y temperatura de bulbo húmedo.

Es usualmente buena idea definir los valores mínimos o máximos de las variables
calculadas, para facilitar la convergencia del problema. Esto se puede hacer una vez
compilado el programa y chequeado que no hay errores de sintaxis, mediante el menú
opciones y variable info. Por defecto las variables tienen un valor probable de 1.
Como se explico antes, aquí se puede ingresar las unidades de cada variable. También se
puede definir las variables clave de la solución, con lo cual permite ingresar comentarios
sobre la misma y ver la solución de estas variables en una ventana independiente.

En la columna de display se puede seleccionar el formato en que los resultados son


presentados
A : automáticamente selecciona el formato adecuado. Es la opción por defecto.
F: para fijar una cantidad determinada de dígitos, en la segunda columna del display.
E: para expresar el resultado en forma exponencial.

La tercera columna del display permite seleccionar la forma de presentar los


resultados.(subrayados, negrilla en recuadro, escondidos, normal).

Especialmente con ecuaciones no lineales es necesario definir algunas veces valores


probables de la solución para ayudar la convergencia. En este ejemplo no es necesario pero
cuando se requiera se debe tener en cuenta la física del problema para asignar estos valores.
Por ejemplo valores negativos de volumen específico no tendrían sentido en este caso,
luego se puede poner como límite inferior cero.
Al ejecutar el programa aparece un cuadro de dialogo donde se indica el tiempo
transcurrido para el cálculo, el máximo valor residual (diferencia entre igualdades) y
máxima variación de las variables respecto a la última iteración. En este ejemplo el tiempo
de ejecución del programa es muy pequeño por las características del problema y cantidad
de ecuaciones, sin embargo cuando el programa se acerca al límite de su capacidad (6000
ecuaciones) toma su tiempo en encontrar la solución y muestra en el mismo cuadro de
dialogo el número de bloque y número de iteraciones. Un bloque es set de ecuaciones que
EES genera y que puede ser resuelto independientemente.

EES utiliza por defecto como criterio de parada de la ejecución del programa 100
iteraciones, 60 segundos de duración, máximo residual de 10-6 y máxima variación entre
iteraciones de 10-9 que pueden ser modificadas en el menú options y preferencias. Si el
residual es mayor al seleccionado el sistema no es correctamente resuelto.
Una de las más útiles herramientas de EES es el análisis paramétrico por medio de tablas.
En este ejemplo resultaría interesante evaluar el efecto de la presión de salida sobre la
velocidad y temperatura de salida: Con esta herramienta se pueden generar gráficos que
permiten evaluar el efecto de esta variable.

El procedimiento para generar la tabla es mediante el menú tables, new parametric table.
Aquí se selecciona la variable que se requiere parametrizar y las variables resultado para
ver su efecto.

Simplemente se seleccionan en la columna izquierda y se pasan a la columna derecha


mediante el botón Add. En este cuadro se puede también definir el número de filas de la
tabla y se le puede asignar un nombre. Por defecto se considera 10 filas y las tablas son
numeradas en forma secuencial. Luego de ejecutar mediante OK, aparece la tabla. Es aquí
donde se asigna valores a la variable parametrica (P_2) de 100 a 550 para este ejemplo.

Esto de puede hacer manualmente o mediante alguno de los criterios disponibles que se
explicaran mas adelante. Luego se debe ejecutar el programa desde el menú “calculate”
usando solve table. Previamente se debe borrar o bloquear la variable parametrizada P_2
dentro del programa ya que fue definida dentro de la tabla, si no es borrada aparecerá un
mensaje de error que indica que hay esta definida dos veces P_2.
En solve table se puede seleccionar la tabla y el número de filas que se quiere entren en el
cálculo. Cuando se selecciona actualizar los valores probables el programa toma la última
fila para esta actualización y para la ventana de resultados. Al oprimir OK aparecerá la
tabla con los valores calculados en azul y los valores parametrizados en negro. (Esto puede
ser modificado en preferencias, se vera mas adelante)

La relación entre P_2 y las demás variables de salida es aparente, pero puede verse mas
claramente mediante un grafico. Se debe relacionar en el menú Plots, New plot window.
Se debe seleccionar el tipo de gráfico, para este ejemplo se selecciona el tipo X-Y (los
demás serán detallados mas adelante).
Aparece el siguiente cuadro de dialogo:

Aquí se selecciona que variable debe ir en cada eje, el formato de las cifras, tipo de grilla,
la tabla seleccionada el número de filas que se requiere aparezca en el gráfico y otras
funciones que serán detalladas mas adelante. Luego de seleccionar estos parámetros se
selecciona OK y se obtiene:

También podría gustarte