КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Нелінійні алгебричні рівняння
Розглянемо систему нелінійних рівнянь (СНР) з n невідомими: . (3.6) Її можна записати у векторному вигляді: (3.7) де і . Розв’язання (3.6) — набагато складніша задача, ніж розв’язання одного рівняння. Такі системи, як правило, розв’язують лише ітераційними методами. Якщо то за нульове наближення до розв’язку можна взяти координати точок перетину графіків і До речі, якщо де замість такого рівняння можна розглядати систему нелінійних рівнянь: (3.8) де
Для трьох і більше невідомих задовільних способів знаходження нульових наближень немає, але іноді можна вибрати, виходячи з фізичних міркувань або аналізу задачі. Удаючись до методу Ньютона (МН) знаходження розв’язку (3.6), якщо відомий будь-який наближений розв’язок до , здійснюють розв’язанням методом Гаусса такої СЛАР відносно приростів : (3.9) Тут Розв’язавши СЛАР методом Гаусса (МГ), знайдемо наступні наближення: (3.10) За вдалого вибору розрахунки за методом Ньютона збігатимуться, і досить швидко (3 – 5 ітерацій). На практиці ітерації припиняють за виконання умови (3.11)
Приклад 3.2. Знайдемо методом Ньютона наближене значення розв’язку СНР
за початкового наближення = (1.5, -1.5), яке є точкою перетину графіків і Лістинг 3.2. Файл newton: // newton // Розв’язання СНР (3.7) методом Ньютона (3.9) function [s, x1] = newton(x, eps, smax); // x – нульове наближення, eps – точність визначення // кореня, smax – допустиме число ітерацій. // s – число виконаних ітерацій, x1 – розв’язок (3.6) s=0; while (s<=smax) then s=s+1; // Звернення до sfdf для обчислення складових СНР (3.9) [ff,dd] = sfdf(x); //Модифікація ПЧ СНР (3.9) ff(1)=-ff(1); ff(2)=-ff(2); // Розв’язання СЛАР (3.9) МГ на кожній ітерації CC=rref([dd ff]); [NN,MM]=size(CC); dx =CC(:,MM);
// Уточнення розв’язку за (3.10) x(1)=x(1)+dx(1); x(2)=x(2)+dx(2); // Перевірка виконання умови (3.11) if(sqrt((dx(1)^2+dx(2)^2)/2)<=eps) then break; end end; x1=x endfunction; // Функція sfdf формування складових СНР (3.9) function [ff,dd] = sfdf(x); x1=x(1); x2=x(2); // Обчислення матриці СНР (3.9) dd (1,1) = x1*2; dd(2,1) = exp(x1); dd (1,2) = x2*2; dd(2,2) = 1; // Обчислення ПЧ СНР (3.9) ff(1)=x1*x1+x2*x2-4; ff(2)=exp(x1)+x2-1; endfunction; //main program // Коментар до фактичних параметрів функції newton //[s, x1] = newton(x, eps, smax) [s, x1] = newton([1.5 -1.5], 0.001, 9)
Результати виконання newton X1(1) = 1.0041687 x1(2) = - 1.7296373 s = 4.
Дата добавления: 2015-05-23; Просмотров: 352; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |