Висновок:На лабораторній роботі я розв’язав систему лінійних алгебраїчних рівнянь методом Гаусса в програмі MatLab.

Лабораторна робота №2

На тему: Прямі методи розв’язання систем

Лінійних алгебраїчних рівнянь метод Гаусса.

Виконав студент

групи ПС3-1:Новіков В.О.

Перевірив викладач:

Мигаленко М.І

Мета роботи: ознайомитися з методами розв‘язання систем лінійних алгебраїчних рівнянь. Розглянути особливості реалізації прямих методів розв‘язання систем лінійних алгебраїчних рівнянь у вигляді m-файлу функції у середовищі MatLab.

Хід роботи

1.Теоретичні відомості:

Математичні моделі багатьох технічних задач представлені системами лінійних рівнянь. Багато методів розв’язання нелінійних задач також зводяться до розв’язання деякої послідовності систем лінійних алгебраїчних рівнянь (систем ЛАР) на ЕОМ. Для багатьох методів розроблений математичний апарат, що дозволяє оцінити точність отриманого розв’язку. Чисельні методи розв’язку систем ЛАР поділяються на прямі та ітераційні (наближені).

Прямі (точні) методи дозволяють розв’язати систему рівнянь за скінчене число арифметичних операцій. Якщо всі операції виконуються точно (без помилок округлення), то розв’язок заданої системи також отримуємо точним. До прямих методів належать: метод послідовного виключення невідомих (метод Гаусса та його модифікації: метод головного елемента, метод квадратного кореня, метод відображень та ін.), метод ортогоналізації, метод LU-розкладу. Прямі методи застосовують на практиці для розв’язання систем ЛАР за допомогою обчислювальної техніки, як правило, з числами порядку не вище 103 .

Ітераційні методи є наближеними. Вони дозволяють знайти розв’язок системи, як межу послідовних наближень, що обчислюються по однаковому алгоритму. Для застосування ітераційних методів у початкових умовах необхідно задати точність обчислень ε і початкове наближення х0 чи (х01, х02, х03, …). До ітераційних методів належать: метод Зейделя, метод простої ітерації, метод релаксації, градієнтні методи та їх модифікації. На практиці ітераційні методи застосовують для розв’язання систем ЛАР з числами порядку 106 і вище.

Процес розв‘язання системи (2.3) по методу Гаусса можна розділити на два етапи.

1) Перший етап полягає в послідовному виключенні невідомих (приведенні матриці коефіцієнтів А = (аij) до верхньої трикутної матриці). Його називають прямим ходом.

2) Другий етап – безпосереднє отримання значень невідомих, як результату розв’язання низки рівнянь однією змінною – називають зворотнім ходом. Таку назву етап отримав, оскільки розв‘язання починають із n-го останнього рівняння, послідовно проводячи розрахунки з n-1, n-2, n-3…3, 2, 1 рівняннями.

2.Завдання для виконання лабораторної роботи:

Створити програму на внутрішній мові середовища МatLAB, що реалізує метод Гауса з вибором головного елементу (для непарних варіантів) чи метод LU-розкладу (для парних варіантів). Провести тестування створеної програми на прикладі, вибраному за варіантом. Здійснити перевірку отриманих результатів, в разі виникнення похибки, пояснити джерело її виникнення та накопичення (компенсації).

5 варіант

3.Лістинг програми:

function X=Gauss(A,B,n)

A=[5 2 1;1 3 7;4 6 -1];

B=[3 14 21 ];

n=3;

X=zeros(n,1);

for i=1:1:n-1

for t=i+1:1:n

k=A(i,i)/A(t,i);

for j=i:1:n

A(t,j)=k*A(t,j);

A(t,j)=A(t,j)-A(i,j);

end

end

end

A

for i=n:-1:1

X(i)=B(i)/A(i,i);

for j=n:-1:1

A(j,i)=A(j,i)*X(i);

B(j)=B(j)-A(j,i);

end

end

4.Результат програми

Висновок:На лабораторній роботі я розв’язав систему лінійних алгебраїчних рівнянь методом Гаусса в програмі MatLab.

Наши рекомендации