Esempio n. 1
0
def test_TR3():
    assert TR3(cos(y - x * (y - x))) == cos(x * (x - y) + y)
    assert cos(pi / 2 + x) == -sin(x)
    assert cos(30 * pi / 2 + x) == -cos(x)

    for f in (cos, sin, tan, cot, csc, sec):
        i = f(pi * Rational(3, 7))
        j = TR3(i)
        assert verify_numerically(i, j) and i.func != j.func
Esempio n. 2
0
def test_TRmorrie():
    assert TRmorrie(7*Mul(*[cos(i) for i in range(10)])) == \
        7*sin(12)*sin(16)*cos(5)*cos(7)*cos(9)/(64*sin(1)*sin(3))
    assert TRmorrie(x) == x
    assert TRmorrie(2*x) == 2*x
    e = cos(pi/7)*cos(2*pi/7)*cos(4*pi/7)
    assert TR8(TRmorrie(e)) == -S(1)/8
    e = Mul(*[cos(2**i*pi/17) for i in range(1, 17)])
    assert TR8(TR3(TRmorrie(e))) == S(1)/65536
Esempio n. 3
0
def test_TRmorrie():
    assert TRmorrie(7*Mul(*[cos(i) for i in range(10)])) == \
        7*sin(12)*sin(16)*cos(5)*cos(7)*cos(9)/(64*sin(1)*sin(3))
    assert TRmorrie(x) == x
    assert TRmorrie(2 * x) == 2 * x
    e = cos(pi / 7) * cos(pi * Rational(2, 7)) * cos(pi * Rational(4, 7))
    assert TR8(TRmorrie(e)) == Rational(-1, 8)
    e = Mul(*[cos(2**i * pi / 17) for i in range(1, 17)])
    assert TR8(TR3(TRmorrie(e))) == Rational(1, 65536)
    # issue 17063
    eq = cos(x) / cos(x / 2)
    assert TRmorrie(eq) == eq