def setUp(self):
        """Define variables needed for most tests."""
        super().setUp()

        self.base_result_args = dict(
            backend_name="test_backend",
            backend_version="1.0.0",
            qobj_id="id-123",
            job_id="job-123",
            success=True,
        )

        self.header = QobjExperimentHeader(
            memory_slots=2,
            metadata={"experiment_type": "fake_test_experiment"},
        )
Example #2
0
    def from_dict(cls, data):
        """Create a new PulseQobjExperiment object from a dictionary.

        Args:
            data (dict): A dictionary for the experiment config

        Returns:
            PulseQobjExperiment: The object from the input dictionary.
        """
        config = None
        if 'config' in data:
            config = PulseQobjExperimentConfig.from_dict(data.pop('config'))
        header = None
        if 'header' in data:
            header = QobjExperimentHeader.from_dict(data.pop('header'))
        instructions = None
        if 'instructions' in data:
            instructions = [
                PulseQobjInstruction.from_dict(
                    inst) for inst in data.pop('instructions')]
        return cls(instructions, config, header)
Example #3
0
    def setUp(self):
        """Setup variables used for testing."""
        self.base_result_args = dict(
            backend_name="test_backend",
            backend_version="1.0.0",
            qobj_id="id-123",
            job_id="job-123",
            success=True,
        )

        mem1 = ExperimentResultData(memory=[
            [[1103260.0, -11378508.0], [2959012.0, -16488753.0]],
            [[442170.0, -19283206.0], [-5279410.0, -15339630.0]],
            [[3016514.0, -14548009.0], [-3404756.0, -16743348.0]],
        ])

        mem2 = ExperimentResultData(memory=[
            [[5131962.0, -16630257.0], [4438870.0, -13752518.0]],
            [[3415985.0, -16031913.0], [2942458.0, -15840465.0]],
            [[5199964.0, -14955998.0], [4030843.0, -14538923.0]],
        ])

        header1 = QobjExperimentHeader(
            clbit_labels=[["meas", 0], ["meas", 1]],
            creg_sizes=[["meas", 2]],
            global_phase=0.0,
            memory_slots=2,
            metadata={
                "experiment_type": "fake_test_experiment",
                "x_values": 0.0
            },
        )

        header2 = QobjExperimentHeader(
            clbit_labels=[["meas", 0], ["meas", 1]],
            creg_sizes=[["meas", 2]],
            global_phase=0.0,
            memory_slots=2,
            metadata={
                "experiment_type": "fake_test_experiment",
                "x_values": 1.0
            },
        )

        res1 = ExperimentResult(shots=3,
                                success=True,
                                meas_level=1,
                                data=mem1,
                                header=header1)
        res2 = ExperimentResult(shots=3,
                                success=True,
                                meas_level=1,
                                data=mem2,
                                header=header2)

        self.result_lvl1 = Result(results=[res1, res2],
                                  **self.base_result_args)

        raw_counts = {"0x0": 4, "0x2": 6}
        data = ExperimentResultData(counts=dict(**raw_counts))
        header = QobjExperimentHeader(
            metadata={"experiment_type": "fake_test_experiment"},
            clbit_labels=[["c", 0], ["c", 1]],
            creg_sizes=[["c", 2]],
            n_qubits=2,
            memory_slots=2,
        )
        res = ExperimentResult(shots=9,
                               success=True,
                               meas_level=2,
                               data=data,
                               header=header)
        self.exp_data_lvl2 = ExperimentData(FakeExperiment())
        self.exp_data_lvl2.add_data(
            Result(results=[res], **self.base_result_args))

        super().setUp()