import_py("CPython/k_fit", "k_fit") undlist = ("SATUN06","SATUN07","SATUN08","SATUN09","SATUN10","SATUN11","SATUN12","SATUN13", "SATUN15","SATUN16","SATUN17","SATUN18","SATUN19","SATUN20","SATUN21","SATUN22") arr_k_total = [] for und in undlist: arr_k_total.append(caget(und + "-UIND030:K_UND_SET")) i = 0 while abs(arr_k_total[i] - arr_k_total[i + 1]) > 0.05: i = i + 1 lin_start = i lin_fit, qua_fit, qua_start_fit = k_fit(arr_k_total[lin_start:]) lin = int(round(lin_fit / 1e-6)) qua = int(round(qua_fit / 1e-6)) lin_start = int(lin_start) lin_stop = len(arr_k_total) - 1 qua_start = int(qua_start_fit) qua_stop = len(arr_k_total) - 1 caput("SATUN:TAPER-LIN", lin) caput("SATUN:TAPER-QUA", qua) caput("SATUN:TAPER-LIN-START", lin_start) caput("SATUN:TAPER-LIN-STOP", lin_stop) caput("SATUN:TAPER-QUA-START", qua_start) caput("SATUN:TAPER-QUA-STOP", qua_stop) u, i, j = 0, 0, 0 for und in undlist: K_taper = lin_fit * i + qua_fit * j**2 k_total = arr_k_total[u] K_set = k_total - K_taper caputq(und + "-UIND030:K_TAPER_SET", K_taper) caputq(und + "-UIND030:K_SET", K_set) if lin_start <= u <= lin_stop: i = i + 1 if qua_start <= u <= qua_stop: j = j + 1 u = u + 1 set_return("Success")