
15.05.2010, 22:38
|
|
Познающий
Регистрация: 22.11.2009
Сообщений: 53
С нами:
8667664
Репутация:
0
|
|
Всем привет.Проблема в следующем: у меня есть следующая функция, для построения полинома Лагранжа:
Код:
double Lagrange(double *X, double *Y, int NumberOfKnots, double X_input){
double solution = 0, *temp;
int i, j;
temp = new double[NumberOfKnots];
for(i = 0;i < NumberOfKnots;i++){
temp[i] = 1;
for(j = 0;j < NumberOfKnots;j++){
if(i != j){
temp[i] = temp[i] * (X_input - X[j]) / (X[i] - X[j]);
}
}
solution = solution + Y[i] * temp[i];
}
delete []temp;
return solution;
}
Теперь мне нужно взять первую и вторую производную, ток я хз как. Есть конечно одна идея, а именно: находить производные от выражений Y[i] * temp[i] и потом просуммировать все полученные производные, но может кто алгоритм получше подскажет.Заранее спасибо.
|
|
|