Chebyshev
Polynomials
of the Second Kind 
Mathematica
notebooks: OrthoPIter and cell ChebyU
C and Fortran-90 function: ChebyU
Background
By comparison with the Chebyshev polynomial of
the first kind, Tn(x), the polynomial of the second kind, Un(x), is relatively little used. One reason
for this is that near the endpoints x = ±1 the polynomial changes rapidly, as seen in
Visualization below.
Function
Definition
Chebyshev's polynomial of the second kind can be defined in terms of the differential equation
or its explicit expression in trigonometric form
![]()
from which follows the reflection symmetry Un(-x) = (-1)nUn(x). Alternatively, one can use the recurrence relation
![]()
to build up the Un , given U0(x) = 1 and U1(x) = 2x. From the recurrence equation and these values one also derives that Un (1) = n+1.
Formulas for Chebyshev polynomials of the second kind, from n = 0 up to a chosen maximum value n = maxn, can be generated iteratively by using cell ChebyU in notebook OrthoPIter, described in the chapter Overview of Orthogonal Polynomials. For example, with maxn = 4 one obtains:
![]()
![]()
![]()
Visualization
A plot of the Chebyshev polynomials of the second kind as functions of n and x shows a very interesting surface, arising from their relation to sine and cosine functions. We start the surface at n = 2 and run up to n = 8. (The functions exist for noninteger n but are not orthogonal.) The range of x is limited to [-0.8, 0.8] so that values for small n are not dwarfed by those for large n.
This graphic is obtained by running Mathematica cell ChebyU.
Algorithm
and Program
For computing numerical values of
Un(x) we use the explicit polynomial
expressions for n < 4, and for most x values the trigonometric form for larger n. For x near ±1 this form
becomes indeterminate, therefore a suitable approximation—which requires accuracy parameter eps—is
needed.
![]()
Within this range of x we use the approximation
![]()
ChebyU
therefore requires the additional input parameter eps to control the accuracy
of this approximation near the endpoints.
C
driver and function
Test
Values
Exact test values of Un(x) can be generated by running ChebyU cell in Mathematica notebook OrthoP, except that the Mathematica function is indeterminate at the endpoints x = ±1, so the limiting values have to be used.
|
x \ n |
1 |
2 |
3 |
4 |
|
–1.0 |
–2.0 |
3.0 |
–4.0 |
5.0 |
|
–0.5 |
–1.0 |
0 |
1.0 |
–1.0 |
|
0.0 |
0 |
–1.0 |
0 |
1.0 |
|
0.5 |
1.0 |
0 |
–1.0 |
–1.0 |
|
1.0 |
2.0 |
3.0 |
4.0 |
5.0 |