Псевдообернена матриця. Обертання прямокутних та вироджених матриць

В попередніх параграфах для квадратної невиродженої матриці розглядалася обернена матриця . Якщо ж матриця  прямокутна або квадратна, але вироджена, то вона немає класичної оберненої матриці. Однак в цьому випадку може бути введено поняття узагальненої оберненої матриці , яка має деякі властивості оберненої та використовується при вирішенні деяких систем лінійних алгебраїчних рівнянь. У разі, коли  — квадратна невироджена матриця, узагальнена обернена матриця збігається з оберненою матрицею .

Узагальненою оберненою (псевдооберненою) матрицею для прямокутної матриці  з розмірами називають єдину матрицю, що задовольняє чотирьом умовам:

де означає перехід до сполученої матриці.

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

Програмна реалізація алгоритму LU-розкладання для знаходження власних значень несиметричної матриці

Delphi-проект призначений для розв'язку задачі на знаходження всіх власних значень несиметричної матриці і використовує для цього алгоритм методу LU-розкладання (грунтуються на приведенні заданої матриці до подібної їй матриці трикутного вигляду, більш детальна інформація про який міститься за посиланням Знаходження власних значень матриці використовуючи алгоритм LU-розкладання). Інтерфейс головної форми проекту аналогічний проектам, в яких було реалізовували інші чисельні методи розв'язку задач на власні значення (метод вичерпування на delphi, метод Крилова на delphi, степеневий метод на delphi та інші), лише з однією відмінністю — передбачено можливість задати точность обчислювального процесу.

Ліва частина форми містить область вхідних даних, яка складається з однієї кнопки типу TButton (кнопка "Знайти власні значення матриці" — реалізує алгоритм LU-розкладання для знаходження власних значень вхідної матриці), одного поля вибору типу TSpinEdit (поле вибору "Виберіть розмірність матриці" відповідає за число рядків та стовпців вхідної матриці), одного поля вводу типу TEdit (поле "Точність обчислень" відповідає за точність з якою необхідно знайти власні значення вхідної матриці) та таблиці TStringGrid у комірки якої, способом введення з клавіатури, записуються значення елементів вхідної матриці. Праву частину форми займає компонент типу TMemo, основним призначенням якого є вивід результату роботи програми.

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

Знаходження власних значень матриці використовуючи алгоритм LU-розкладання

Частіше, принаймні, в несиметричному випадку, алгоритми наближеного рішення повних проблем власних значень грунтуються на приведенні заданої матриці до подібної їй матриці не діагонального, а трикутного вигляду. Найпоширенішим серед таких є алгоритм, що спирається на LU-розкладанні матриці. Розглянемо його більш детально. Для цього розглянемо квадратну матрицю  розмірності , записану у вигляді добутку , де  і  — відповідно нижня і верхня трикутні матриці, елементи яких обчислюються за наступними формулами :

Зауваження: більш детальну інформацію про обчислення елементів матриць  і  можна знайти за посиланням Розв'язок СЛАР методом LU-факторизації.

Далі, позначимо , після чого, роз'вяжемо дану рівність відносно . В результаті отримаємо . Підставами останній вираз у формулу LU-розкладання матриці , отримаємо перетворення подібності , яке говорить про подібність матриць  та  і відповідно про рівність їх власних значень. Далі, представимо матрицю  у вигляді , після чого, поклавши , отримаємо нову матрицю, подібну до матриць  і  відповідно. Продовжуючи даний процес далі, можна зробити висновок, що алгоритм знаходження власних значень згідно алгоритму LU-розкладання визначається фактично двома формулами:

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

Відшукання всіх власних значень симетричної матриці методом обертань в середовищі delphi

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

Після того, як задану точність було досягнуто, діагональні елементи отриманої матриці будуть приблизно рівними шуканим власним значенням.

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

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

Знаходження власних значень матриці використовуючи метод обертань

Метод обертань — поширений ітераційний метод розв'язування повної алгебраїчної проблеми власних значень і дозволяє, для симетричних матриць (нагадаємо, що матриця називається симетричною тоді і тільки тоді, коли Умова симетричності матриць), вирішити задачу знаходження всіх власних значень та відповідних їм власних векторів без використання характеристичних рівнянь.

Основна ідея методу обертань полягає в перетворенні початкової матриці Матриця А так, щоб зберігаючи спектр власних значень отримати діагональну матрицю Власні значення матриці або близьку до неї. Перетворення з такими властивостями відоме як перетворення подібності Власні значення матриці, де Власні значення матриці — невироджена матриця. Якщо додатково вимагатимемо ортогональності матриці Власні значення матриці, то, крім бажаного збереження спектра власних значень при перетворенні подібності необхідною умовою є ще й симетрія матриці перетворення. Знайти безпосередньо таку матрицю Власні значення матриці, як правило, невдається, тому один із шляхів побудови перетворення подібності — ітераційний. Тобто, на кожному Власні значення матриці-му кроці методу обертань здійснюється перетворенням подібності, де використовується ортогональна матриця обертань Власні значення матриці. Ця матриця залежить від трьох параметрів Власні значення матриці і відрізняється від одиничної лише чотирма елементами Власні значення матриці із координатами Власні значення матриці відповідно.

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

Знаходження максимального по абсолютній величині власного значення матриці степеневий методом в середовищі програмування delphi

Програма знаходить максимальне по модулю власне число для матриці довільної розмірності з заданою точністю використовуючи степеневий методом та дві його модифікації (теоретична частина по данх методах міститься за посиланням знаходження власного значення матриці степеневий метод). Інтерфей розглядуваного delphi-проекту аналогічний проектам, які ми розглядали для розв'язку повної проблеми власних значень (метод Федеєва на delphi, метод Левер'є на delphi та інші), лише з одною відмінністю. В ньому передбачено можливість задати точність обчислень та вибрати модифікацію степеневого методу.

stepenevuj_metod_delphi11

Інтерфейс delphi-проекту "Знаходження максимального по абсолютній величині власного значення матриці степеневий методом"

Для того, щоб знайти максимальне власне значення матриці, необхідно вказати відповідні значення та параметри в панелі задач (розмірність матриці, точність обчислень, модифікація методу), заповнити таблицю значеннями її елементів і натиснути кнопку «Знайти максимальне власне значення матриці».

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

Часткова проблема власних значень матриці. Степеневий метод

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

Степеневий метод

де Степеневий метод і Степеневий метод — відповідні компоненти векторів Степеневий метод та Степеневий метод. При цьому в якості номера Степеневий метод може використовуватися будь-яке число з діапазону Степеневий метод.

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

Наступна сторінка »