Розв'язок системи нелінійних рівнянь методом Брауна в середовищі програмування Delphi

Теоритичні відомості по методу Брауна досить повно і ясно викладено за посиланням Розв'язок СНАР методом Брауна, тому опишемо коротко лише його основну ідею, після чого приступимо до розгляду delphi-проекту, який використовуючи алгоритм даного методу знаходить рішення системи двох нелінійних рівнянь. Метод полягає в послідовній лінеаризації кожного з рівнянь нелінійної системи, в результаті чого отримується явний вираз чергової змінної який підставляємо в усі нелінеарізовані рівняння. Даний процес продовжується до тих пір, поки не буде отримано вираз для останньої змінної, в якому вона вже не залежить від інших змінних. Далі здійснюється зворотний хід (як і в методі Гаусса) для отримання шуканих значень всіх змінних.

Отже, після запуску проекту "метод Брауна" на екрані появиться форма наступного вигляду:

Інтерфейс програми, яка використовуючи метод Брауна знаходить розв'язок системи двох нелінійних рівнянь

Інтерфейс програми, яка використовуючи метод Брауна знаходить розв'язок системи двох нелінійних рівнянь

Читати повністю

Метод Брауна. Розв'язок СНАР методом Брауна

На відміну від покрокової лінеаризації рівнянь нелінійної системи, яка здійснюється в методі Ньютона, Брауном було запропоновано проводити на кожному ітераційному кроці почергову лінеаризацию рівнянь системи, тобто лінеаризувати в системі спочатку перше рівняння, потім друге і т.д. Після чого, послідовно вирішувати одержувані таким чином рівняння. Для простоти викладу розглянемо даний процес для випадку двох нелінійних рівнянь.

Нехай потрібно знайти рішення системи:

Метод Брауна

і припустимо, що на k-й ітерації ми отримали наближення метод Брауна до розв'язку системи (1). Замінимо перше рівняння системи (1) лінійним, отриманим в результаті розкладу функції двох змінних в ряд Тейлора: метод Брауна. Далі, перетворимо дане рівняння до виду, в якому метод Брауна (позначимо через метод Брауна) виражено через метод Брауна. В результаті отримаємо:

Читати повністю