def xy(target1: QubitInput, target2: QubitInput, angle: float) -> Instruction: """Registers this function into the circuit class. Args: target1 (Qubit or int): Target qubit 1 index. target2 (Qubit or int): Target qubit 2 index. Returns: Instruction: XY instruction. Examples: >>> circ = Circuit().xy(0, 1, 0.15) """ return Instruction(Gate.XY(angle), target=[target1, target2])
def test_apply_gate_noise_2QubitNoise2_parametrized( circuit_2qubit_parametrized, noise_2qubit): circ = circuit_2qubit_parametrized.apply_gate_noise( noise_2qubit, target_gates=[Gate.XY], target_qubits=[0, 1], ) expected = (Circuit().add_instruction(Instruction( Gate.X(), 0)).add_instruction(Instruction(Gate.Y(), 1)).add_instruction( Instruction(Gate.X(), 0)).add_instruction( Instruction(Gate.Rx(np.pi), 1)).add_instruction( Instruction(Gate.XY(np.pi / 2), [0, 1])).add_instruction( Instruction(noise_2qubit, [0, 1]))) assert circ == expected