Материал: №5 лабораторная МП

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Федеральное агентство связи Ордена

Трудового Красного Знамени

федеральное бюджетное образовательное учреждение высшего образования

«Московский Технический Университет Связи и Информатики»

(МТУСИ)

Кафедра Информатики

Предмет: Введение в математические пакеты прикладных программ

Лабораторная работа по ВвМППП № 5

Тема:

“ Технология аппроксимации интерполяции функций в среде пакета Scilab”

Вариант 00

Выполнил:

Великий преподаватель

__________________________

Москва 0000

1. Общее задание

  1. Изучите материал Темы 2.2. (п. 2.2.1).

  2. Выберите индивидуальное задание: номера узлов и номер аппроксимируемой функции из табл. 2.2.2-1; узлы аппроксимации и значения функции в узлах из табл. 2.2.2-2.

  3. Задайте в виде векторов значения узлов и значения функции в выбранных узлах;

  4. Вычислите коэффициенты аппроксимирующих функции для линейной, квадратичной и кубической аппроксимации с использованием функции datafit( )и получите три аппроксимирующие функции в явном виде.

  5. Получите с использованием этих функций значение аппроксимирующей функции в произвольной точке, принадлежащей отрезку, но не совпадающей с узлами аппроксимации, и сравните полученные результаты.

  6. Построите графики табличной и трёх аппроксимирующих функций в одном шаблоне, снабдив их легендой.

  7. Проведите линейную и кубическую интерполяцию функции с использованием функции interpln(), заданной таблично. Получите значения интерполирующей функций в точке, не совпадающей с узлами интерполяции, и проанализируйт полученные результаты.

  8. Построите графики табличной и двух интерполирующих функций в одном шаблоне, снабдив их легендой.

  9. Предоставьте результаты работы преподавателю, ответить на поставленные вопросы.

  10. Оформите отчет по выполненной работе.

Sce-функции для вычисления коэффициентов аппроксимации

//Лабораторная работа №5 по теме:"Технология аппроксимации и интерполяции функциий"

// Вариант --

// Выполнил:

// Задание вектора значений узлов

x=[-5 -3.5 -3 -2 -1 0 0.5];

// Задание вектора значений функции в выбранных узлах

y=[2.44 2.13 1.455 1.437 1.175 0.375 -6.51*10^(-3)];

// Задание матрицы значений исходных данных

z=[x;y];

// Вычисление коэффициентов аппроксимирующих функций

// Вызов sce-функции для вычисления коэфициентов

exec('approx1.sce');

exec('approx2.sce');

exec('approx3.sce');

// Для линейной аппроксимации

a=[0;0];// Вектор начальных приближений

[a,err1]=approx1(a,z)

err1 =

0.3006085

a =

0.4302198

-0.4281394

// Для квадратичной аппроксимации

b=[0;0;0];// Вектор начальных приближений

[b,err2]=approx2(b,z)

err2 =

0.2170963

b =

0.3856478

-0.5851153

-0.0366147

// Для кубической аппроксимации

c=[0;0;0;0];// Вектор начальных приближений

[c,err3]=approx3(c,z)

err3 =

0.1614672

c =

0.4308777

-0.7971947

-0.1856501

-0.0215441

//Получим аппроксимирующие функции в явном виде

deff('y=f1(x)','y=a(1)+a(2).*x');

deff('y=f2(x)','y=b(1)+b(2).*x+b(3).*x.^2');

deff('y=f3(x)','y=c(1)+c(2).*x+c(3).*x.^2+c(4).*x.^3');

//Получим значение аппроксимирующих функций в произвольной точке x =-4

[f1(-4);f2(-4);f3(-4)]

ans =

2.1427773

2.1402733

2.0280742

//Построение графиков заданной и аппроксимирующих функций

xgrid()

xtitle('Построение графиков заданной и аппроксимирующих функций','X','Y')

plot(x,y,'o')

mtlb_hold('on')

t=-5.2:0.1:1.2;

plot(t,f1(t),'r-')

plot(t,f2(t),'g--')

plot(t,f3(t),'k:')

legend('y(t)','f1(t)','f2(t)','f3(t)',-1);

// Вычисление значений интерполирующих функций в произвольной точке x = -4

fip=interpln(z,-4);//линейная интерполяция

// Вычисление коэффициентов сплайна

k=splin(x,y);

f3ip=interp(-4,x,y,k)// Кубическая интерполяция

f3ip =

2.9232047

// Построение графиков заданной и интерполирующих функций

scf(1);

xgrid()

plot(x,y,'o')

mtlb_hold('on')

y1=interpln(z,t);

y3=interp(t,x,y,k);

plot(t,y1,'r-')

plot(t,y3,'k-.')

xtitle('Построение графиков заданной и интерполирующих функций','X','Y')

legend('y(t)','y1(t)','y3(t)',-1);

Источник: https://studfile.net/preview/16701818/