Дисциплина:
Раздел:
Выполнил:

Вычислительная математика

Метод Лагранжа

ГУ, Касинский А.

                                             www. domath.ru

>    #Для началаобъявим значения x и соотв. им значения y. Выполним это отдельно друг от друга.

>    #переменная x объявлена как массив, состоящий из шести элементов.

       x:=array(1..6,[0.41,0.46,0.52,0.60,0.65,0.72]):

>    #переменная y объявлена как массив, состоящий из шести элементов

        y:=array(1..6,[2.57,2.32,2.09,1.86,1.74,1.62]):

>    #объявим единичные коэффициенты
C[1]:=1:
C[2]:=1:
C[3]:=1:

 C[4]:=1:
 C[5]:=1:
 C[6]:=1:

>    #С помощью двойного цикла введем механизм вычисления неизвестных коэффициентов многочлена.

>    for i from 1 to 6
                  do
for j from 1 to 6
                   do
                       if(i<>j)
                             then C[i]:=C[i]*(l-x[j])/(x[i]-x[j])
                        fi;
                   od;
                  od;

>    #Теперь нам уже известны коэффициенты C[i].
#Объявим интер. многочлен Лагранжа как следующую сумму.

>    L:=sum('C[i]*y[i]','i'=1..6):#функция summ производит суммирование элементов (диапозон сумм. 1..6)

>    L:=simplify(L);#данная функция придает стандартный вид многочлена Лагранжа

L := -50.44932598*l+123.1471140*l^2-166.7312064*l^3-35.41181862*l^5+119.4693061*l^4+11.08300607

>    #Функция plot представит график
plot(
[L,
[
[0.41, 2.57418],
[0.46, 2.32513],
[0.52, 2.09336],
[0.60, 1.86203],
[0.65, 1.74926]
]
],l=0.41..0.72,color=[green,blue], style=[line,point]);
#Обратите внимание, что на одном графике отображены сам многочлен Лагранжа и конкретные значения [x,y].  

[Maple Plot]

>    q:=subs(l=0.665,L);
# Данная функция подставляет число 0.665 вместо параметра l многочлена Лагранжа
#и возвращает её значение.Это и является ответом =))

q := 1.71917171