- •Методичні рекомендації до вивчення дисціпліни "Комп’ютерне моделювання електронних схем, конструкцій та технологій електронних апаратів"
- •1.Загальні питання
- •2.Визначення полюсів схемних функцій
- •2.1.Метод дихотомії
- •2.2.Метод хорд
- •2.3.Метод дотичних
- •2.4.Пошук комплексних коренів нелінійних рівнянь
- •3.Визначення коефіціентів чутливості
- •3.1.Розрахунок перших частинних похідних функції
- •3.1.1.Схема 2т чисельного диференціювання
- •3.1.2.Схема 3т чисельного диференціювання
- •3.2.Розрахунок власних частинних похідних другого порядку
- •3.3.Розрахунок взаємних похідних другого порядку
- •4.Визначення міри відповідності характеристик реа
- •4.1.Метод прямокутників
- •4.2.Метод трапецій
- •4.3.Метод Симпсона
- •5.Модедювання радіоелектронних апаратів системами рівнянь
- •5.1.Метод Гауса
- •5.1.1.Розв’язання систем алгебраїчних рівнянь методом Гауса
- •5.1.2.Обчислення визначника матриці методом Гауса
- •5.1.3.Обернення матриці методом Гауса
- •5.2.Метод Жордана
- •5.2.1.Обернення матриці методом Жордана
- •5.3.Метод lu-факторизації
- •5.4.Метод опорного елементу
- •6.Ітераційні методи розвяЗувАння систем лінійних рівнянь
- •6.1.Метод Якобі
- •6.2.Метод Гауса-Зейделя
- •6.3.Метод послідовної верхньої релаксації
- •7.Моделюванні статичного режиму радіоелектронних засобів
- •7.1.Метод простої ітерації
- •7.2.Метод Ньютона
- •2.3 Метод продовження параметру
- •8.Інтерполяція та наближення кривими
- •8.1.Метод невизначених коефіціентів
- •8.2.Регресійний аналіз. Метод найменших квадратів
- •8.2.1.Лінійна регресія
- •8.2.2.Квадратична регресія
- •9.Розв’язання звичайних диференційних рівнянь
- •9.1.Постановка задачі
- •9.2.Метод Ейлера
- •9.3.Метод Ейлера-Коші
- •9.4.Метод Рунге-Кутта
- •Перелік літератури
5.1.Метод Гауса
Метод Гауса [4] застосовується в проектуванні РЕА для розв’язання систем алгебраїчних рівнянь, розрахунку визначника матриці, а також обернення початкової матриці коефіцієнтів. Метод потребує мінімальної кількості обчислень , де n – порядок матриці.
5.1.1.Розв’язання систем алгебраїчних рівнянь методом Гауса
Нехай, задана система рiвнянь AX = B, де A - матриця розміром n n, X = ( x1 , x2 , . . . , xn )t - вектор, що шукають, а B = ( b1 , b2 , . . . , bn )t - заданий вектор. Якщо [2] значення визначника матриці A відрізнається від нуля, то існує її розвязок X.
Метод Гауса для розв’язання систем алгебраїчних рівнянь включає два етапи: прямий хід і зворотній.
Прямий хід – зведення початкової матриці коефіціентів системи до еквівалентної трикутної за формулою:
|
(5.1) |
де k – номер провідного рівняння, що додається до інших; і – номер рівняння, що перетворюється; j - номер коефіцієнта у рівнянні.
Задача 5.1. Методом Гауса трансформувати до еквівалентної з верхньою трикутною матрицею коефіцієнтів систему рівнянь АХ=В, де
Розв’язок. Перетворення у відповідності до (5.1) розширеної матриці коефіціентів для має вигляд:
Перетворення розширеної матриці коефіціентів для має вигляд:
Таким чином, в результаті отримана еквівалентна початковій система рівнянь з верхнею трикутною матрицею коефіціентів.
Зворотній хід метода Гауса дозволяє отримати значення невідомих за формулою:
, |
(5.2) |
Де - перетворені коефіцієнти відповідно початкової матриці та стовпчика вільних членів.
Задача 5.2. Із еквівалентної системи рівнянь попередньої задачі розрахувати значення невідомих.
Розв’язок. У відповідності до (5.2) значення невідомих:
Таким чином, вектор невідомих становить Х= [5, 2, 1]t.
Програмна Gauss, що реалізує метод Гауса для розв’язання системи рівнянь із прикладу (5.1) наведена нижче.
Program Gauss;
uses CRT;
const n=3;
a: array [1..3,1..4] of real= (( 1,-1, 0, 3),
(-1, 3,-1, 0),
( 0,-1, 2, 0));
var i,j,k: integer;
g,s: real;
BEGIN
ClrScr; { 1. Прямий хiд Гауса }
for k:=1 to n-1 do
for i:=k+1 to n do
begin
g:=a[i,k]/a[k,k];
for j:=1 to n+1 do a[i,j]:=a[i,j]-g*a[k,j];
end; { 2. Виведення перетвореноi матрицi }
writeln('Перетворенa матриця ');
for i:=1 to n do
begin
for j:=1 to n+1 do write(a[i,j]:5:1); writeln
end;
for i:=n downto 1 do { 3. зворотний хiд Гауса }
begin s:=a[i,n+1];
for j:=i+1 to n do s:=s-a[i,j]*a[j,n+1];
a[i,n+1]:=s/a[i,i]
end;
writeln; { 4. Виведення невiдомих }
for i:=1 to n do writeln('x',i,'=',a[i,n+1]:5:1);
END.
Результати виконання програми Gauss мають вигляд:
Перетворенa матриця
1.0 -1.0 0.0 3.0
0.0 2.0 -1.0 3.0
0.0 0.0 1.5 1.5
x1= 5.0
x2= 2.0
x3= 1.0
Це співпадає з результатами, що отримані раніше.
5.1.2.Обчислення визначника матриці методом Гауса
Обчислення визначника матриці методом Гауса при використанні обчислювальної схеми без нормування провідних рівнянь грунтується на множенні значень діагональних елементів модифікованої трикутної матриці коефіцієнтів
. |
(5.3) |
і дозволяє зручно та швидко розраховувати визначникі матриць, порядок яких може бути набагато більшим ніж 2…3.
Задача 5.3. Розрахувати значення визначника матриці із попереднього прикладу.
Розв’язок. Розрахунок визначника матриці А третього порядку за правилом «зірочки» дає наступний результат
Використання формули (5.3) до перетвореної за Гаусом матриці дає наступний результати
Отриманий результат співпадає з розрахунками за правилом «зірочки».