|
|
Собственные вектора и значения матриц
|
|
Страница 1 из 10 Как выясняется, некоторые специалисты до сих пор интересуются такой проблемой линейной алгебры, как вычисление собственных значений и собственных векторов матриц. Эта проблема возникает во многих областях математики, механики, инженерного дела и геологии. На сайте представлен несколько переработанный перевод 11-ой главы книги Numerical Recipes in C, 2nd edition, Cambridge University Press, reprinted 1999.
ВведениеГоворится, что матрица A размера N*N имеет собственный вектор x и соответствующее собственное значение l, когда выполняется Ax = lx.Очевидно, что любой вектор, пропорциональный собственному, также будет собственным вектором; мы не будем считать такие вектора различными. Нулевой вектор как собственный не рассматривается. Для собственных значений выполняется равенство: det|A - l1| = 0.Если раскрыть это выражение, то получится полином относительно l порядка N, корни которого и являются собственными значениями. Отсюда следует, что всегда существует N собственных значений (не обязательно различных и действительных). Одинаковые значения, соответствующие кратным корням, будем называть вырожденными. Поиск корней полинома для отыскания собственных значений -- обычно неэффективная операция. Значительно более эффективные методы будут описаны ниже. Из вышеприведенных формул следует также, что для каждого из N собственных значений (не обязательно различных) имеется соответствующий собственный вектор: известно, что если матрица (A - l1)вырождена, то существует ненулевой вектор, обнуляющий ее при умножении. Если к обоим частям первого выражения добавить tx, то видно, что собственные значения матрицы могут быть изменены на константу t, или сдвинуты, добавлением к матрице единичной, умноженной на эту константу. Собственные вектора при сдвиге не меняются. Сдвиг является важной частью многих алгоритмов вычисления собственных значений. Отсюда также следует, что нулевые собственные значения не имеют специфического смысла: любое собственное значение может быть сдвинуто до нулевого либо нулевое значение -- сдвинуто из нуля. Определения и основные фактыМатрица называется симметричной, если она совпадает с транспонированной (со своей транспозицией): A = AT, или ai,j = aj,i.Она называется эрмитовой, или самосопряженной, если она равна комплексно-сопряженной матрице от своей транспозиции (эрмитово-сопряженной от нее): A = AH, или ai,j = aj,i*.Она называется ортогональной, если ее транспозиция является обратной к ней: AAT = ATA = 1.Она называется унитарной, если эрмитово-сопряженная от нее равна обратной. Наконец, матрица называется нормальной, если она является перестановочной с эрмитово-сопряженной: AAH = AHA.Для действительных матриц эрмитовость означает симметрию, унитарность совпадает с ортогональностью, и оба этих класса являются нормальными. При поиске собственных значений матрицы, "эрмитовость" является весьма важной концепцией: все собственные значения эрмитовых матриц действительны. С другой стороны, собственные значения действительных несимметричных матриц могут быть либо действительными, либо парами комплексно - сопряженных чисел. Собственные значения комплексной неэрмитовой матрицы в общем случае комплексные. Концепция "нормальности" важна при поиске собственных векторов. Система собственных векторов нормальной матрицы с невырожденными (несовпадающими) собственными значениями является полным и ортогональным базисом N-мерного векторного пространства. Для нормальной матрицы с вырожденными собственными значениями имеется свобода в определении собственных векторов, соответствующих вырожденным собственным значениям, связанная с заменой их любой линейной комбинацией. Это означает, что мы всегла можем провести процесс ортогонализации Грама - Шмидта и найти полный ортогональный набор собственных векторов, как и в невырожденном случае. Очевидно, что матрица с колонками из ортонормированного множества собственных векторов является унитарной. Для матрицы собственных векторов, полученных из действительной симметричной матрицы, выполняется свойство ортогональности. Если матрица не является нормальной, как, например, любая действительная несимметричная матрица, то в общем случае нельзя отыскать ортонормированный набор собственных векторов, нельзя даже гарантировать ортогональности любой пары из них (кроме редких случаев). В общем случае эти N собственных векторов будут образовывать неортогональный базис в N-мерном пространстве (но не всегда). Если собственные вектора не образуют N-мерный базис, то матрицу будем называть дефектной.
|
|
-
Теория программирования,
Безопасность в сервис-ориентированных архитектурах (SOA)
Предоставляя свободно связанные сервисы, сервис-ориентированная архитектура позволяет гибко реагировать на постоянно меняющиеся деловые процессы. При этом необходимо уделить внимание не только функциональным аспектам, но и созданию гибкой инфраструктуры безопасности, поскольку изменения деловых процессов оказывают на нее серьезное влияние. К примеру, привлечение новых деловых партнеров или включение конфиденциальных сведений в важные корпоративные процессы требует адекватного стандартизованного ...
-
Теория программирования,
Многоядерное программирование: использование преимуществ многоядерных систем
В этой статье я глубже опишу мир многопоточности, а также опишу некоторые способы снижения сложности при разработке многопоточных приложений....
-
Теория программирования,
Справочник по технологии COM
Справочник по интерфейсам, структурам и функциям, используемым в технологии COM. Рассматриваются функции компиляции типа и работы с библиотеками, функции API, работающие с вариантами, получение информации об ошибке, функции API обработки ошибок, обзор диспетчерских функций API, регистрация активного объекта с помощью функций API, функции преобразования даты и времени, функции преобразования BSTR и векторов, функции преобразования чисел из строкового представления в цифровое, функции API, работаю...
-
Теория программирования,
Ориентация на сервисы и её роль в Стратегии распределенных систем
Сервисная ориентация - средство для формирования распределенных систем. Наиболее абстрактно, сервисная ориентация рассматривает всё - от основных приложений, от принтера, до клерка из дока отгрузки, до компании ночной доставки - как поставщика услуг. Поставщики услуг предоставляют возможности через интерфейсы. SOA отображает эти возможности и интерфейсы так, что они могут гармонично сочетаться в процессы. Сервисная модель "рекурсивна"(fractal): вновь сформиро...
-
Теория программирования,
Регулярные выражения
Регулярные выражения – это один из способов поиска подстрок (соответствий) в строках. Осуществляется это с помощью просмотра строки в поисках некоторого шаблона. Общеизвестным примером могут быть символы «*» и «?», используемые в командной строке DOS. Первый из них заменяет ноль или более произвольных символов, второй же – один произвольный символ. Так, использование шаблона поиска типа "text?.*" найдет файлы textf.txt, text1.asp и другие анало...
-
Теория программирования,
Некоторые аспекты построения агентных систем
Одной из важных задач, стоящих перед разработчиками программного обеспечения, является автоматизация процесса обращения информации. Как это показал Глушко, в свое время компьютер помог преодолеть человечеству информационный кризис, связанный с возрастающими объемами информации. Однако объемы хранимой и обрабатываемой информации продолжают расти, в связи с чем ставится вопрос о том, чтобы передать некоторые функции обработки этой информации интеллектуальным системам. При этом подобные системы дол...
-
Теория программирования,
Теория фреймов
Теория фреймов - это парадигма для представления знаний с целью использования этих знаний компьютером . Впервые была представлена Минским как попытка построить фреймовую сеть , или парадигму с целью достижения большего эффекта понимания . С одной стороны Минский пытался сконструировать базу данных , содержащую энциклопедические знания , но с другой стороны , он хотел создать наиболее описывающую базу , содержащую информацию в структурированной и упорядоченной форме . Эта ...
-
Теория программирования,
Чтобы было яснее
Программное обеспечение - это необычная среда для конструирования. Поскольку существует множество физических факторов, которые заставляют нас проектировать тем или иным образом, то большинство проектировочных решений не поддается объективному анализу. Как правило, речь о дизайне заходит не тогда, когда мы определяем, как работает программа, а тогда, когда мы хотим внести в нее изменения. Разумеется, работа программы очень важна, но все же о ее качестве, в первую очередь, говорит то, наскол...
|
|
|