def test_kraus_gate_noise(self, method, device): """Test simulation with Kraus gate error noise model.""" backend = self.backend(method=method, device=device) shots = 1000 circuits = ref_kraus_noise.kraus_gate_error_circuits() noise_models = ref_kraus_noise.kraus_gate_error_noise_models() targets = ref_kraus_noise.kraus_gate_error_counts(shots) for circuit, noise_model, target in zip(circuits, noise_models, targets): backend.set_options(noise_model=noise_model) result = backend.run(circuit, shots=shots).result() self.assertSuccess(result) self.compare_counts(result, [circuit], [target], delta=0.05 * shots)
def test_kraus_gate_noise(self): """Test simulation with Kraus gate error noise model.""" shots = 1000 circuits = ref_kraus_noise.kraus_gate_error_circuits() noise_models = ref_kraus_noise.kraus_gate_error_noise_models() targets = ref_kraus_noise.kraus_gate_error_counts(shots) for circuit, noise_model, target in zip(circuits, noise_models, targets): qobj = assemble(circuit, self.SIMULATOR, shots=shots) result = self.SIMULATOR.run(qobj, noise_model=noise_model, **self.BACKEND_OPTS).result() self.assertSuccess(result) self.compare_counts(result, [circuit], [target], delta=0.05 * shots)
def test_noise_circuits_job(self, method, device, max_job_size, max_shot_size): """Test random circuits with custom executor.""" shots = 4000 backend = self.backend(method=method, device=device, max_job_size=max_job_size, max_shot_size=max_shot_size) circuits = ref_kraus_noise.kraus_gate_error_circuits() noise_models = ref_kraus_noise.kraus_gate_error_noise_models() targets = ref_kraus_noise.kraus_gate_error_counts(shots) for circuit, noise_model, target in zip(circuits, noise_models, targets): backend.set_options(noise_model=noise_model) result = backend.run(circuit, shots=shots).result() self.assertSuccess(result) self.compare_counts(result, [circuit], [target], delta=0.05 * shots)