|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Sergey Smirnov 2:5020/2115.110 08 Nov 2001 03:44:24 To : Sergey Popov Subject : Интерполяция функций --------------------------------------------------------------------------------
SP> В итоге у меня получилась прямая, а при двух узлах Х0=-1, Х1=2,
SP> вообще
SP> парабола :((( Hаверное я все-таки не понял как надо интерполировать(
SP> применять этот мн-лен) Может быть мне кто-нибудь обьяснит, пожалуйста
формула правильная, скорее всего какая-нть ошибка в программе, вот для
сравнения рабочий исходник. написано для примера, так что чур не пинать за
отсутствие проверки корректности входных параметров
/************ вычисление значения многочлена Лагранжа *************
параметры:
x - значение аргумента
X,Y - узлы интерполяции
n - количество узлов интерполяции
*********************************************************************/
double g(double x,const double *X,const double *Y,int n)
{
double g=0;
for(int i=0;i<n;i++)
{
double p=1;
for(int j=0;j<n;j++)
if(j!=i)
p=p*(x-X[j])/(X[i]-X[j]);
g=g+Y[i]*p;
}
return(g);
}
Пока, Sergey! Увидимся там, где будет светло...
---
* Origin: Все животные равны, но некоторые равнее других. (2:5020/2115.110)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/191533be9f1f9.html, оценка из 5, голосов 10
|