Эксперименты лаба4,5(2курс)
.pdfРис. 2. Графики исходной (f(x) = ln x ¡ sin2 x ¡ ex) и интерполирующей функций
> for i from 0 to N do
# построение таблицы значений функции в узлах интерполяции x[i] := x0+h*i; y[i] := yf(x[i])
end do:
# Процедура построения конечных разностей > DeltaY := proc (k, i)
#k порядок i-той конечной разности if k = 1 then return y[i+1]-y[i]
else
return DeltaY(k-1, i+1)-DeltaY(k-1, i) end if;
end proc;
#Процедура создания интерполяционного многочлена в форме Нью-
тона
> Ntn:=proc(x)
#x неизвестная переменная в интерполяционном многочлене local S, A , i, j, t;
#S переменная, для накопления суммы слагаемых (многочлен Ньютона)
#A слагаемое в интерполяционном многочлене
#i, j переменные циклов
global N,h,x0; t:=(x-x0)/h; S:=0;
for i from 0 to N do if i=0 then A:=y[i] else A:=DeltaY(i,0)/i!;
11
for j from 1 to i do
A:=evalf(A*(t-j+1)) # получение слагаемых end do;
end if;
#накопление всех слагаемых образование многочлена Ньютона S:=S+A;
end do; return S; end proc;
#сравнение функции с построенным интерполяционным многочле-
ном
> plot([Ntn(x),yf(x)],x=0..3);
Рис. 3. Графики исходной функции f(x) = sin x ln x и интерполирующей функции
12