import tables import numpy # from damaris import FitResult r = MeasurementResult("test") def result(): try: h5 = tables.open_file("test.h5", "w") except: print("h5 already opened") accu = Accumulation(error=False) for num,ts in enumerate(results): data["accu"] = accu data["data/ts %i"%num] = ts+0 ts.write_to_hdf(h5, "/", f"adc_{num}", f"adc_{num}") data["fft"] = (ts+0).fft() data["fft_autophase"] = (ts+0).fft().autophase() r[num] = ts.y[0][0] if num > 4: x = r.get_xdata() y = r.get_ydata() coeffs = numpy.polyfit(x, y, 2) x_line = numpy.linspace(x.min(), x.max(), 100) y_line = numpy.polyval(coeffs, x_line) fit = FitResult(x=x_line, y=y_line, title="Magnetization(tau) fit", source="test", params={"a": coeffs[0], "b": coeffs[1], "c": coeffs[2]}) data["test/fit"] = fit data["test"] = r accu+=ts print(accu) data["accu_fft"] = accu.fft().autophase() accu.write_to_hdf(h5, "/", "name", "title") try: h5.close() except: print("h5 already closed")