- •1.2. Алгоритмічна та програмна реалізація метода Ньютона
- •Порядок виконання роботи
- •2.2. Алгоритмічна і програмна реалізація метода Гауса
- •Порядок виконання роботи
- •Заняття № 3 Розробка програми розв’язання слар методом подвійної факторизації
- •3.1. Теоретичні відомості
- •. Алгоритмічна і програмна реалізація метода подвійної факторизації
- •3. Інші елементи рядка і відповідно до (3.5);
- •4. Елемент матриці відповідно до (3.4);
- •Алгоритмічна та програмна реалізація метода Зейделя
- •Порядок виконання роботи
- •5.2. Алгоритмічна та програмна реалізація метода Ньютона-Рафсона (для системи 3-х нелінійних рівнянь з трьома невідомими)
- •6.2. Алгоритмічна та програмна реалізація інтерполяційного полінома Лагранжа
- •6.3. Порядок виконання роботи
- •Заняття № 7 Розробка програми чисельного інтегрування функцій методом трапецій
- •7.1. Теоретичні відомості
- •7.Алгоритмічна та програмна реалізація методу трапецій
- •7.3. Порядок виконання роботи
- •8.2. Алгоритмічна та програмна реалізація формули Сімпсона
- •8.3. Порядок виконання роботи
- •Розробка програми чисельного диференціювання функцій
- •9.1. Теоретичні відомості
- •9.2. Алгоритмічна та програмна реалізація чисельного диференціювання функцій
- •9.3. Порядок виконання роботи
- •10.2. Алгоритмічна та програмна реалізація методів Ейлера для розв’язання здр
- •10.3. Порядок виконання роботи
- •11.2. Алгоритмічна та програмна реалізація методу Рунге-Кутта четвертого порядку
- •12.2. Алгоритмічна та програмна реалізація градієнтного методу
- •12.3. Порядок виконання роботи
- •Список літератури
2.2. Алгоритмічна і програмна реалізація метода Гауса
При реалізації прямого ходу метода Гауса виконується перетворення елементів матриці коефіцієнтів системи А і вектора вільних членів рівнянь В відповідно до формул (2.10).
Алгоритм містить
не менше трьох основних циклів, що
вкладені один в один. Їх індекси
відповідають індексам в (2.10): зовнішній
цикл - вибір чергового кроку виключення
невідомих (
)
і опорного елемента
у відповідному
рядку і стовпці. Перевірка його на умови
(2.11) і перестановка, за необхідності,
рядків матриці А
і елементів
масиву вільних членів (що відповідає
перестановці рівнянь системи). Середній
цикл - вибір рівняння системи, із якого
виключається невідоме (
).
Визначається номер
-го
рядка матриці А
та елемента
масиву В,
які потрібно перетворювати. Внутрішній
цикл - реалізація формул (2.10) при вибраних
k
та
i
(j
= k,
…, n).
В результаті виконання прямого Гауса в двомірному масиві матриці коефіцієнтів А розташується еквівалентна верхня трикутна матриця, тобто відмінними від нуля будують тільки діагональні і наддіагональні елементи.
На зворотному ході реалізуються формули (2.13) і (2.15). В результаті його виконання обчислюються значення елементів вектора невідомих Х, які є розв’язком системи рівнянь. Вони містяться в полі масиву вільних членів системи В.
Алгоритм метода Гауса (прямий і зворотний хід) показаний на рис. 2.1. Програмна реалізація алгоритмів показана на рис. 2.2.
М4:
Так
1. Зовнішній цикл. Вибір кроку виключення невідомих;
2. Перевірка умов (2.11);
3. Вибір рівняння системи, із якого виключаються невідомі;
4. Реалізація формул (2.10).
Рис. 2.1.а. Алгоритм метода Гауса. Прямий хід.
5. Реалізація формули (2.13);
6. Реалізація формули(2.15).
Рис. 2.1.б. Алгоритм метода Гауса. Зворотний хід.
Прямий хід методу Гауса
Begin
l:=k;
for j:=k+1 to n do
if(abs(A[l,k]) < abs(A[j,k])) then l:=j;
if A[l,k]<>0 then goto m3;
goto m10;
m3: if l=k then goto m4;
m4: for i:=k+1 to n do
Begin
cm:=A[i,k]/A[k,k];
A[i,k]:=0;
For j:=k+1 to n do
A[i,j]:=A[i,j]-cm*A[k,j];
b[i]:=b[i]-cm*b[k];
End;
m10:End;
…
Зворотний хід методу Гауса. Реалізуються формули (2.13) і (2.15).
...
B[n]:=b[n]/A[n,n];
For k:=n-1 downto 1 do
Begin
S:=0;
For j:=k+1 to n do
S:=s+A[k,j]*b[j];
B[k]:=(b[k]-s)/A[k,k];
End;
… … …
Рис. 2.2. Програмна реалізація алгоритмів Гауса
Результати обчислень, що є розв’язком системи лінійних рівнянь розміщуються в масиві В.
