Overview

SymPy 1.8, released on May 10, 2021, improves support for special mathematical functions and symbolic simplification.

Main Features

Improved special functions

Bessel functions, gamma functions, and orthogonal polynomials benefit from improvements in their numerical and symbolic evaluation.

python
from sympy import symbols, besselj, gamma, simplify, oo

x = symbols('x')

# Bessel function of the first kind
expr = besselj(0, x)
print(expr.series(x, 0, 6))
# 1 - x**2/4 + x**4/64 + O(x**6)

# Improved gamma function simplification
n = symbols('n', positive=True, integer=True)
print(simplify(gamma(n + 1)))  # factorial(n)

Simplification improvements

The simplification engine is improved to better handle trigonometric expressions, logarithms, and expressions involving roots.

python
from sympy import sin, cos, simplify, sqrt, symbols

x = symbols('x')

# Trigonometric simplification
expr = sin(x)**2 + cos(x)**2
print(simplify(expr))  # 1

# Root simplification
expr2 = sqrt(8) + sqrt(2)
print(simplify(expr2))  # 3*sqrt(2)

Sources