import sys import json import steane import surface17 as surf17 import d5color import correction as cor import chper_wrapper as wrapper import qcircuit_functions as qfun error_model = 'standard' output_folder = './MC_results/QECd3_flags/one_flag/' + error_model + '/' p1q, p2q = 0.01, 0.01 error_dict, Is_after2q, Is_after_1q = wrapper.dict_for_error_model(error_model, p1q, p2q, p1q) initial_I = True QECd3_flags_circ = cor.Flag_Correct.generate_whole_QEC_Reichardt_special(True, False, initial_I) QEC_circ_list = [] for i in range(len(QECd3_flags_circ.gates)): QEC_circ_list += [QECd3_flags_circ.gates[i].circuit_list[0]] one_q_gates, two_q_gates = wrapper.gates_list(QEC_circ_list, error_dict.keys()) n_oneq, n_twoq = len(one_q_gates), len(two_q_gates) #print n_oneq #print n_twoq #sys.exit(0) # diVincenzo new (only 2 reps) QEC_circ = qfun.create_EC_subcircs('Steane', False, initial_I, False, False, 2) QEC_circ = QEC_circ.gates[0].circuit_list[0]
import chper_wrapper as wrapper import MC_functions as mc import qcircuit_functions as qfun import qcircuit_wrapper as qwrap chp_loc = './chp_extended' error_model = 'ion_trap_eQual' decoder = 'new' if decoder == 'new': n_subcircs_first_round = 9 else: n_subcircs_first_round = 12 # These error rates don't matter for the fast sampler p1, p2, p_meas, p_prep, p_sm, p_cool = 0.1, 0.1, 0.1, 0.1, 0.1, 0.1 error_dict, Is_after2q, Is_after1q, faulty_groups = wrapper.dict_for_error_model( error_model=error_model, p_1q=p1, p_2q=p2, p_meas=p_meas, p_prep=p_prep, p_sm=p_sm, p_cool=p_cool) error_info = mc.read_error_info(error_dict) n_per_proc, n_proc = int(sys.argv[1]), int(sys.argv[2]) n_errors = [ int(sys.argv[3]), int(sys.argv[4]), int(sys.argv[5]), int(sys.argv[6]) ] alternating = sys.argv[7] # either 'True' or 'False' in_state = sys.argv[8] # either 'Z' or 'X'
import copy import random as rd import multiprocessing as mp import steane import surface17 as surf17 import correction as cor import chper_wrapper as wrapper import MC_functions as mc import qcircuit_functions as qfun import qcircuit_wrapper as qwrap from visualizer import browser_vis as brow chp_loc = './chp_extended' error_model = 'standard' p1, p2, p_meas = 0.001, 0.001, 0.001 # these don't matter for the fast sampler error_dict, Is_after2q, Is_after_1q = wrapper.dict_for_error_model( error_model, p1, p2, p_meas) error_info = mc.read_error_info(error_dict) n_per_proc, n_proc = int(sys.argv[1]), int(sys.argv[2]) n_errors = [int(sys.argv[3]), int(sys.argv[4])] QEC_kind = sys.argv[5] # either 'flag' or 'diVin' if QEC_kind == 'surface17': output_folder = './MC_results/QECd3_surface17/' + error_model + '/' elif QEC_kind == 'all_flags': output_folder = './MC_results/QECd3_flags/all_flags/' + error_model + '/' elif QEC_kind == 'flag': output_folder = './MC_results/QECd3_flags/one_flag/' + error_model + '/' elif QEC_kind == 'diVin': output_folder = './MC_results/QECd3_diVin/' + error_model + '/' elif QEC_kind == 'diVin_new':