def test_w_noise(self): # build noise model # Asymetric readout error on qubit-0 only try: from qiskit.providers.aer.noise import NoiseModel except Exception as e: self.skipTest( "Aer doesn't appear to be installed. Error: '{}'".format( str(e))) return probs_given0 = [0.9, 0.1] probs_given1 = [0.3, 0.7] noise_model = NoiseModel() noise_model.add_readout_error([probs_given0, probs_given1], [0]) quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024, noise_model=noise_model, circuit_caching=False) res_w_noise = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_noise_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_noise, res_w_noise_skip_validation))
def test_w_noise(self): """ with noise test """ # build noise model # Asymmetric readout error on qubit-0 only try: # pylint: disable=import-outside-toplevel from qiskit.providers.aer.noise import NoiseModel from qiskit import Aer self.backend = Aer.get_backend('qasm_simulator') except Exception as ex: # pylint: disable=broad-except self.skipTest( "Aer doesn't appear to be installed. Error: '{}'".format( str(ex))) return probs_given0 = [0.9, 0.1] probs_given1 = [0.3, 0.7] noise_model = NoiseModel() noise_model.add_readout_error([probs_given0, probs_given1], [0]) quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024, noise_model=noise_model) res_w_noise = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_noise_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_noise, res_w_noise_skip_validation))
def test_wo_backend_options(self): quantum_instance = QuantumInstance(self.backend, seed_mapper=self.random_seed, run_config=self.run_config) # run without backend_options and without noise res_wo_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_wo_bo_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_wo_bo, res_wo_bo_skip_validation))
def test_w_backend_options(self): """ with backend options test """ # run with backend_options quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024, backend_options={ 'initial_statevector': [.5, .5, .5, .5]}) res_w_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_bo_skip_validation = quantum_instance.execute(self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_bo, res_w_bo_skip_validation))
def test_w_backend_options(self): # run with backend_options quantum_instance = QuantumInstance( self.backend, seed_mapper=self.random_seed, run_config=self.run_config, backend_options={'initial_statevector': [.5, .5, .5, .5]}) res_w_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_bo_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_bo, res_w_bo_skip_validation))
def test_wo_backend_options(self): """ without backend options test """ quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024) # run without backend_options and without noise res_wo_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_wo_bo_skip_validation = quantum_instance.execute(self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_wo_bo, res_wo_bo_skip_validation))
def test_w_backend_options(self): """ with backend options test """ # run with backend_options os.environ.pop('QISKIT_AQUA_CIRCUIT_CACHE', None) quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024, backend_options={ 'initial_statevector': [.5, .5, .5, .5]}, circuit_caching=False) res_w_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_bo_skip_validation = quantum_instance.execute(self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_bo, res_w_bo_skip_validation))
def test_wo_backend_options(self): os.environ.pop('QISKIT_AQUA_CIRCUIT_CACHE', None) quantum_instance = QuantumInstance(self.backend, seed_transpiler=self.random_seed, seed_simulator=self.random_seed, shots=1024, circuit_caching=False) # run without backend_options and without noise res_wo_bo = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_wo_bo_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_wo_bo, res_wo_bo_skip_validation))
def test_w_noise(self): # build noise model # Asymetric readout error on qubit-0 only probs_given0 = [0.9, 0.1] probs_given1 = [0.3, 0.7] noise_model = NoiseModel() noise_model.add_readout_error([probs_given0, probs_given1], [0]) quantum_instance = QuantumInstance(self.backend, seed_mapper=self.random_seed, run_config=self.run_config, noise_model=noise_model) res_w_noise = quantum_instance.execute(self.qc).get_counts(self.qc) quantum_instance.skip_qobj_validation = True res_w_noise_skip_validation = quantum_instance.execute( self.qc).get_counts(self.qc) self.assertTrue(_compare_dict(res_w_noise, res_w_noise_skip_validation))