Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабы / Лабы 4 / lab2_2000

.DOC
Скачиваний:
24
Добавлен:
17.04.2013
Размер:
24.06 Кб
Скачать

ЛАБОРАТОРНАЯ РАБОТА №2. ИНТЕРПОЛЯЦИЯ ФУНКЦИЙ.

1.Изучить подпрограмму-функцию lagr.m, разобраться в том, как данная подпрограмма выполняет вычисление интерполяционного многочлена Лагранжа.

function [p]=lagr(t,x,f)

% lagr(t,x,f)

% Вычисление значения интерполяционного полинома

% Лагранжа в точке t по значениям функции в узлах (x,f)

% t - число, x, f - вектора одинаковой размерности

p=0;

for i=1:length(x)

w=t-x;

w(i)=1;

u=prod(w);

w=x-x(i);

w(i)=1;

u=u/prod(w);

p=p+f(i)*u;

end

2. Создать массив значений аргумента x=[-2:1:2] и соответствующий ему массив значений функции sin(x). С использованием процедуры-функции lagr.m по полученным массивам найти значение интерполяционного полинома в точке x=1.7. Каков порядок использованного полинома? Выписать в тетрадь значение полинома, значение функции sin и полученную ошибку интерполяции для точки x=1.7.

Какова теоретическая оценка ошибки интерполяции в данной точке

(см. лекции, семинар №2)?

3. Используя вызовы процедуры-функции lagr.m, создать собственную процедуру­функцию lag.m, которая формирует массив значений интерполяционного полинома для заданного набора (массива) значений аргумента t: function [z]=lag(t,x,f), где z - массив значений полинома, t - массив значений аргумента полинома; x, f - массивы, содержащие соответственно абсциссы и ординаты узлов интерполяции.

Следующий пункт задания выполнить для полинома, полученного в пункте 2, приняв a=-2, b=2, h=0,1

4. Построить график функции ошибки интерполяции eps(u)=L(u)-f(u), где L(u) - интерполяционный полином, f(u) - интерполируемая функция, для значений аргумента u из [a;b] с шагом h. (См. help plot) Выпишите в тетрадь: для какого значения аргумента u получилась наибольшая ошибка, величину ошибки и теоретическую оценку ошибки для этого значения u.

5. Построить интерполяционный полином для sin(x), по узлам x= -2, -1.1756, 0, 1.1756, 2.

Повторить выполнение пункта 4 для a=-2, b=2, h=0,1

6. Для заданной преподавателем функции f(x) и отрезка интерполяции [a,b] построить полиномы Лагранжа 5 и 8 порядков, выбирая узлы интерполяции:

а) xj = a + j(b-a)/n,

б) xj = [ b+a + (b-a)cos(2j+1)Pi/(2n+2) ]/2, j=0,1,…,n (n - порядок интерполяционного полинома).

С каждым из четырех полученных полиномов повторить выполнение пункта 4, выбирая значение h=0,1 (если преподаватель не указал иное значение шага абсциссы для построения графиков).

7. Покажите отчет выполнения работы преподавателю и объясните результаты выполнения пункта 6.

Соседние файлы в папке Лабы 4