def optionTwo(cont): print("\nCargando información de los archivos ....") info = controller.loadData(cont, connectionsfile, countriesfile, landingpfile) numedges = controller.totalConnections(cont) numvertex = controller.totalVertexs(cont) numcountries = controller.totalCountries(cont) lp = info[0] c = info[1] print("\nInformación del primer landing point cargado:") print("Numero de identificación: " + lp['landing_point_id']) print("Identificador: " + lp['id']) print("Nombre: " + lp['name']) print("Latitud: " + str(lp['latitude'])) print("Longitud: " + str(lp['longitude'])) print("\nInformación del ultimo pais cargado:") print("Pais: " + c['CountryName']) print("Población: " + c['Population']) print("Numero de usuarios: " + c['Internet users']) print('\nNumero de landing points: ' + str(numvertex)) print('Numero de cables: ' + str(numedges)) print('Numero de paises: ' + str(numcountries))
def optionTwo(cont): # toma de tiempo start_time = controller.getTime() tracemalloc.start() start_memory = controller.getMemory() controller.loadData(cont, landingFile, connectionsFile, countriesFile) stop_memory = controller.getMemory() tracemalloc.stop() delta_memory = round(controller.deltaMemory(start_memory, stop_memory), 2) numedges = controller.totalConnections(cont) numvertex = controller.totalPoints(cont) numCountries = controller.totalCountries(cont) firstVertex = controller.firstVertex(cont) lastCountry = controller.firstCountry(cont) print("=" * 5 + " DATOS CARGADOS " + "=" * 5) print('Numero de vertices: ' + str(numvertex)) print('Numero de arcos: ' + str(numedges)) print('Numero de paises:' + str(numCountries)) print('Primer landing point cargado: ' + str(firstVertex['landing_point_id'])) print('Nombre landing point: ' + firstVertex['name']) print('Latitud: ' + str(firstVertex['latitude'])) print('Longitud: ' + str(firstVertex['longitude'])) print('Ultimo pais cargado:', lastCountry['CountryName']) print('Población de ' + lastCountry['CountryName'] + ": " + lastCountry['Population']) print('Usuarios de internet de ' + lastCountry['CountryName'] + ": " + str(lastCountry['Internet users'])) print('El limite de recursion actual: ' + str(sys.getrecursionlimit())) # toma de tiempo stop_time = controller.getTime() delta_time = round(stop_time - start_time, 2) # toma de tiempo print(f"Uso de memoria: {delta_memory} kB") print(f"Tiempo de ejecucion: {delta_time} ms") print('')
delta_time = -1.0 delta_memory = -1.0 tracemalloc.start() start_time = controller.getTime() start_memory = controller.getMemory() controller.loadConnections(cont, file_connections) controller.loadCountries(cont, file_countries) controller.loadLandingPoints(cont, file_landing_points) last_country = controller.last_country_info(cont) total_landingPoints = controller.totalLandingPoints(cont) total_ConnectionsLP = controller.totalConnectionsLP(cont) first_landing_point = controller.first_landingP(cont) total_countries = controller.totalCountries(cont) stop_memory = controller.getMemory() stop_time = controller.getTime() tracemalloc.stop() delta_time = stop_time - start_time delta_memory = controller.deltaMemory(start_memory, stop_memory) print('Tiempo[ms]: ', f"{delta_time:.3f}", "-", "Memoria [kB]: ", f"{delta_memory:.3f}") print('-------------------------------') print('total de Landing Points: ' + str(total_landingPoints)) print('-------------------------------') print('total de conexiones entre Landing Points: ' + str(total_ConnectionsLP))
Menu principal """ while True: printMenu() inputs = input('Seleccione una opción para continuar\n') if int(inputs[0]) == 1: print("\nCreando el catálogo de datos ....") datos = controller.inicio() elif int(inputs[0]) == 2: print("\nCargando información de los archivos ....") controller.carga(datos, connections, countries, landing) nc = controller.totalcables(datos) nlp = controller.totalpoints(datos) np = controller.totalCountries(datos) print('Numero de landing points: ' + str(nlp)) print('Numero de cables: ' + str(nc)) print('Numero de paises: ' + str(np)) elif int(inputs[0]) == 3: landinga = input("ingrese un landing point: ") landingb = input("ingrese un landing point: ") x = controller.req1(datos, landinga, landingb) print(x) elif int(inputs[0]) == 4: d = controller.req2(datos) for i in d: print('el vertice {0} tiene {1} cables coonectados'.format( i, d[i]))
catalog = None """ Menu principal """ while True: printMenu() inputs = input('Seleccione una opción para continuar\n') if int(inputs[0]) == 1: print("Cargando información de los archivos ....") catalog = controller.startCatalog() controller.startData(catalog) numedges = controller.totalConnections(catalog) numvertex = controller.totalLPs(catalog) numcount = controller.totalCountries(catalog) firstlp = controller.getFirstLP(catalog) print('Numero de landing points: ' + str(numvertex)) print('Numero de conexiones: ' + str(numedges)) print('El primer landing point y su info es: ' + str(firstlp[0]) + ', ' + str(firstlp[1]) + ', ' + str(firstlp[2]) + ', ' + str(firstlp[3])) print("\n") elif int(inputs[0]) == 2: v1 = input("Escriba el nombre del primer landing point: ") v2 = input("Escriba el nombre del segundo landing point: ") print("Cargando Requerimiento 1 .... ") answer = controller.ClusterCheck(catalog, v1, v2) print(" Numero de componentes conectados: " + str(answer[0])) print("Los vértices están conectados? " + str(answer[1]))
def thread_cycle(): while True: printMenu() inputs = input('Seleccione una opción para continuar\n') if int(inputs[0]) == 1: print("\nInicializando....") cont = controller.init() elif int(inputs[0]) == 2: print("Cargando información de los archivos ....") answer = controller.loadConnections(cont, landingPointsFile, connectionsFile, countriesFile) totalEdges = controller.totalConnections(cont) totalVertex = controller.totalStops(cont) totalCountries = controller.totalCountries(cont) print('\n') print('Cantidad total de arcos: ' + str(totalEdges)) print('Cantidad total de vertices: ' + str(totalVertex)) print('Cantidad total de países: ' + str(totalCountries)) print('El límite de recursión actual: ' + str(sys.getrecursionlimit())) firstLandingPoint = answer[1] print('') print('Primer landing point cargado: ') print('Identificador: ' + firstLandingPoint['id']) print('Nombre: ' + firstLandingPoint['name']) print('Latitud: ' + firstLandingPoint['latitude']) print('Longitud: ' + firstLandingPoint['longitude']) lastCountry = answer[2] print('') print('Último país cargado: ') print('Nombre: ' + lastCountry['CountryName']) print('Población: ' + lastCountry['Population']) print('Usuarios de internet: ' + lastCountry['Internet users']) print('') print("Tiempo [ms]: ", f"{answer[3]:.3f}", " || ", "Memoria [kB]: ", f"{answer[4]:.3f}") elif int(inputs[0]) == 3: landingPoint1 = input("Ingrese el nombre del landing point 1: ") landingPoint2 = input("Ingrese el nombre del landing point 2: ") answer = controller.findClusters(cont, landingPoint1, landingPoint2) clusters = answer[1] sameCluster = answer[2] print('') print("Número total de clústeres: " + str(answer[1])) if sameCluster: print("¿Están en el mismo cluster?: Si") else: print("¿Están en el mismo cluster?: No") print('') print("Tiempo [ms]: ", f"{answer[3]:.3f}", " || ", "Memoria [kB]: ", f"{answer[4]:.3f}") elif int(inputs[0]) == 4: answer = controller.findInterLandingPoints(cont) totalCables = answer[0] landingPoints = answer[1] print('') print("Lista de landing points: ") print(landingPoints) print('') print('Total de cables conectados: ' + str(totalCables)) print('') print("Tiempo [ms]: ", f"{answer[2]:.3f}", " || ", "Memoria [kB]: ", f"{answer[3]:.3f}") elif int(inputs[0]) == 5: pais1 = input("Ingrese el nombre del país 1: ") pais2 = input("Ingrese el nombre del país 2: ") answer = controller.findShortestPath(cont, pais1, pais2) connections = answer[1] distance = answer[2] print('') print("Ruta: ") for conn in connections: print('Origen: ' + conn['origin'] + ', Destino: ' + conn['destination'] + ', distancia: ' + str(conn['distance'])) print('') print('Distancia total de la ruta: ' + str(distance)) print('') print("Tiempo [ms]: ", f"{answer[3]:.3f}", " || ", "Memoria [kB]: ", f"{answer[4]:.3f}") elif int(inputs[0]) == 6: answer = controller.criticalInfrastructure(cont) numNodes = answer[1] totalCost = answer[2] longestBranch = answer[3] print('') print("Número de nodos conectados a la red de expansión mínima: " + str(numNodes)) print('') print('Costo total: ' + str(totalCost)) print('') print('Rama más larga: ' + str(longestBranch)) print('') print("Tiempo [ms]: ", f"{answer[4]:.3f}", " || ", "Memoria [kB]: ", f"{answer[5]:.3f}") elif int(inputs[0]) == 7: landingPoint = input("Ingrese el nombre del landing point: ") answer = controller.failImpact(cont, landingPoint) totalCountries = answer[1] countries = answer[2] print('') print('Número de países afectados: ' + str(totalCountries)) print('') print("Lista de países afectados: ") for country in countries: print(country['country'] + ' - ' + str(country['distance']) + ' km') print('') print("Tiempo [ms]: ", f"{answer[3]:.3f}", " || ", "Memoria [kB]: ", f"{answer[4]:.3f}") else: sys.exit(0) sys.exit(0)