scipy.special.
jacobi#
- scipy.special.jacobi(n, alpha, beta, monic=False)[source]#
Jacobi polynomial.
Defined to be the solution of
for ; is a polynomial of degree .
- Parameters:
- nint
Degree of the polynomial.
- alphafloat
Parameter, must be greater than -1.
- betafloat
Parameter, must be greater than -1.
- monicbool, optional
If True, scale the leading coefficient to be 1. Default is False.
- Returns:
- Porthopoly1d
Jacobi polynomial.
Notes
For fixed , the polynomials are orthogonal over with weight function .
References
[AS]Milton Abramowitz and Irene A. Stegun, eds. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. New York: Dover, 1972.
Examples
The Jacobi polynomials satisfy the recurrence relation:
This can be verified, for example, for and over the interval :
>>> import numpy as np >>> from scipy.special import jacobi >>> x = np.arange(-1.0, 1.0, 0.01) >>> np.allclose(jacobi(0, 2, 2)(x), ... jacobi(1, 2, 1)(x) - jacobi(1, 1, 2)(x)) True
Plot of the Jacobi polynomial for different values of :
>>> import matplotlib.pyplot as plt >>> x = np.arange(-1.0, 1.0, 0.01) >>> fig, ax = plt.subplots() >>> ax.set_ylim(-2.0, 2.0) >>> ax.set_title(r'Jacobi polynomials $P_5^{(\alpha, -0.5)}$') >>> for alpha in np.arange(0, 4, 1): ... ax.plot(x, jacobi(5, alpha, -0.5)(x), label=rf'$\alpha={alpha}$') >>> plt.legend(loc='best') >>> plt.show()