Лабораторная работа №1 / Лаба1_Интерполяция
.doc
Министерство Образования РФ
Санкт- Петербургский государственный
электротехнический университет “ЛЭТИ”
ФКТИ
Кафедра ВМ
Отчет по лабораторной работе №1
“Интерполяция”
По дисциплине “Вычислительная математка”
Вариант №1
Выполнил:
группа: 3371,
Артемьев Ю.Г
Проверил:
Ингстер Ю.И.
Санкт – Петербург
2005
Текст программы( Интерполяция ):
%Part 1 УМЕНЬШЕНИЕ ШАГА ИНТЕРПОЛЯЦИИ
clc;
clear;
a = 0;
b = 300;
t=a:(b-a)/300:b;
plot(t,cos(((t).^(1/2))/2))
grid
pause;
for n=1:5;
x=a:(b-a)/n:b;
p=polyfit(x,cos(((x).^(1/2))/2),n);
y=polyval(p,t);
plot(t,cos(((t).^(1/2))/2),t,y)
grid
pause;
dy(n,:)=(y-cos(((t).^(1/2))/2));
plot(t,dy(n,:))
delta1(n)=max(abs(dy(n)));
end
save result11 a b delta1
plot(t,dy(1,:), t,dy(2,:),'--', t,dy(3,:),'-.', t,dy(4,:),':', t,dy(5,:),'.')
grid
pause;
%Part 2 УВЕЛИЧЕНИЕ СТЕПЕНИ ИНТЕРПОЛЯЦИИ ПРИ ФИКСИРОВАННОМ ШАГЕ
imax=10
h=(b-a)/imax
x=a:h:b;
for n=1:6
dy(n,:)=zeros(size(t));
for i=1:imax-n
xx=x(i:i+n);
p=polyfit(xx,cos(((xx).^(1/2))/2),n) ;
r=polyval(p,t) - cos(((t).^(1/2))/2);
xm=(x(i)+x(i+n))/2 ;
xa=xm-h/2;
xb=xm+h/2;
dy(n,:)=dy(n,:)+r.*((t<xb)&(t>xa));
end
delta2(n)=max(abs(dy(n,:)))
save result12 h delta2
plot(t,dy(n,:), x,zeros(size(x)),'x')
grid
end
%Part 3 ОЦЕНИВАНИЕ ПРОИЗВОДНЫХ
ht=t(2)-t(1);
df=cos(((t).^(1/2))/2);
for i=1:7
df=diff(df);
df=df/ht;
proizv(i)=max(abs(df))
plot(df), pause,
end
save result13 proizv