Exemplo n.º 1
0
'''
Intérprete de texto
'''
import sys
import os
pyENL_path = os.path.realpath(__file__)[0:-10]
sys.path.append(pyENL_path)
from solver import solver
from utils import variables, random_lim, variables_string
from numpy import inf
from CoolProp.CoolProp import PropsSI as prop
from CoolProp.CoolProp import HAPropsSI as haprop
from time import time
import optparse
from pint import _DEFAULT_REGISTRY as pyENLu
pyENLu.load_definitions(pyENL_path + "units.txt")
sindim = ((1 * pyENLu.m) / (1 * pyENLu.m)).units
try:
    from .expimp import sols2odt, sols2tex
except:
    pass


class pyENL_variable:
    '''
    Clase creadora de objetos de tipo variable para las resoluciones de las
    ecuaciones no lineales.
    '''
    def __init__(self, nombre):
        '''
        Función creadora, dado un nombre de variable crea la instancia de la
Exemplo n.º 2
0
#!/usr/bin/env python3
'''Núcleo del solucionador de ecuaciones de pyENL'''

import scipy.optimize as opt
from numpy import *
from pyENL_fcns import *
ln = log
log = log10
import warnings
from pint import _DEFAULT_REGISTRY as u
from utils import variables , bloques
u.load_definitions("units.txt")
# from time import time as pyENL_time

# Definición de la función a resolver
# pyENL designa acá el vector de posibles soluciones que se está probando


def pyENL_sistema(pyENL, pyENL_variables, pyENL_eqns):
    '''
    Evalúa el sistema de ecuaciones que ingresa el usuario donde:
    pyENL: Valores numéricos para evaluar
    pyENL_variables: Objetos variables
    pyENL_eqns: Ecuaciones (lista de strings)
    '''
    cantidad_eqns = len(pyENL_variables)
    # Asignación de variables
    pyENL_eqns = list(pyENL_eqns)

    for cont, var in enumerate(pyENL_variables):
        print("----------------------")
Exemplo n.º 3
0
'''
Funciones propias de pyENL
'''

from fluids import atmosphere as atm
from fluids import compressible as comp
from fluids import control_valve as cv
from CoolProp.CoolProp import PropsSI as proppyENL
from CoolProp.CoolProp import HAPropsSI as haproppyENP
from pint import _DEFAULT_REGISTRY as pyENLu
try:
    pyENLu.load_definitions("units.txt")
except:
    pass
parse = pyENLu.parse_units
unit_pyENL = pyENLu.m

# TODO
# Funciones de CoolProp pasarlas por un wrapper de unidades!
# Diccionario Coolprop

dicc_coolprop = {
    'DMOLAR': parse('mole/m^3'),
    'Dmolar': parse('mole/m^3'),
    'D': parse('kg/m^3'),
    'DMASS': parse('kg/m^3'),
    'Dmass': 'kg/m^3',
    'HMOLAR': parse('J/mol'),
    'Hmolar': parse('J/mol'),
    'H': parse('J/kg'),
    'HMASS': parse('J/kg'),