def get_vna_trace(self): vna=self.vna vna.do_enable_averaging() vna.set_averaging_trigger(False) time.sleep(self.sweepTime*self.vnaavg*1.1) ## Data acquisition self.vnafreqs = vna.do_get_xaxis() data_re, data_im = vna.do_get_yaxes() data = data_re+1j*data_im if self.fitdata: try: self.fitparams = af.fit_complex_a_out(self.vnafreqs, data, f_0=self.f_0_guess, kc=self.kc_guess, ki=self.ki_guess, a_in=self.a_in_guess, T=self.T_guess) if self.plotsweep: self.fitparamsVec.append(self.fitparams) except SyntaxError: self.fitparams = [] return data
def get_vna_trace(self): vna = self.vna vna.do_enable_averaging() vna.set_averaging_trigger(False) time.sleep(self.sweepTime * self.vnaavg * 1.1) ## Data acquisition self.vnafreqs = vna.do_get_xaxis() data_re, data_im = vna.do_get_yaxes() data = data_re + 1j * data_im if self.fitdata: try: self.fitparams = af.fit_complex_a_out(self.vnafreqs, data, f_0=self.f_0_guess, kc=self.kc_guess, ki=self.ki_guess, a_in=self.a_in_guess, T=self.T_guess) if self.plotsweep: self.fitparamsVec.append(self.fitparams) except SyntaxError: self.fitparams = [] return data
# data_complex = data_re + 1j * data_im # freqs_fit = np.zeros(genpoints) kc_fit = np.zeros(genpoints) ki_fit = np.zeros(genpoints) f_0_guess = 13052250602 kc_guess = 18736539 ki_guess = 5465667 for n in range(genpoints): data_n = data_complex[n] popt = af.fit_complex_a_out(vna_freqs, data_n, f_0=None, kc=kc_guess, ki=ki_guess) freqs_fit[n] = popt[0] kc_fit[n] = popt[1] ki_fit[n] = popt[2] if debug_fits: data_n_fit = af.complex_a_out(vna_freqs, *popt) fig, ax = plt.subplots(2, 2) ax[0, 0].plot(vna_freqs, np.abs(data_n_fit)) ax[0, 0].plot(vna_freqs, np.abs(data_n)) ax[1, 0].plot(vna_freqs, np.angle(data_n_fit)) ax[1, 0].plot(vna_freqs, np.angle(data_n)) ax[1, 1].plot(np.real(data_n_fit), np.imag(data_n_fit)) ax[1, 1].plot(np.real(data_n_fit), np.imag(data_n))
data_im = data_im.reshape(genpoints,VNApts) # # data_complex = data_re + 1j*data_im # freqs_fit = np.zeros(genpoints) kc_fit = np.zeros(genpoints) ki_fit = np.zeros(genpoints) f_0_guess = 13052250602 kc_guess = 18736539 ki_guess = 5465667 for n in range(genpoints): data_n = data_complex[n] popt = af.fit_complex_a_out(vna_freqs, data_n, f_0=None, kc=kc_guess, ki=ki_guess) freqs_fit[n]=popt[0] kc_fit[n]=popt[1] ki_fit[n]=popt[2] if debug_fits: data_n_fit = af.complex_a_out(vna_freqs, *popt) fig, ax = plt.subplots(2,2) ax[0,0].plot(vna_freqs, np.abs(data_n_fit)) ax[0,0].plot(vna_freqs, np.abs(data_n)) ax[1,0].plot(vna_freqs, np.angle(data_n_fit)) ax[1,0].plot(vna_freqs, np.angle(data_n)) ax[1,1].plot(np.real(data_n_fit),np.imag(data_n_fit)) ax[1,1].plot(np.real(data_n_fit),np.imag(data_n)) fig, ax =plt.subplots(3,1) ax[0].plot(genfreqs*1e-9, freqs_fit*1e-9)