コード例 #1
0
def test_canonicalize_half_turns():
    assert cirq.canonicalize_half_turns(0) == 0
    assert cirq.canonicalize_half_turns(1) == +1
    assert cirq.canonicalize_half_turns(-1) == +1
    assert cirq.canonicalize_half_turns(0.5) == 0.5
    assert cirq.canonicalize_half_turns(1.5) == -0.5
    assert cirq.canonicalize_half_turns(-0.5) == -0.5
    assert cirq.canonicalize_half_turns(101.5) == -0.5
    # Variable sympy expression
    assert cirq.canonicalize_half_turns(sympy.Symbol('a')) == sympy.Symbol('a')
    assert cirq.canonicalize_half_turns(sympy.Symbol('a') + 1) == sympy.Symbol('a') + 1
    # Constant sympy expression
    assert cirq.canonicalize_half_turns(sympy.Symbol('a') * 0 + 3) == 1
コード例 #2
0
ファイル: angle_test.py プロジェクト: sheshuguang/qutrits
def test_canonicalize_half_turns():
    assert cirq.canonicalize_half_turns(0) == 0
    assert cirq.canonicalize_half_turns(1) == +1
    assert cirq.canonicalize_half_turns(-1) == +1
    assert cirq.canonicalize_half_turns(0.5) == 0.5
    assert cirq.canonicalize_half_turns(1.5) == -0.5
    assert cirq.canonicalize_half_turns(-0.5) == -0.5
    assert cirq.canonicalize_half_turns(101.5) == -0.5
    assert cirq.canonicalize_half_turns(cirq.Symbol('a')) == cirq.Symbol('a')
コード例 #3
0
ファイル: angle_test.py プロジェクト: google2013/Cirq
def test_canonicalize_half_turns():
    assert cirq.canonicalize_half_turns(0) == 0
    assert cirq.canonicalize_half_turns(1) == +1
    assert cirq.canonicalize_half_turns(-1) == +1
    assert cirq.canonicalize_half_turns(0.5) == 0.5
    assert cirq.canonicalize_half_turns(1.5) == -0.5
    assert cirq.canonicalize_half_turns(-0.5) == -0.5
    assert cirq.canonicalize_half_turns(101.5) == -0.5
    assert cirq.canonicalize_half_turns(cirq.Symbol('a')) == cirq.Symbol('a')
コード例 #4
0
 def __init__(
     self,
     *,
     phase_exponent: Union[float, sympy.Symbol],
     exponent: Union[float, sympy.Symbol] = 1.0,
 ) -> None:
     self.phase_exponent = cirq.canonicalize_half_turns(phase_exponent)
     self.exponent = exponent