def setup_class(cls): # gets called at initialization of test class cls.AWG = v8.VirtualAWG8('DummyAWG8') cls.fluxlutman = flm.AWG8_Flux_LutMan('fluxlutman_main') cls.k0 = lko.LinDistortionKernel('k0') cls.fluxlutman_partner = flm.AWG8_Flux_LutMan('fluxlutman_partner')
def setUpClass(self): self.AWG = v8.VirtualAWG8('DummyAWG8') self.fluxlutman = flm.AWG8_Flux_LutMan('Flux_LutMan') self.k0 = ko.DistortionKernel('k0') self.fluxlutman.instr_distortion_kernel(self.k0.name) self.fluxlutman.AWG(self.AWG.name) self.fluxlutman.sampling_rate(2.4e9) self.fluxlutman.cz_theta_f(80) self.fluxlutman.cz_freq_01_max(6.8e9) self.fluxlutman.cz_J2(4.1e6) # self.fluxlutman.cz_E_c(250e6) self.fluxlutman.cz_freq_interaction(5.1e9) self.fluxlutman.cfg_max_wf_length(5e-6) poly_coeffs = np.array( [1.95027142e+09, -3.22560292e+08, 5.25834946e+07]) self.fluxlutman.polycoeffs_freq_conv(poly_coeffs)
def setUpClass(self): self.AWG = v8.VirtualAWG8('DummyAWG8') self.AWG8_MW_LutMan = mwl.AWG8_MW_LutMan('MW_LutMan') self.AWG8_MW_LutMan.AWG(self.AWG.name) self.AWG8_MW_LutMan.channel_I(1) self.AWG8_MW_LutMan.channel_Q(2) self.AWG8_MW_LutMan.mw_modulation(100e6) self.AWG8_MW_LutMan.sampling_rate(2.4e9) self.AWG8_VSM_MW_LutMan = mwl.AWG8_VSM_MW_LutMan('MW_LutMan_VSM') self.AWG8_VSM_MW_LutMan.AWG(self.AWG.name) self.AWG8_VSM_MW_LutMan.channel_GI(1) self.AWG8_VSM_MW_LutMan.channel_GQ(2) self.AWG8_VSM_MW_LutMan.channel_DI(3) self.AWG8_VSM_MW_LutMan.channel_DQ(4) self.AWG8_VSM_MW_LutMan.mw_modulation(100e6) self.AWG8_VSM_MW_LutMan.sampling_rate(2.4e9) self.CBox_MW_LutMan = mwl.CBox_MW_LutMan('CBox_MW_LutMan') self.QWG_MW_LutMan = mwl.QWG_MW_LutMan('QWG_MW_LutMan')
def setUpClass(self): self.station = station.Station() self.CCL_qubit = ct.Mock_CCLight_Transmon('CCL_qubit') self.fluxcurrent = flx.virtual_SPI_S4g_FluxCurrent('fluxcurrent', channel_map={ 'FBL_Q1': (0, 0), 'FBL_Q2': (0, 1), }) self.fluxcurrent.FBL_Q1(0) self.fluxcurrent.FBL_Q2(0) self.station.add_component(self.fluxcurrent) self.MW1 = vmw.VirtualMWsource('MW1') self.MW2 = vmw.VirtualMWsource('MW2') self.MW3 = vmw.VirtualMWsource('MW3') self.SH = sh.virtual_SignalHound_USB_SA124B('SH') self.UHFQC = dummy_UHFQC('UHFQC') self.CCL = dummy_CCL('CCL') # self.VSM = Dummy_Duplexer('VSM') self.VSM = Dummy_QuTechVSMModule('VSM') self.MC = measurement_control.MeasurementControl( 'MC', live_plot_enabled=False, verbose=False) self.MC.station = self.station self.station.add_component(self.MC) # Required to set it to the testing datadir test_datadir = os.path.join(pq.__path__[0], 'tests', 'test_output') self.MC.datadir(test_datadir) a_tools.datadir = self.MC.datadir() self.AWG = v8.VirtualAWG8('DummyAWG8') self.AWG8_VSM_MW_LutMan = mwl.AWG8_VSM_MW_LutMan('MW_LutMan_VSM') self.AWG8_VSM_MW_LutMan.AWG(self.AWG.name) self.AWG8_VSM_MW_LutMan.channel_GI(1) self.AWG8_VSM_MW_LutMan.channel_GQ(2) self.AWG8_VSM_MW_LutMan.channel_DI(3) self.AWG8_VSM_MW_LutMan.channel_DQ(4) self.AWG8_VSM_MW_LutMan.mw_modulation(100e6) self.AWG8_VSM_MW_LutMan.sampling_rate(2.4e9) self.ro_lutman = UHFQC_RO_LutMan('RO_lutman', num_res=5, feedline_number=0) self.ro_lutman.AWG(self.UHFQC.name) # Assign instruments self.CCL_qubit.instr_LutMan_MW(self.AWG8_VSM_MW_LutMan.name) self.CCL_qubit.instr_LO_ro(self.MW1.name) self.CCL_qubit.instr_LO_mw(self.MW2.name) self.CCL_qubit.instr_spec_source(self.MW3.name) self.CCL_qubit.instr_acquisition(self.UHFQC.name) self.CCL_qubit.instr_VSM(self.VSM.name) self.CCL_qubit.instr_CC(self.CCL.name) self.CCL_qubit.instr_LutMan_RO(self.ro_lutman.name) self.CCL_qubit.instr_MC(self.MC.name) self.CCL_qubit.instr_FluxCtrl(self.fluxcurrent.name) self.CCL_qubit.instr_SH(self.SH.name) config_fn = os.path.join(pq.__path__[0], 'tests', 'openql', 'test_cfg_CCL.json') self.CCL_qubit.cfg_openql_platform_fn(config_fn) # Setting some "random" initial parameters self.CCL_qubit.ro_freq(5.43e9) self.CCL_qubit.ro_freq_mod(200e6) self.CCL_qubit.freq_qubit(4.56e9) self.CCL_qubit.freq_max(4.62e9) self.CCL_qubit.mw_freq_mod(-100e6) self.CCL_qubit.mw_awg_ch(1) self.CCL_qubit.cfg_qubit_nr(0) self.CCL_qubit.mw_vsm_delay(15) self.CCL_qubit.mw_mixer_offs_GI(.1) self.CCL_qubit.mw_mixer_offs_GQ(.2) self.CCL_qubit.mw_mixer_offs_DI(.3) self.CCL_qubit.mw_mixer_offs_DQ(.4) # self.CCL_qubit.ro_acq_averages(32768) self.device = do.DeviceCCL(name='device') self.CCL_qubit.instr_device(self.device.name)
def setUpClass(self): """ This sets up a mock setup using a CCL to control multiple qubits """ self.station = station.Station() self.CCL_qubit = ct.CCLight_Transmon('CCL_qubit') self.MW1 = vmw.VirtualMWsource('MW1') self.MW2 = vmw.VirtualMWsource('MW2') self.MW3 = vmw.VirtualMWsource('MW3') self.SH = sh.virtual_SignalHound_USB_SA124B('SH') self.UHFQC = dummy_UHFQC('UHFQC') self.CCL = dummy_CCL('CCL') self.QCC = dummy_QCC('QCC') self.VSM = Dummy_Duplexer('VSM') self.MC = measurement_control.MeasurementControl( 'MC', live_plot_enabled=False, verbose=False) self.MC.station = self.station self.station.add_component(self.MC) # Required to set it to the testing datadir test_datadir = os.path.join(pq.__path__[0], 'tests', 'test_output') self.MC.datadir(test_datadir) a_tools.datadir = self.MC.datadir() self.AWG_mw_0 = v8.VirtualAWG8('AWG_mw_0') self.AWG_mw_1 = v8.VirtualAWG8('AWG_mw_1') self.AWG_flux_0 = v8.VirtualAWG8('AWG_flux_0') self.AWG8_VSM_MW_LutMan = mwl.AWG8_VSM_MW_LutMan('MW_LutMan_VSM') self.AWG8_VSM_MW_LutMan.AWG(self.AWG_mw_0.name) self.AWG8_VSM_MW_LutMan.channel_GI(1) self.AWG8_VSM_MW_LutMan.channel_GQ(2) self.AWG8_VSM_MW_LutMan.channel_DI(3) self.AWG8_VSM_MW_LutMan.channel_DQ(4) self.AWG8_VSM_MW_LutMan.mw_modulation(100e6) self.AWG8_VSM_MW_LutMan.sampling_rate(2.4e9) self.ro_lutman = UHFQC_RO_LutMan('RO_lutman', num_res=5) self.ro_lutman.AWG(self.UHFQC.name) # Assign instruments self.CCL_qubit.instr_LutMan_MW(self.AWG8_VSM_MW_LutMan.name) self.CCL_qubit.instr_LO_ro(self.MW1.name) self.CCL_qubit.instr_LO_mw(self.MW2.name) self.CCL_qubit.instr_spec_source(self.MW3.name) self.CCL_qubit.instr_acquisition(self.UHFQC.name) self.CCL_qubit.instr_VSM(self.VSM.name) self.CCL_qubit.instr_CC(self.CCL.name) self.CCL_qubit.instr_LutMan_RO(self.ro_lutman.name) self.CCL_qubit.instr_MC(self.MC.name) self.CCL_qubit.instr_SH(self.SH.name) config_fn = os.path.join(pq.__path__[0], 'tests', 'test_cfg_CCL.json') self.CCL_qubit.cfg_openql_platform_fn(config_fn) # Setting some "random" initial parameters self.CCL_qubit.ro_freq(5.43e9) self.CCL_qubit.ro_freq_mod(200e6) self.CCL_qubit.freq_qubit(4.56e9) self.CCL_qubit.freq_max(4.62e9) self.CCL_qubit.mw_freq_mod(-100e6) self.CCL_qubit.mw_awg_ch(1) self.CCL_qubit.cfg_qubit_nr(0) self.CCL_qubit.mw_vsm_delay(15) self.CCL_qubit.mw_mixer_offs_GI(.1) self.CCL_qubit.mw_mixer_offs_GQ(.2) self.CCL_qubit.mw_mixer_offs_DI(.3) self.CCL_qubit.mw_mixer_offs_DQ(.4) # Set up the device object and set required params self.device = do.DeviceCCL('device') self.device.qubits([self.CCL_qubit.name]) self.device.instr_CC(self.CCL.name) self.device.instr_AWG_mw_0(self.AWG_mw_0.name) self.device.instr_AWG_mw_1(self.AWG_mw_1.name) self.device.instr_AWG_flux_0(self.AWG_flux_0.name)
def setUpClass(self): self.k0 = lko.LinDistortionKernel('k0') self.AWG = v8.VirtualAWG8('DummyAWG8') self.k0.instr_AWG(self.AWG.name) self.k0.cfg_awg_channel(1)