Пример #1
0
 def setup_class(cls):
     cls.qbt = None
     cls.qbt_type = ZeroPi
     cls.file_str = 'zeropi'
     cls.grid = scq.Grid1d(1, 2, 3)
     cls.op1_str = 'n_theta_operator'
     cls.op2_str = 'i_d_dphi_operator'
     cls.param_name = 'flux'
     cls.param_list = np.linspace(0, 0.5, 15)
Пример #2
0
 def update_grid_qubit_params(self, **params):
     grid_min, grid_max = params["grid"]
     updated_grid = scq.Grid1d(
         min_val=grid_min,
         max_val=grid_max,
         pt_count=self.grid_defaults["grid_pt_count"],
     )
     params.update({"grid": updated_grid})
     self.qubit_current_params.update(params)
     del params["grid"]
     params["grid_min_val"] = grid_min
     params["grid_max_val"] = grid_max
     params["grid_pt_count"] = self.grid_defaults["grid_pt_count"]
     self.active_qubit.set_params(**params)
Пример #3
0
def get_zero_pi_hamiltonian(flux):
    phi_grid = scq.Grid1d(-6 * np.pi, 6 * np.pi, 200)
    EJ_CONST = 1 / 3.95
    zero_pi = scq.ZeroPi(grid=phi_grid,
                         EJ=EJ_CONST,
                         EL=10.0**(-2),
                         ECJ=1 / (8.0 * EJ_CONST),
                         EC=None,
                         ECS=10.0**(-3),
                         ng=0.1,
                         flux=flux,
                         ncut=30)
    ham = zero_pi.hamiltonian()
    return ham
Пример #4
0
    def initialize_qubit(self, qubit_name: str) -> None:
        """Initializes self.active_qubit to the user's choice
        using the chosen qubit's default parameters.

        Parameters
        ----------
        qubit_name:
        """
        QubitClass = getattr(scq, qubit_name)
        if self.qubit_change:
            init_params = QubitClass.default_params()

            if qubit_name == "ZeroPi" or qubit_name == "FullZeroPi":
                init_params["grid"] = scq.Grid1d(
                    min_val=self.grid_defaults["grid_min_val"],
                    max_val=self.grid_defaults["grid_max_val"],
                    pt_count=self.grid_defaults["grid_pt_count"],
                )
            self.qubit_current_params = init_params
            self.qubit_change = False

        self.active_qubit = QubitClass(**self.qubit_current_params)