00001 double* jacobi(int n, double x) { 00002 00003 int i ; 00004 double* J = new double[n+1] ; 00005 00006 if (n==0) { 00007 00008 J[0] = double(1) ; 00009 } 00010 else { 00011 00012 J[0] = double(1) ; 00013 J[1] = double(2) * x - 1 ; 00014 for ( i = 2 ; i < n+1 ; i++) { 00015 double l = double(i) ; 00016 J[i] = ((2*l + 1)*(l*(l+1)*x - 1)*J[i-1] - (l-1)*(l+1)*(l+1)*J[i-2])/(l*l*(l+2)) ; 00017 00018 } 00019 } 00020 return J ; 00021 }
1.4.6