Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпори лучейко.doc
Скачиваний:
11
Добавлен:
07.09.2019
Размер:
4.18 Mб
Скачать

24. Методи упаковування розріджених матриць і векторів.

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

У методі прямого кодування пошук НЕ за його адресами вимагає значних витрат часу, оскільки тут у загальному випадку треба оглянути всі компоненти векторів та . Це й є основним недоліком методу

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

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

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

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

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

Список, що відповідає векторові звичайно називають списком розділювачів.

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

25.Власні значення та власні вектори матриць. Зумовленість матриці. Метод qr. Норми матриці та вектора

Власні значення вимірної матриці , які можна подати вектором , є коренями характеристичного (вікового) рівняння цієї матриці

Найефективнішим серед методів розкритя вікових детермінантів є метод Данілєвського суть якого полягає у зведенні даної матриці до матриці Фробеніуса.

За матрицею Фробеніуса згідно з (4.204) записуємо характеристичне рівняння .

У тому випадку, коли потрібно обчислити тільки вектор власних

значень матриці, а характеристичне рівняння непотрібне, метод Данилевського недоцільний. Найефективнішим методом прямого об­числення вектора власних значень матриці є ітераційний метод .

Під час практичного використання алгоритму з метою скорочен­ня числа операцій матрицю спочатку перетворюють у матрицю Гессенберга з тими ж власними значеннями, що й матриця . Після чого до застосовують алгоритм . Матриця Гессенберга — це верхньотрикутна матриця, але з певною кількістю під діагональних елементів. Для такої матриці кількість операцій в алгоритмі пропорційна замість для повної матриці.

Щоб звести матрицю до матриці Гессенберга, застосовують метод Гівенса.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]