if 1: for i in range(2): mcc.analog_output(0, 4.5 * (i & 1)) time.sleep(0.5) for i in range(10): print mcc.analog_input(0, gain=mcc.GAIN2_DIFF) if 1: mcc.setup_analog_scan(sweeps=1000, channels=(0, 1), gains=mcc.GAIN2_DIFF, rate=500) time.sleep(2) print Numeric.array_str(mcc.get_burst_scan()[:100, 0], precision=3, suppress_small=1, max_line_width=10000) if 1: mcc.setup_analog_scan(sweeps=-1, channels=(0, ), gains=mcc.GAIN2_DIFF, rate=1000) print mcc.actRate try: actcount = 0 print time.asctime() start_time = time.time() countlimit = 200 while actcount < countlimit:
dx=x-xmu dx2=dx*dx expfact=Numeric.exp(xsigi*dx2) z=a*expfact*dx dd = Numeric.zeros((n, 4), self.atype) dd[:,0]=1.0 dd[:,1]=expfact*dx dd[:,2]=(-2.0*xsigi*dx*dx - 1)*a*expfact dd[:,3]=(-2.0*xsigi/xsigma)*(dx2*z) return dd if __name__=="__main__": x=gauss_deriv_fit() z0, a, xmu, xsigma = 1., 15., 73., 10. x.set_initial_params([z0+5, a-10, xmu+5, xsigma-5]) xlist=Numeric.array(range(100),Numeric.Float) ylist=x.compute_funcvals(params=[z0, a, xmu, xsigma], xvals=xlist) x.add_points(xlist, ylist) print "\n\n***Start nonlinear test fit***" for i in range(10): x.lm_fit_step() print Numeric.array_str(x.funcparams, precision=5), sqrt(x.reduced_chi2)
id_dict['last_used_time']=time.time() mcc.write_user_memory(data=cPickle.dumps(id_dict) ) if 1: for i in range(2): mcc.analog_output(0, 4.5*(i & 1)) time.sleep(0.5) for i in range(10): print mcc.analog_input(0, gain=mcc.GAIN2_DIFF) if 1: mcc.setup_analog_scan(sweeps=1000, channels=(0,1), gains=mcc.GAIN2_DIFF, rate=500) time.sleep(2) print Numeric.array_str(mcc.get_burst_scan()[:100,0], precision=3, suppress_small=1, max_line_width=10000) if 1: mcc.setup_analog_scan(sweeps=-1, channels=(0,), gains=mcc.GAIN2_DIFF, rate=1000) print mcc.actRate try: actcount=0 print time.asctime() start_time=time.time() countlimit=200 while actcount<countlimit: actcount, res=mcc.get_continuous_scan_packet() if res: #print Numeric.array_str(res[:,0], precision=3, suppress_small=1, max_line_width=10000) if not actcount%100: print actcount
xsigi = -1.0 / (2.0 * xsigma ** 2) dx = x - xmu dx2 = dx * dx expfact = Numeric.exp(xsigi * dx2) z = a * expfact * dx dd = Numeric.zeros((n, 4), self.atype) dd[:, 0] = 1.0 dd[:, 1] = expfact * dx dd[:, 2] = (-2.0 * xsigi * dx * dx - 1) * a * expfact dd[:, 3] = (-2.0 * xsigi / xsigma) * (dx2 * z) return dd if __name__ == "__main__": x = gauss_deriv_fit() z0, a, xmu, xsigma = 1., 15., 73., 10. x.set_initial_params([z0 + 5, a - 10, xmu + 5, xsigma - 5]) xlist = Numeric.array(range(100), Numeric.Float) ylist = x.compute_funcvals(params=[z0, a, xmu, xsigma], xvals=xlist) x.add_points(xlist, ylist) print("\n\n***Start nonlinear test fit***") for i in range(10): x.lm_fit_step() print(Numeric.array_str(x.funcparams, precision=5), sqrt(x.reduced_chi2))