Методи наближення функцій

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Чисельні методи в інформатиці

Частина тексту файла (без зображень, графіків і формул):

Мiнiстерство освiти і науки, молоді та спорту України Національний університет "Львівська полiтехнiка" Звіт до лабораторної роботи №2 на тему «Методи наближення функцій» з курсу: «Чисельні методи в інформатиці» Мета роботи Ознайомлення з методами наближення функцій та їх практичним застосуванням. Теоретичні відомості Перша інтерполяційна формула Ньютона Нехай  – значення деякої функції y=f(x), що відповідають рівновіддаленим значенням аргументу . Величина  називається скінченною різницею першого порядку функції f(x)в точці  (з кроком h) і позначається  або , тобто . Скінченна різниця другого порядку в точці xi визначається рівностями: . Скінченна різниця n-го порядку функції y=f(x) в точці  визначається рекурентною формулою: , де    Скінченні різниці зручно розміщувати у вигляді таблиці: Така таблиця називається діагональною таблицею різниць. Всі різниці будемо записувати цілими числами в одиницях молодшого розряду значень функції у вузлах інтерполювання. x y    …                              … … … … … …   Можна записати формулу:, (1) де  – біномні коефіцієнти. Остання формула виражає скінченні різниці через значення функції у вузлових точках. Нехай для функції y=f(x) задано її значення  для значень аргументу, які утворюють арифметичну прогресію  (i=0,1,...,n), де h – крок таблиці. Треба побудувати многочлен  степінь якого був би не більшим за n, а значення його у вузлах інтерполювання збігалися б із значенням функції y=f(x); тобто:  (i=0,1,2,...,n). (2) Многочлен  визначається у вигляді:  (3) Коефіцієнти  у (12) визначають так, щоб виконувались умови (11). Після деяких перетворень і застосування раніше введених означень скінченних різниць отримують співвідношення:  (4) Формула (4) називається першою інтерполяційною формулою Ньютона. Доведено, що існує лише один інтерполяційний многочлен n-го степеня, значення якого у вузлах інтерполяції  дорівнюють значенням функції . Індивідуальне завдання Варіант 11 Обчислити значення функції 1-ї формули Ньоютона / в 5 різних точках для двох різних інтервалів інтерполяції ([-3 3], [3 10]). Дослідити вплив степені полінома (n1=1,2,3 n2=4,5,6, n3=7,8,9) на точність одержаних результатів. Виконання обчислень Інтервал [-3 3] Вибираємо n1=2 h=(3-(-3))/2=3 x y    -3 0 0 3  0 0 3   3 3     Отриманий поліном P2(x) = (x*x+3*x)/6 Вибираємо n2=4 h=(3-(-3))/4=1.5 x y      -3 0 0 0 1.5 -3  -1.5 0 0 1.5 -1.5   0 0 1.5 0    1.5 1.5 1.5     3 3       Отриманий поліном P4(x) = -0.0246x4 +0.0002 x3 +0.3883 x2 +0.499 x Вибираємо n3=7 h=(3-(-3))/7=0.8571 x y         -3 0 0 0 0 0.4287 -0.8577 0.8568 0.0006  -2.1429 0 0 0 0.4287 -0.429 -0.0009 0.8574   -1.2858 0 0 0.4287 -0.0003 -0.4281 0.8565    -0.4287 0 0.4287 0.4284 -0.4284 0.4284     0.4287  0.4287 0.8571 0 0      1.2858 1.2858 0,8571 0       2.1429 2.1429 0.8571        3 3          Інтервал [3 10] На цьому інтервалі всі отримані поліноми збігаються з точною функцією P2(x)= P4(x)= P7(x)=у(х)=х Програма на мові Matlab clc clear all format compact %Точна функція на проміжку [-3 3] x=[-3 0 3.5] y=[0 0 3.5] plot(x,y,'LineWidth',1.5) hold on axis([-4 5 -1 5]) xx=[-3.5 -0.1 0.1 1.6 3.5] yy=[0 0 0.1 1.6 3.5] %наближена функція при n1=2, h=3 x2=[-3.5 -0.1 0.1 1.6 3.5] y2=x2.^2/6+x2/2 plot(x2,y2,':') grid %наближена функція при n2=4, h=1.5, проміжок [-3 3] y3 = -0.0246*x2.^4+0.0002*x2.^3+0.3883*x2.^2+0.499*x2 plot(x2,y3,'o') %наближена функція при n3=7, h=0.8571, проміжок [-3 3] y4=0.0000004*x2.^7+0.003*x2.^6-0.0001003*x2.^5-0.0531*x2.^4-0.000596*x2.^3+0.3778*x2.^2+0.5055*x2+0.1361 plot(x2, y4,'k:','LineWidth',1.5) legend('Точна функція','Наближена функція при n=2','Наближена функція при n=4','Наближена функція при n=7') %абсолютна похибка figure(2) absPoh2 = abs(yy - y2) absPoh4 = abs(yy - y3) absPoh7 = abs(yy - y4) semilogy(x2, absPoh2,':') hold on semilogy(x2, absPoh4, 'LineWidth',1.5) semilogy(x2, absPoh7); legend('Абсолюнта похибка при n1=2','Абсолюнта похибка при n2=4','Абсолюнта похибка при n3=7') %відносна похибка figure(3) vidPoh2 = abs(yy- y2)./abs(yy) vidPoh4 = abs(yy - y3)./abs(yy) vidPoh7 = abs(yy - y4)./abs(yy) semilogy(x2, vidPoh2,':') hold on semilogy(x2, vidPoh4, 'LineWidth',1.5) semilogy(x2, vidPoh7); legend('Відносна похибка при n1=2','Відносна похибка при n2=4','Відносна похибка при n3=7') %Точна функція на проміжку [3 10] a1 = [2 7.5 10.5]; b1=a1; figure(4) plot(a1,b1) axis([0 11.5 0 11.5]) hold on %наближена функція при n1=2, h=3.5, проміжок [3 10] a2 = [2 4 6 7 10.5]; b2=a2; plot(a2,b2,'g*') %наближена функція при n2=4, h=1.75, проміжок [3 10] b3=a2 plot(a2,b3,'o') %наближена функція при n2=7, h=1, проміжок [3 10] b4=a2 plot(a2,b4,'r:') legend('Точна функція','Наближена функція при n=2','Наближена функція при n=4','Наближена функція при n=7') grid Графіки результату / Рис. 1 Графіки точної функції та функцій, утворених поліномами на проміжку [-3 3] / Рис. 2 Графіки абсолютних похибок на проміжку [-3 3] / Рис. 3 Графіки відносних похибок на проміжку [-3 3] / Рис. 4 Графіки точної функції та функцій, утворених поліномами на проміжку [ 3 10] З графіка видно, що всі функції співпадають, отже абсолютні і відносні похибки рівні 0 Висновок На цій лабораторній роботі я ознайомилася з методами наближення функцій та їх практичним застосуванням. Розробила програму, яка будує графіки точної та наближених функцій, визначила, що для функції у=х всі поліноми збігаються з самою функцією.
Антиботан аватар за замовчуванням

23.05.2016 19:05-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!