03 March 2022 10:53:02 PM
JACOBI_POLYNOMIAL_TEST
C version
Test the JACOBI_POLYNOMIAL library.
TEST01:
J_POLYNOMIAL_VALUES stores values of
the Jacobi polynomials.
J_POLYNOMIAL evaluates the polynomial.
Tabulated Computed
N A B X J(N,A,B,X) J(N,A,B,X) Error
0 0 1 0.5 1 1 0
1 0 1 0.5 0.25 0.25 0
2 0 1 0.5 -0.375 -0.375 0
3 0 1 0.5 -0.484375 -0.484375 0
4 0 1 0.5 -0.132812 -0.132812 0
5 0 1 0.5 0.275391 0.275391 0
5 1 1 0.5 -0.164062 -0.164062 0
5 2 1 0.5 -1.1748 -1.1748 0
5 3 1 0.5 -2.36133 -2.36133 0
5 4 1 0.5 -2.61621 -2.61621 0
5 5 1 0.5 0.117188 0.117188 0
5 0 2 0.5 0.421875 0.421875 0
5 0 3 0.5 0.504883 0.504883 0
5 0 4 0.5 0.509766 0.509766 0
5 0 5 0.5 0.430664 0.430664 0
5 0 1 -1 -6 -6 0
5 0 1 -0.8 0.03862 0.03862 5.06539e-16
5 0 1 -0.6 0.81184 0.81184 0
5 0 1 -0.4 0.03666 0.03666 -2.22045e-16
5 0 1 -0.2 -0.48512 -0.48512 5.55112e-17
5 0 1 0 -0.3125 -0.3125 0
5 0 1 0.2 0.18912 0.18912 -2.77556e-17
5 0 1 0.4 0.40234 0.40234 0
5 0 1 0.6 0.01216 0.01216 -2.77556e-17
5 0 1 0.8 -0.43962 -0.43962 -5.55112e-17
5 0 1 1 1 1 0
TEST02:
J_POLYNOMIAL_ZEROS computes the zeros of J(n,a,b,x);
Check by calling J_POLYNOMIAL there.
Zeros for J(1,0.500000,0.500000)
0: 0.000000
Evaluate J(1,0.500000,0.500000)
0: 0.000000
Zeros for J(2,0.500000,0.500000)
0: -0.500000
1: 0.500000
Evaluate J(2,0.500000,0.500000)
0: -0.000000
1: -0.000000
Zeros for J(3,0.500000,0.500000)
0: -0.707107
1: 0.000000
2: 0.707107
Evaluate J(3,0.500000,0.500000)
0: 0.000000
1: -0.000000
2: -0.000000
Zeros for J(4,0.500000,0.500000)
0: -0.809017
1: -0.309017
2: 0.309017
3: 0.809017
Evaluate J(4,0.500000,0.500000)
0: 0.000000
1: 0.000000
2: 0.000000
3: 0.000000
Zeros for J(5,0.500000,0.500000)
0: -0.866025
1: -0.500000
2: 0.000000
3: 0.500000
4: 0.866025
Evaluate J(5,0.500000,0.500000)
0: -0.000000
1: -0.000000
2: 0.000000
3: 0.000000
4: 0.000000
Zeros for J(1,1.000000,1.500000)
0: 0.111111
Evaluate J(1,1.000000,1.500000)
0: 0.000000
Zeros for J(2,1.000000,1.500000)
0: -0.348215
1: 0.502061
Evaluate J(2,1.000000,1.500000)
0: -0.000000
1: -0.000000
Zeros for J(3,1.000000,1.500000)
0: -0.578486
1: 0.070894
2: 0.684062
Evaluate J(3,1.000000,1.500000)
0: 0.000000
1: -0.000000
2: -0.000000
Zeros for J(4,1.000000,1.500000)
0: -0.706793
1: -0.217417
2: 0.332314
3: 0.782371
Evaluate J(4,1.000000,1.500000)
0: 0.000000
1: -0.000000
2: -0.000000
3: -0.000000
Zeros for J(5,1.000000,1.500000)
0: -0.784837
1: -0.409111
2: 0.052074
3: 0.500669
4: 0.841205
Evaluate J(5,1.000000,1.500000)
0: -0.000000
1: -0.000000
2: 0.000000
3: 0.000000
4: -0.000000
Zeros for J(1,2.000000,0.500000)
0: -0.333333
Evaluate J(1,2.000000,0.500000)
0: 0.000000
Zeros for J(2,2.000000,0.500000)
0: -0.645661
1: 0.184123
Evaluate J(2,2.000000,0.500000)
0: -0.000000
1: -0.000000
Zeros for J(3,2.000000,0.500000)
0: -0.780044
1: -0.212793
2: 0.463425
Evaluate J(3,2.000000,0.500000)
0: -0.000000
1: 0.000000
2: 0.000000
Zeros for J(4,2.000000,0.500000)
0: -0.850186
1: -0.444336
2: 0.099507
3: 0.623586
Evaluate J(4,2.000000,0.500000)
0: 0.000000
1: 0.000000
2: -0.000000
3: 0.000000
Zeros for J(5,2.000000,0.500000)
0: -0.891404
1: -0.588710
2: -0.156285
3: 0.313970
4: 0.722429
Evaluate J(5,2.000000,0.500000)
0: -0.000000
1: 0.000000
2: 0.000000
3: -0.000000
4: 0.000000
TEST03:
J_QUADRATURE_RULE computes the quadrature rule
associated with J(n,a,b,x);
X W
0: -0.810587 0.006203
1: -0.550876 0.061938
2: -0.230689 0.216462
3: 0.113888 0.398821
4: 0.443600 0.431011
5: 0.720815 0.259969
6: 0.913850 0.062257
Use the quadrature rule to estimate:
Q = Integral (-1<x<+1) J(i,a,b,x) J(j,a,b,x) (1-x)^a (1+x)^b dx
I J Q_Estimate Q_Exact
0 0 1.43666 1.43666
0 1 1.249e-16 0
0 2 2.22045e-16 0
0 3 8.32667e-17 0
0 4 2.77556e-16 0
0 5 1.38778e-17 0
1 1 1.54717 1.54717
1 2 -5.55112e-17 0
1 3 4.996e-16 0
1 4 -1.11022e-16 0
1 5 1.08247e-15 0
2 2 1.45203 1.45203
2 3 -2.77556e-16 0
2 4 1.66533e-15 0
2 5 2.77556e-17 0
3 3 1.32615 1.32615
3 4 -3.33067e-16 0
3 5 2.27596e-15 0
4 4 1.2068 1.2068
4 5 -9.15934e-16 0
5 5 1.10154 1.10154
TEST04:
J_DOUBLE_PRODUCT_INTEGRAL returns the weighted integral of
J(i,a,b,x) * J(j,a,b,x);
Q = Integral (-1<x<+1) J(i,a,b,x) J(j,a,b,x) (1-x)^a (1+x)^b dx
I J Q
0 0 1.