scipy.special.
gegenbauer#
- scipy.special.gegenbauer(n, alpha, monic=False)[source]#
Gegenbauer (ultraspherical) polynomial.
Defined to be the solution of
for \alpha > -1/2; C_n^{(\alpha)} is a polynomial of degree n.
- Parameters:
- nint
Degree of the polynomial.
- alphafloat
Parameter, must be greater than -0.5.
- monicbool, optional
If True, scale the leading coefficient to be 1. Default is False.
- Returns:
- Corthopoly1d
Gegenbauer polynomial.
Notes
The polynomials C_n^{(\alpha)} are orthogonal over [-1,1] with weight function (1 - x^2)^{(\alpha - 1/2)}.
Examples
>>> import numpy as np >>> from scipy import special >>> import matplotlib.pyplot as plt
We can initialize a variable
p
as a Gegenbauer polynomial using thegegenbauer
function and evaluate at a pointx = 1
.>>> p = special.gegenbauer(3, 0.5, monic=False) >>> p poly1d([ 2.5, 0. , -1.5, 0. ]) >>> p(1) 1.0
To evaluate
p
at various pointsx
in the interval(-3, 3)
, simply pass an arrayx
top
as follows:>>> x = np.linspace(-3, 3, 400) >>> y = p(x)
We can then visualize
x, y
usingmatplotlib.pyplot
.>>> fig, ax = plt.subplots() >>> ax.plot(x, y) >>> ax.set_title("Gegenbauer (ultraspherical) polynomial of degree 3") >>> ax.set_xlabel("x") >>> ax.set_ylabel("G_3(x)") >>> plt.show()