Exemple #1
0
    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)
Exemple #3
0
    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)
Exemple #4
0
 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)
Exemple #5
0
 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)