import numpy as np import pandas as pd import json def generar_curva(offset): muVacio = 4 * np.pi * 1e-7 hPos = np.arange(1,5001,1) hNeg = np.arange(-5000,0,1) bPos = muVacio*hPos + offset bNeg = muVacio*hNeg - offset h = np.concatenate((hNeg, hPos)) b = np.concatenate((bNeg, bPos)) return h, b if __name__ == '__main__': with open('resultados_ensayos.json', 'r') as f: datos = json.load(f) Eobjetivo = np.array(datos['E']) Iobjetivo = np.array(datos['I']) fObjetivo = np.array(datos['f']) errorObjetivo = 0.01 # +- cuanto % puede haber de diferencia limSup = 1 + errorObjetivo limInf = errorObjetivo offset = 0 flag = False while flag: h,b = generar_curva(offset) datos = np.column_stack((h,b)) np.savetxt('curva.csv', datos, delimiter=',') ############################ ''' Logica de motorCAD-Pyhton, se sacaran unos vectores con corrientes, frecuencias y tensiones de operacion en distintos puntos con una curva dada. Esto se hara estableciendo como fijo la frecuencia y la corriente, si se puede solo con frecuencia mejor. Se compara la tension (y corriente si no se fija) con los valores objetivos. ''' Ecalc = [1, 1, 1, 1, 1] ############################ error = Ecalc / Eobjetivo