コード例 #1
0
def test_from_meijerg():
    x = symbols('x')
    R, Dx = DifferentialOperators(QQ.old_poly_ring(x), 'Dx')
    p = from_meijerg(meijerg(([], [S(3)/2]), ([S(1)/2], [S(1)/2, 1]), x))
    q = HolonomicFunction(x/2 - 1/4 + (-x**2 + x/4)*Dx + x**2*Dx**2 + x**3*Dx**3, x, 1, \
        [1/sqrt(pi), 1/(2*sqrt(pi)), -1/(4*sqrt(pi))])
    assert p == q
    p = from_meijerg(meijerg(([], []), ([0], []), x))
    q = HolonomicFunction(1 + Dx, x, 0, [1])
    assert p == q
    p = from_meijerg(meijerg(([1], []), ([S(1)/2], [0]), x))
    q = HolonomicFunction((x + 1/2)*Dx + x*Dx**2, x, 1, [sqrt(pi)*erf(1), exp(-1)])
    assert p == q
    p = from_meijerg(meijerg(([0], [1]), ([0], []), 2*x**2))
    q = HolonomicFunction((3*x**2 - 1)*Dx + x**3*Dx**2, x, 1, [-exp(-S(1)/2) + 1, -exp(-S(1)/2)])
    assert p == q
コード例 #2
0
ファイル: test_holonomic.py プロジェクト: ashutoshsaboo/sympy
def test_from_meijerg():
    x = symbols('x')
    R, Dx = DifferentialOperators(QQ.old_poly_ring(x), 'Dx')
    p = from_meijerg(meijerg(([], [S(3)/2]), ([S(1)/2], [S(1)/2, 1]), x))
    q = HolonomicFunction(x/2 - 1/4 + (-x**2 + x/4)*Dx + x**2*Dx**2 + x**3*Dx**3, x, 1, \
        [1/sqrt(pi), 1/(2*sqrt(pi)), -1/(4*sqrt(pi))])
    assert p == q
    p = from_meijerg(meijerg(([], []), ([0], []), x))
    q = HolonomicFunction(1 + Dx, x, 0, [1])
    assert p == q
    p = from_meijerg(meijerg(([1], []), ([S(1)/2], [0]), x))
    q = HolonomicFunction((x + 1/2)*Dx + x*Dx**2, x, 1, [sqrt(pi)*erf(1), exp(-1)])
    assert p == q
    p = from_meijerg(meijerg(([0], [1]), ([0], []), 2*x**2))
    q = HolonomicFunction((3*x**2 - 1)*Dx + x**3*Dx**2, x, 1, [-exp(-S(1)/2) + 1, -exp(-S(1)/2)])
    assert p == q
コード例 #3
0
ファイル: test_holonomic.py プロジェクト: rwong/sympy
def test_from_meijerg():
    x = symbols("x")
    R, Dx = DifferentialOperators(QQ.old_poly_ring(x), "Dx")
    p = from_meijerg(meijerg(([], [S(3) / 2]), ([S(1) / 2], [S(1) / 2, 1]), x))
    q = HolonomicFunction(
        2 * x - 1 + (-4 * x ** 2 + x) * Dx + 4 * x ** 2 * Dx ** 2 + 4 * x ** 3 * Dx ** 3,
        x,
        1,
        [1 / sqrt(pi), 1 / (2 * sqrt(pi)), -1 / (4 * sqrt(pi))],
    )
    assert p == q
    p = from_meijerg(meijerg(([], []), ([0], []), x))
    q = HolonomicFunction(1 + Dx, x, 0, 1)
    assert p == q
    p = from_meijerg(meijerg(([1], []), ([S(1) / 2], [0]), x))
    q = HolonomicFunction((2 * x + 1) * Dx + 2 * x * Dx ** 2, x, 1, [sqrt(pi) * erf(1), exp(-1)])
    assert p == q
    p = from_meijerg(meijerg(([0], [1]), ([0], []), 2 * x ** 2))
    q = HolonomicFunction((3 * x ** 2 - 1) * Dx + x ** 3 * Dx ** 2, x, 1, [-exp(-S(1) / 2) + 1, -exp(-S(1) / 2)])
    assert p == q