Esempio n. 1
0
def test_composite_sums():
    f = Rational(1, 2)*(7 - 6*n + Rational(1, 7)*n**3)
    s = summation(f, (n, a, b))
    assert not isinstance(s, Sum)
    A = 0
    for i in range(-3, 5):
        A += f.subs(n, i)
    B = s.subs(a, -3).subs(b, 4)
    assert A == B
Esempio n. 2
0
def test_composite_sums():
    f = Rational(1, 2) * (7 - 6 * n + Rational(1, 7) * n**3)
    s = summation(f, (n, a, b))
    assert not isinstance(s, Sum)
    A = 0
    for i in range(-3, 5):
        A += f.subs(n, i)
    B = s.subs(a, -3).subs(b, 4)
    assert A == B
Esempio n. 3
0
File: rge.py Progetto: openhep/kmp17
def rge1L(N, BSMfermions=[], BSMscalars=[], num=False):
    """One loop RGE coefficient."""

    a = Rational(-11, 3) * CA(N)
    for rep in SMfermions + BSMfermions:
        a += Rational(4, 3) * rep.wS2(N)
    for rep in SMscalars + BSMscalars:
        a += Rational(1, 3) * rep.wS2(N)
    if num:
        return float(a.subs({ng: 3, nh: 1}))
    else:
        return a
Esempio n. 4
0
        print alphavar, nvar, LaguerreP.subs(n, nvar).subs(alpha, alphavar).doit(), LaguerreP.subs(n, nvar).subs(
            alpha, alphavar
        ).doit() == laguerre_poly(
            nvar, x, alpha=alphavar
        )  # True

(LaguerreF.subs(n, n + 1) / LaguerreF).simplify()  # (alpha + n + 1)/(-k + n + 1)
(LaguerreF.subs(k, k + 1) / LaguerreF).simplify()  # x*(k - n)/((k + 1)*(alpha + k + 1))

LegendreF = Rat(1) / (Rat(2) ** n) * (binomial(n, k)) ** 2 * (x - Rat(1)) ** k * (x + Rat(1)) ** (n - k)
LegendreP = Sum(LegendreF, (k, 0, n))

for nvar in range(4):
    legendre_poly(nvar, x) == LegendreP.subs(n, nvar).doit().expand()  # True

(LegendreF.subs(n, n + 1) / LegendreF).simplify()  # (n + 1)**2*(x + 1)/(2*(k - n - 1)**2)
(LegendreF.subs(k, k + 1) / LegendreF).simplify()  # (k - n)**2*(x - 1)/((k + 1)**2*(x + 1))

JacobiF = (
    Rat(1)
    / (Rat(2) ** n)
    * binomial(n + alpha, n - k)
    * binomial(n + beta, k)
    * (x - Rat(1)) ** k
    * (x + Rat(1)) ** (n - k)
)
JacobiP = Sum(JacobiF, (k, 0, n))
for alphvar in range(5):
    for betvar in range(5):
        for nvar in range(5):
            jacobi_poly(nvar, alphvar, betvar, x) == JacobiP.subs(n, nvar).subs(alpha, alphvar).subs(