Esempio n. 1
0
def lectura_Variables(tipoFrontera):
    opcionVariables = int(
        input('''
		Escriba el numero de la opcion que prefiera:

	    1 - Leer las variables desde un archivo HDF5
	    2 - Ingresar las variables desde la terminal
	    3 - Usar variables predefinidas
	    >> '''))

    if opcionVariables == 1:
        paramsArchivo = hdf5.leerParametros('Datos', 'tolerancia', 'a', 'b',
                                            'k', 'Tmax', 'N', 'boundA',
                                            'boundB')
        tolerancia = paramsArchivo['tolerancia']
        a = paramsArchivo['a']
        b = paramsArchivo['b']
        Tmax = paramsArchivo['Tmax']
        N = paramsArchivo['N']
        boundA = paramsArchivo['boundA']
        boundB = paramsArchivo['boundB']
    #Caso variables desde la terminal:
    elif opcionVariables == 2:
        tolerancia = float(input('Tolerancia del error > '))
        a = float(input('Inicio de la barra > '))
        b = float(input('Final de la barra > '))
        N = int(input('Número de nodos > '))
        Tmax = float(input('Tiempo total de simulación > '))
        boundA = float(input('Condición Dirichlet en (a) > '))
        boundB = float(input('Condición ' + tipoFrontera + ' en (b)> '))
    #Caso variables predefinidas:
    else:
        tolerancia = 1e-6  #Tolerancia del error
        a = 0.0  #Inicio de la barra
        b = 1.0  #fin de la barra
        N = 50  #Numero de nodos
        Tmax = 1.0  #Tiempo total
        boundA = -1  #Condicion de frontera en el extremo 1
        boundB = 1  #Condicion de frontera en el extremo 2

    return tolerancia, a, b, N, Tmax, boundA, boundB
        in_file_name = sys.argv[1]; out_file_name = sys.argv[2]
    except:
        mensaje = """ Error: La ejecucion de este programa requiere de 2 argumentos.
        Ejecucion correcta: python {} entrada salida
        donde "entrada" es el nombre de un archivo que contiene los
        datos del problema :  este se puede generar con el programa hdf5.py.
        El nombre "salida" se usa para almacenar la solucion del problema.

        Por ejemplo: python {} ENTRADA SALIDA""".format(__file__,__file__)

        print(mensaje)
        sys.exit(1)


    #Se leen los parámetros de interés del archivo generado por el programa hdf51D.py desde terminal
    par =hdf5.leerParametros(in_file_name,'a','b','rho', 'N', 'k', 'vel', 'Ta', 'Tb' ) 
    print('Los parámetros empleados son:',par)

    a = par['a']
    b = par['b']
    L = b-a
    N = par['N']
    h= L/(N+1)
    print('El valor de h es:', h)
    k = par['k']
    rho = par['rho']
    vel = par['vel']
    Ta = par['Ta']
    Tb = par['Tb']

    #Se manda a llamar la función para contruir a matriz A
Esempio n. 3
0
    try:
        in_file_name = sys.argv[1]; out_file_name = sys.argv[2]
    except:
        mensaje = """ Error: La ejecucion de este programa requiere de 2 argumentos.
        Ejecucion correcta: python {} entrada salida
        donde "entrada" es el nombre de un archivo que contiene los
        datos del problema :  este se puede generar con el programa hdf5.py.
        El nombre "salida" se usa para almacenar la solucion del problema.

        Por ejemplo: python {} ENTRADA SALIDA""".format(__file__,__file__)

        print(mensaje)
        sys.exit(1)


    par =hdf5.leerParametros(in_file_name,'a','b', 'N', 'Ta', 'Tb', 'k', 'q' ) 
    print('Los parámetros empleados son:',par)

    a = par['a']
    b = par['b']
    N = par['N']
    Ta = par['Ta']
    Tb = par['Tb']
    k = par['k']
    q = par['q']

    L = b - a
    h = L / (N + 1)
    r = -k / (h**2)
    datos = np.array(10)
    datos = [a,b,N,L,h,Ta,Tb,k,q,r]