/* { dg-options "-O1 -floop-parallelize-all" } */ | |
double lagrange(const double x[], | |
const double y[], | |
long n, | |
double xval) | |
{ | |
long i, j; | |
double yval = 0.; | |
for( i=0; i < n; i++ ) | |
{ | |
double l = 1.; | |
for( j=0; j < n; j++ ) | |
if( i != j ) | |
l *= (xval-x[j])/(x[i]-x[j]); | |
yval += y[i]*l; | |
} | |
return yval; | |
} |