def test_laguerre(): assert laguerre(0, x) == 1 assert laguerre(1, x) == -x + 1 assert laguerre(2, x) == x**2 / 2 - 2 * x + 1 assert laguerre(3, x) == -x**3 / 6 + 3 * x**2 / 2 - 3 * x + 1 assert laguerre(n, oo) == (-1)**n * oo assert laguerre(n, -oo) == oo X = laguerre(n, x) assert isinstance(X, laguerre) assert laguerre(n, 0) == 1 assert conjugate(laguerre(n, x)) == laguerre(n, conjugate(x)) assert diff(laguerre(n, x), x) == -assoc_laguerre(n - 1, 1, x) pytest.raises(ArgumentIndexError, lambda: laguerre(n, x).fdiff(1)) pytest.raises(ValueError, lambda: laguerre(-2.1, x)) # issue sympy/sympy#10961 X = laguerre(Rational(5, 2), x) assert isinstance(X, laguerre)
def test_laguerre(): assert laguerre(0, x) == 1 assert laguerre(1, x) == -x + 1 assert laguerre(2, x) == x**2/2 - 2*x + 1 assert laguerre(3, x) == -x**3/6 + 3*x**2/2 - 3*x + 1 assert laguerre(n, oo) == (-1)**n*oo assert laguerre(n, -oo) == oo assert laguerre(-n, x) == exp(x)*laguerre(n - 1, -x) X = laguerre(n, x) assert isinstance(X, laguerre) assert laguerre(n, 0) == 1 assert conjugate(laguerre(n, x)) == laguerre(n, conjugate(x)) assert diff(laguerre(n, x), x) == -assoc_laguerre(n - 1, 1, x) pytest.raises(ArgumentIndexError, lambda: laguerre(n, x).fdiff(1)) pytest.raises(ValueError, lambda: laguerre(-2.1, x)) # issue sympy/sympy#10961 X = laguerre(Rational(5, 2), x) assert isinstance(X, laguerre)
def test_assoc_legendre(): Plm = assoc_legendre Q = sqrt(1 - x**2) assert Plm(0, 0, x) == 1 assert Plm(1, 0, x) == x assert Plm(1, 1, x) == -Q assert Plm(2, 0, x) == (3*x**2 - 1)/2 assert Plm(2, 1, x) == -3*x*Q assert Plm(2, 2, x) == 3*Q**2 assert Plm(3, 0, x) == (5*x**3 - 3*x)/2 assert Plm(3, 1, x).expand() == ((3*(1 - 5*x**2)/2).expand()*Q).expand() assert Plm(3, 2, x) == 15*x * Q**2 assert Plm(3, 3, x) == -15 * Q**3 # negative m assert Plm(1, -1, x) == -Plm(1, 1, x)/2 assert Plm(2, -2, x) == Plm(2, 2, x)/24 assert Plm(2, -1, x) == -Plm(2, 1, x)/6 assert Plm(3, -3, x) == -Plm(3, 3, x)/720 assert Plm(3, -2, x) == Plm(3, 2, x)/120 assert Plm(3, -1, x) == -Plm(3, 1, x)/12 X = Plm(n, m, x) assert isinstance(X, assoc_legendre) assert Plm(n, 0, x) == legendre(n, x) assert Plm(n, m, 0) == 2**m*sqrt(pi)/(gamma((1 - m - n)/2)*gamma(1 - (m - n)/2)) pytest.raises(ValueError, lambda: Plm(-1, 0, x)) pytest.raises(ValueError, lambda: Plm(0, 1, x)) pytest.raises(ValueError, lambda: Plm(-1, 2, x)) assert conjugate(assoc_legendre(n, m, x)) == \ assoc_legendre(n, conjugate(m), conjugate(x)) assert assoc_legendre(n, m, x).diff(x) == \ (n*x*assoc_legendre(n, m, x) - (m + n)*assoc_legendre(n - 1, m, x))/(x**2 - 1) pytest.raises(ArgumentIndexError, lambda: assoc_legendre(n, m, x).fdiff(1)) assert (assoc_laguerre(n, m, x).diff(m) == Sum(assoc_laguerre(k, m, x)/(-m + n), (k, 0, n - 1)))
def test_assoc_legendre(): Plm = assoc_legendre Q = sqrt(1 - x**2) assert Plm(0, 0, x) == 1 assert Plm(1, 0, x) == x assert Plm(1, 1, x) == -Q assert Plm(2, 0, x) == (3*x**2 - 1)/2 assert Plm(2, 1, x) == -3*x*Q assert Plm(2, 2, x) == 3*Q**2 assert Plm(3, 0, x) == (5*x**3 - 3*x)/2 assert Plm(3, 1, x).expand() == (( 3*(1 - 5*x**2)/2 ).expand() * Q).expand() assert Plm(3, 2, x) == 15*x * Q**2 assert Plm(3, 3, x) == -15 * Q**3 # negative m assert Plm(1, -1, x) == -Plm(1, 1, x)/2 assert Plm(2, -2, x) == Plm(2, 2, x)/24 assert Plm(2, -1, x) == -Plm(2, 1, x)/6 assert Plm(3, -3, x) == -Plm(3, 3, x)/720 assert Plm(3, -2, x) == Plm(3, 2, x)/120 assert Plm(3, -1, x) == -Plm(3, 1, x)/12 X = Plm(n, m, x) assert isinstance(X, assoc_legendre) assert Plm(n, 0, x) == legendre(n, x) assert Plm(n, m, 0) == 2**m*sqrt(pi)/(gamma((1 - m - n)/2)*gamma(1 - (m - n)/2)) pytest.raises(ValueError, lambda: Plm(-1, 0, x)) pytest.raises(ValueError, lambda: Plm(0, 1, x)) pytest.raises(ValueError, lambda: Plm(-1, 2, x)) assert conjugate(assoc_legendre(n, m, x)) == \ assoc_legendre(n, conjugate(m), conjugate(x)) assert assoc_legendre(n, m, x).diff(x) == \ (n*x*assoc_legendre(n, m, x) - (m + n)*assoc_legendre(n - 1, m, x))/(x**2 - 1) pytest.raises(ArgumentIndexError, lambda: assoc_legendre(n, m, x).fdiff(1)) assert (str(assoc_laguerre(n, m, x).diff(m)) == 'Sum(assoc_laguerre(_k, m, x)/(-m + n), (_k, 0, n - 1))')
def test_laguerre_2(): # This fails due to issue for Sum, like issue sympy/sympy#5539 assert diff(assoc_laguerre(n, alpha, x), alpha) == \ Sum(assoc_laguerre(k, alpha, x)/(-alpha + n), (k, 0, n - 1))
def test_assoc_laguerre(): # generalized Laguerre polynomials: assert assoc_laguerre(0, alpha, x) == 1 assert assoc_laguerre(1, alpha, x) == -x + alpha + 1 assert assoc_laguerre(2, alpha, x).expand() == \ (x**2/2 - (alpha + 2)*x + (alpha + 2)*(alpha + 1)/2).expand() assert assoc_laguerre(3, alpha, x).expand() == \ (-x**3/6 + (alpha + 3)*x**2/2 - (alpha + 2)*(alpha + 3)*x/2 + (alpha + 1)*(alpha + 2)*(alpha + 3)/6).expand() # Test the lowest 10 polynomials with laguerre_poly, to make sure it works: for i in range(10): assert assoc_laguerre(i, 0, x).expand() == laguerre_poly(i, x) X = assoc_laguerre(n, m, x) assert isinstance(X, assoc_laguerre) assert assoc_laguerre(n, 0, x) == laguerre(n, x) assert assoc_laguerre(n, alpha, 0) == binomial(alpha + n, alpha) p = Symbol('p', positive=True) assert assoc_laguerre(p, alpha, oo) == (-1)**p * oo assert assoc_laguerre(p, alpha, -oo) == oo assert diff(assoc_laguerre(n, alpha, x), x) == \ -assoc_laguerre(n - 1, alpha + 1, x) pytest.raises(ArgumentIndexError, lambda: assoc_laguerre(n, m, x).fdiff(1)) assert conjugate(assoc_laguerre(n, alpha, x)) == \ assoc_laguerre(n, conjugate(alpha), conjugate(x)) pytest.raises(ValueError, lambda: assoc_laguerre(-2.1, alpha, x)) # issue sympy/sympy#10961 X = assoc_laguerre(Rational(5, 2), alpha, x) assert isinstance(X, assoc_laguerre)
def test_laguerre_2(): # This fails due to issue for Sum, like issue sympy/sympy#5539 assert diff(assoc_laguerre(n, alpha, x), alpha) == \ Sum(assoc_laguerre(k, alpha, x)/(-alpha + n), (k, 0, n - 1))
def test_assoc_laguerre(): # generalized Laguerre polynomials: assert assoc_laguerre(0, alpha, x) == 1 assert assoc_laguerre(1, alpha, x) == -x + alpha + 1 assert assoc_laguerre(2, alpha, x).expand() == \ (x**2/2 - (alpha + 2)*x + (alpha + 2)*(alpha + 1)/2).expand() assert assoc_laguerre(3, alpha, x).expand() == \ (-x**3/6 + (alpha + 3)*x**2/2 - (alpha + 2)*(alpha + 3)*x/2 + (alpha + 1)*(alpha + 2)*(alpha + 3)/6).expand() # Test the lowest 10 polynomials with laguerre_poly, to make sure it works: for i in range(10): assert assoc_laguerre(i, 0, x).expand() == laguerre_poly(i, x) X = assoc_laguerre(n, m, x) assert isinstance(X, assoc_laguerre) assert assoc_laguerre(n, 0, x) == laguerre(n, x) assert assoc_laguerre(n, alpha, 0) == binomial(alpha + n, alpha) p = Symbol('p', positive=True) assert assoc_laguerre(p, alpha, oo) == (-1)**p*oo assert assoc_laguerre(p, alpha, -oo) == oo assert diff(assoc_laguerre(n, alpha, x), x) == \ -assoc_laguerre(n - 1, alpha + 1, x) pytest.raises(ArgumentIndexError, lambda: assoc_laguerre(n, m, x).fdiff(1)) assert conjugate(assoc_laguerre(n, alpha, x)) == \ assoc_laguerre(n, conjugate(alpha), conjugate(x)) pytest.raises(ValueError, lambda: assoc_laguerre(-2.1, alpha, x)) # issue sympy/sympy#10961 X = assoc_laguerre(Rational(5, 2), alpha, x) assert isinstance(X, assoc_laguerre)