-
Notifications
You must be signed in to change notification settings - Fork 55
/
rpeconfig_GxPi2_GyPi2_00.py
102 lines (96 loc) · 5.55 KB
/
rpeconfig_GxPi2_GyPi2_00.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
from __future__ import division, print_function, absolute_import, unicode_literals
#*****************************************************************
# pyGSTi 0.9: Copyright 2015 Sandia Corporation
# This Software is released under the GPL license detailed
# in the file "license.txt" in the top-level pyGSTi directory
#*****************************************************************
import numpy as _np
from . import rpeconfig as _rpeconfig
rpeconfig_GxPi2_GyPi2_00_dict = {}
rpeconfig_GxPi2_GyPi2_00_dict['fixed_axis_gate_label'] = 'Gx'
rpeconfig_GxPi2_GyPi2_00_dict['fixed_axis_label'] = 'X'
rpeconfig_GxPi2_GyPi2_00_dict['fixed_axis_target'] = [0,1,0,0]
rpeconfig_GxPi2_GyPi2_00_dict['loose_axis_gate_label'] = 'Gy'
rpeconfig_GxPi2_GyPi2_00_dict['loose_axis_label'] = 'Y'
rpeconfig_GxPi2_GyPi2_00_dict['loose_axis_target'] = [0,0,1,0]
rpeconfig_GxPi2_GyPi2_00_dict['auxiliary_axis_gate_label'] = 'Gz'
rpeconfig_GxPi2_GyPi2_00_dict['auxiliary_axis_label'] = 'Z'
rpeconfig_GxPi2_GyPi2_00_dict['rhoExpressions'] = ["0"]
rpeconfig_GxPi2_GyPi2_00_dict['EExpressions'] = ["0","1"]
rpeconfig_GxPi2_GyPi2_00_dict['ELabels'] = ["0","1"]
#rpeconfig_GxPi2_GyPi200n_dict['spamLabelDict'] = {'plus': (0,0), 'minus': (0,-1) }
rpeconfig_GxPi2_GyPi2_00_dict['spamLabelDict'] = {'0': ('rho0','E0'), '1': ('rho0','remainder') }
rpeconfig_GxPi2_GyPi2_00_dict['dn_labels'] = ['0']
rpeconfig_GxPi2_GyPi2_00_dict['up_labels'] = ['1']
rpeconfig_GxPi2_GyPi2_00_dict['alpha'] = _np.pi/2
rpeconfig_GxPi2_GyPi2_00_dict['epsilon'] = _np.pi/2
rpeconfig_GxPi2_GyPi2_00_dict['theta'] = 0 #This should always be 0.
rpeconfig_GxPi2_GyPi2_00_dict['new_epsilon_func'] = lambda epsilon: (epsilon / (_np.pi/2)) - 1
rpeconfig_GxPi2_GyPi2_00_dict['alpha_hat_func'] = lambda xhat, yhat, Nx, Ny: _np.arctan2((xhat-Nx/2.)/Nx,-(yhat-Ny/2.)/Ny)
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_hat_func'] = lambda xhat, yhat, Nx, Ny: _np.arctan2((xhat-Nx/2.)/Nx,-(yhat-Ny/2.)/Ny)
rpeconfig_GxPi2_GyPi2_00_dict['Phi_hat_func'] = lambda xhat, yhat, Nx, Ny: _np.arctan2((xhat-Nx/2.)/Nx,-(yhat-Ny/2.)/Ny)
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_germ_tuple'] = ('Gx',)
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_germ_str'] = 'Gx'
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_meas_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['alpha_cos_meas_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_germ_tuple'] = ('Gx',)
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_germ_str'] = 'Gx'
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_meas_tuple'] = ('Gx',)
rpeconfig_GxPi2_GyPi2_00_dict['alpha_sin_meas_str'] = 'Gx'
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_germ_tuple'] = ('Gy',)
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_germ_str'] = 'Gy'
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_meas_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_cos_meas_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_germ_tuple'] = ('Gy',)
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_germ_str'] = 'Gy'
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_meas_tuple'] = ('Gy',)
rpeconfig_GxPi2_GyPi2_00_dict['epsilon_sin_meas_str'] = 'Gy'
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_germ_tuple'] = ('Gx','Gy','Gy','Gx','Gx','Gy','Gy','Gx')
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_germ_str'] = 'GxGyGyGxGxGyGyGx'
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_meas_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['theta_cos_meas_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_prep_tuple'] = ()
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_prep_str'] = ''
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_germ_tuple'] = ('Gx','Gy','Gy','Gx','Gx','Gy','Gy','Gx')
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_germ_str'] = 'GxGyGyGxGxGyGyGx'
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_meas_tuple'] = ('Gy',)
rpeconfig_GxPi2_GyPi2_00_dict['theta_sin_meas_str'] = 'Gy'
rpeconfig_GxPi2_GyPi2_00 = _rpeconfig(rpeconfig_GxPi2_GyPi2_00_dict)
#rpeconfig_GxPi2_GyPi2_UpDn_dict['make_rpe_gs_func'] = lambda alphaTrue, epsilonTrue, Zrot, withId=True :\
# if withId:
# outputGateset = _setc.build_gateset(
# [2], [('Q0',)],['Gi','Gy','Gx'],
# [ "I(Q0)", "Y(%s,Q0)" % epsilonTrue, "X(%s,Q0)" % alphaTrue],
# rhoExpressions=["0"], EExpressions=["1"],
# spamLabelDict={'plus': (0,0), 'minus': (0,-1) } )
# else:
# outputGateset = _setc.build_gateset(
# [2], [('Q0',)],['Gy','Gx'],
# [ "Y(%s,Q0)" % epsilonTrue, "X(%s,Q0)" % alphaTrue],
# rhoExpressions=["0"], EExpressions=["1"],
# spamLabelDict={'plus': (0,0), 'minus': (0,-1) })
#
# if Zrot != 0:
# gatesetAux1 = _setc.build_gateset(
# [2], [('Q0',)],['Gi','Gz','Gx'],
# [ "I(Q0)", "Z(%s,Q0)" % Zrot, "X(pi/2,Q0)"],
# rhoExpressions=["0"], EExpressions=["1"],
# spamLabelDict={'plus': (0,0), 'minus': (0,-1) })
#
# outputGateset.set_gate('Gy',_objs.FullyParameterizedGate(
# _np.dot( _np.dot(_np.linalg.inv(gatesetAux1['Gz']),
# outputGateset['Gy']),gatesetAux1['Gz'])) )
#
#
#
# SPAMdepol, gateDepol=None,