Рішення систем рівнянь методом простої ітерації (реалізація в середовищі Delphi)

За допомогою чисельних методів вирішується велика кількість задач, що відносяться до різних областей науки. Більшість з цих задач зводиться до рішення систем лінійних алгебраїчних рівнянь (СЛАР) виду , де  — матриця коефіцієнтів,  — вектор правих частин і  — шукане рішення. Як приклад задача, що зводиться до рішення лінійних систем, можна привести задачу моделювання теплового розподілу за допомогою методу скінченних різниць.

Всі методи розв'язку СЛАР можна розділити на дві великі групи: прямі та ітераційні. Прямі методи знаходять точне рішення (у відсутності помилок округлення) за скінченне число кроків. Ітераційні — на кожному кроці зменшують величину помилки між точним рішенням і знайденим на поточній ітерації.

Велика частина прямих методів грунтуються на процесі виключення невідомих, але для ряду практичних завдань, використання прямих методів являється недоречним (розв'язок СЛАР великої розмірності), так як їх обчислювальний процес являється занадто складним, або вони працюють занадто довго. У таких випадках використовують ітераційні методи: метод простої ітерації (метод Якобі), метод Зейделя, метод релаксації та інші. У даному параграфі розглянемо delphi-проект, що реалізує один з найвідоміших ітераційних методів, а саме метод простої ітерації.

Головне вікно розглядуваного delphi-проекту

Отже, як видно з рисунка, крім текстових міток TLabel,головна форма проекту містить редактор введення цілих чисел TSpinEdit (відповідає за кількість рівнянь та невідомих системи), дві таблиці типу TStringGrid (призначені для введення коефіцієнтів при невідомих сисетми та значень стовпця вільних членів), дві кнопки типу TButton (призначені для рішення системи рівнянь та підготовки delphi-проекту до нового прикладу) та область виведення багаторядкового тексту TMemo (призначена для відображення результатів роботи програми).

Розглянемо роботу delphi-програми на прикладі рішення системи лінійних рівнянь наступного вигляду:

Система лінійних рівнянь

Для цього, запустивши delphi-проект, на першому кроці, переходимо до редактора «Кількість невідомих системи»і, за допомогою кнопок що знаходяться в його правій частині, змінюємо значення, яке відображається в компоненті, на число чотири. На наступному кроці, способом введення з клавіатури, кожну з таблиць типу TStringGrid заповнюємо значеннями коефіцієнтів при невідомих та значеннями елементів стовпця вільних членів.

Заповнення елементів головної форми вхідними даними

І на останньому кроці, скориставшись кнопкою «Розв'язати систему рівнянь» (реалізує алгоритм методу простої ітерації), знаходимо шукане рішення (виводиться у компоненті TMemo).

Розв'язок системи лінійних рівнянь використовуючи метод простої ітерації

Скачати delphi-проект метод простої ітерації.

Матеріал був корисним, поділись в соціальних мережах:
Якщо тобі сподобалась дана тема, залиш свій коментар