def test_make_parameterized_rpe_gateset(self): # These numbers have no significance A = rc.make_parameterized_rpe_gate_set(1.57079632679, 1.57079632679, .78539816339, 0.001, 0.001, rpeconfig_inst=self.config) B = rc.make_parameterized_rpe_gate_set(1.57079632679, 1.57079632679, .78539816339, 0.001, 0.001, rpeconfig_inst=self.config) self.assertEqual(A.frobeniusdist(B), 0.0) # Again, no significance in these numbers C = rc.make_parameterized_rpe_gate_set(1.56079632679, 1.56079632679, .78539816339, 0.001, 0.001, True, rpeconfig_inst=self.config) self.assertAlmostEqual(A.frobeniusdist(C), 0.0, 2)
def test_rpe_datasets(self): gateset = pygsti.construction.build_gateset( [2], [('Q0', )], ['Gi', 'Gx', 'Gy', 'Gz'], ["I(Q0)", "X(pi/8,Q0)", "Y(pi/8,Q0)", "Z(pi/2,Q0)"], prepLabels=['rho0'], prepExpressions=["0"], effectLabels=['E0'], effectExpressions=["1"], spamdefs={ 'plus': ('rho0', 'E0'), 'minus': ('rho0', 'remainder') }) depol_gateset = gateset.depolarize(gate_noise=0.1, spam_noise=0) #test RPE datasets rpeconfig_inst = rpeconfig_GxPi2_GyPi2_UpDn rpeGS = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, 0, 0.1, 0.1, True, rpeconfig_inst=rpeconfig_inst) rpeGS2 = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, 0, 0.1, 0.1, False, rpeconfig_inst=rpeconfig_inst) rpeGS3 = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, np.pi / 4, 0.1, 0.1, False, rpeconfig_inst=rpeconfig_inst) kList = [0, 1, 2] lst1 = rc.make_rpe_angle_str_lists(kList, "alpha", rpeconfig_inst) lst2 = rc.make_rpe_angle_str_lists(kList, "epsilon", rpeconfig_inst) lst3 = rc.make_rpe_angle_str_lists(kList, "theta", rpeconfig_inst) lstDict = rc.make_rpe_angle_string_list_dict(2, rpeconfig_inst) rpeDS = rc.make_rpe_data_set(depol_gateset, lstDict, 1000, sampleError='binomial', seed=1234)
def test_rpe_datasets(self): gateset = pygsti.construction.build_gateset( [2], [('Q0', )], ['Gi', 'Gx', 'Gy', 'Gz'], ["I(Q0)", "X(pi/8,Q0)", "Y(pi/8,Q0)", "Z(pi/2,Q0)"]) depol_gateset = gateset.depolarize(gate_noise=0.1, spam_noise=0) #test RPE datasets rpeconfig_inst_list = [ rpeconfig_GxPi2_GyPi2_UpDn, rpeconfig_GxPi2_GyPi2_00 ] for rpeconfig_inst in rpeconfig_inst_list: rpeGS = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, 0, 0.1, 0.1, True, rpeconfig_inst=rpeconfig_inst) rpeGS2 = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, 0, 0.1, 0.1, False, rpeconfig_inst=rpeconfig_inst) rpeGS3 = rc.make_parameterized_rpe_gate_set( np.pi / 2, np.pi / 4, np.pi / 4, 0.1, 0.1, False, rpeconfig_inst=rpeconfig_inst) kList = [0, 1, 2] lst1 = rc.make_rpe_angle_str_lists(kList, "alpha", rpeconfig_inst) lst2 = rc.make_rpe_angle_str_lists(kList, "epsilon", rpeconfig_inst) lst3 = rc.make_rpe_angle_str_lists(kList, "theta", rpeconfig_inst) lstDict = rc.make_rpe_angle_string_list_dict(2, rpeconfig_inst) rpeDS = rc.make_rpe_data_set(depol_gateset, lstDict, 1000, sampleError='binomial', seed=1234)
def test_make_rpe_data_set(self): A = rc.make_parameterized_rpe_gate_set(1.57079632679, 1.57079632679, .78539816339, 0.001, 0.001, rpeconfig_inst=self.config) d = rc.make_rpe_angle_string_list_dict(3, self.config) rpreDS = rc.make_rpe_data_set(A, d, 1000)
def test_make_rpe_data_set(self): for rpeconfig_inst in self.rpeconfig_inst_list: A = rc.make_parameterized_rpe_gate_set( 1.57079632679, 1.57079632679, .78539816339, 0.001, 0.001, rpeconfig_inst=rpeconfig_inst) d = rc.make_rpe_angle_string_list_dict(3, rpeconfig_inst) rc.make_rpe_data_set(A, d, 1000)