Как высчитать вектор из матрицы
Перейти к содержимому

Как высчитать вектор из матрицы

  • автор:

Как считать матрицу из файла в двумерный вектор?

Люди, помогите, пожалуйста! Есть двумерный вектор, описанный в классе. Привел только 2 метода из всех, лишние не стал писать. Сохранение матрицы в файл работает, а вот пытался сделать таким же образом загрузку матрицы из файла в программу — не работает! В файле матрица — неизвестного размера, но всегда прямоугольная.

typedef vector>::iterator matrix_iterator; class Matrix < public: vector>v; Matrix(); void SaveMatrix(int err); void LoadMatrix(); >; // если err=0 матрица не записывается, // err используется, чтоб не было бесконечной рекурсии void Matrix::SaveMatrix(int err) < if (!FileExists(FNAME_MATRIX) || err != 0) < ofstream ofst(FNAME_MATRIX); for (matrix_iterator it = v.begin(); it != v.end(); ++it) < copy(it->begin(), it->end(), ostream_iterator (ofst, " ")); ofst cout else < char ch; cout >ch; if (ch == '+') SaveMatrix(1); else cout > void Matrix::LoadMatrix() < ifstream ifst(FNAME_MATRIX); while (!ifst.eof()) < int temp; ifst>>temp; matrix_iterator iterlvl2; vector::iterator iterlvl1; for (iterlvl2 = v.begin(); iterlvl2 != v.end(); iterlvl2++) < iterlvl1 = (*iterlvl2).begin(); (*iterlvl2).push_back(temp); >> > 

Отслеживать

51.2k 86 86 золотых знаков 266 266 серебряных знаков 505 505 бронзовых знаков

Собственные числа матрицы линейного оператора

Собственный вектор оператора A — ненулевой вектор X , переводящий X в коллинеарный ему вектор, то есть AX = λX . где λ — собственное значение или собственное число оператора A .

  • Шаг №1
  • Шаг №2
  • Видеоинструкция
  • Оформление Word

Инструкция . Выберите размерность матрицы. Полученное решение сохраняется в файле Word .

Пример . Исходная матрица имеет вид:

Составляем систему для определения координат собственных векторов:
(17 — λ)x1 + 6x2 = 0
6x1 + (8 — λ)x2 = 0
Составляем характеристическое уравнение и решаем его:

λ 2 -25 λ + 100 = 0
D = (-25) 2 — 4 • 1 • 100 = 225

-3x1 + 6y1 = 0
6x1-12y1 = 0
или
-3x1 + 6y1 = 0
Собственный вектор, отвечающий числу λ1 = 20 при x1 = 2: x 1 = (2,1)
В качестве единичного собственного вектора принимаем вектор:

где — длина вектора x1.
Координаты второго собственного вектора, соответствующего второму собственному числу λ2 = 5, находим из системы:
12x1 + 6y1 = 0
6x1 + 3y1 = 0
или
12x1 + 6y1 = 0

  • Задать вопрос или оставить комментарий
  • Помощь в решении
  • Поиск
  • Поддержать проект

Обоссал вектор, поклонился матрице

Это продолжение или расширение другой статьи, её лучше бы прочитать прямо сейчас, перед этой, чтоб хотя бы примерно понимать чо здесь происходит. Если с телефона читаешь — поверни его горизонтально, а то там формулы поехают. Алсо рекомендую на бумаге повторять все формулы. Там одна арифметика без спецзнаний, но её слишком много, чтобы разбираться в уме. 18+.

Напоминалка-1, точка — это вектор, набор координат. И ниже процедура вращения вектора (0, 1) вокруг начала координат в 2д.

Напоминалка-2 — любой вектор может быть представлен как сумма базисных векторов, умноженных на числа, ща это пригодится.

А теперь хояк, задачка: Пускай у меня в одном пространстве задано два базиса:

  1. ахуевший ([1, 0, 0], [0, 1, 0], [0, 0, 1])
  2. ебанутый, такой же как ахуевший, но повёрнутый вокруг оси Z (т.е. в плоскости XY)на угол a.

В ебанутом есть вектор [x, y, z], и мне зачем-то надо узнать его координаты в ахуевшем, назову их [xa, ya, za]. Идея такая: выясняю ахуевшие координаты каждого ебанутого базисного вектора, умножаю их на x y z соответсвенно, складываю. Получится [xa, ya, za] . Выяснить координаты каждого ебанутого вектора — одно и то же, что повернуть каждый ахуевший вектор вокруг оси Z на угол a (именно так получен ебанутый базис).

Первый на очереди [1, 0, 0], и на первой шпаргалке явно обозначено, что с ним происходит при повороте. Т.е. первый ебанутый вектор имеет координаты [cos(a), sin(a), 0]. Второй [0, 1, 0] аналогично, только с нюансом — это ведь тот же первый, только повёрнутый на 90°, значит всё точно так же, но с оффсетом угла на 90°. И по этой теме есть одна братская формула:

cos(a + 90) = -sin(a); 
sin(a + 90) = cos(a)
.

Второй получился [-sin(a), cos(a), 0]. Третий вектор останется без изменений, т.к. совпадает с осью поворота: [0, 0, 1]. И вот ахуевше разложенный ебанутый базис:

[ cos(a), sin(a), 0]
[-sin(a), cos(a), 0]
[0, 0, 1]

Ну вот и всё, эти вектора по очереди домножаю на x y z и складываю:

[xa, ya, za] = 
= x * [cos(a), sin(a), 0] + y * [-sin(a), cos(a), 0] + z * [0, 0, 1]
= [x * cos(a) - ye * sin(a), x * sin(a) + y * cos(a), 1]

Ты ведь ни хера не понял последнюю формулу, да? Давай глянем, чо происходит с каждой координатой отдельно. Умножение вектора на число происходит покоординатно, сложение векторов покоординатно и соответственно. Третье, нужное тебе, равенство следует из первых двух:

1. a * [x, y] = [a * x, a * y]
2. [x1, y1] + [x2, y2] = [x1 + x2, y1 + y2]
3. a * [x1, y1] + b * [x2, y2] = [a * x1 + b * x2, a * y1 + b * y2]

Тык вот. Ебанутый базис в ахуевшем назову EA, к его векторам буду обращаться через квадратные скобки и индекс: EA[0], EA[1], EA[2]. К координатам этих векторов через точку и имя: EA[0].x, EA[0].y, EA[0].z. Это чтоб не запутаться.

Итоговый вектор:
x * EA[0] + y * EA[1] + z * EA[2]
Отдельно координата x итогового:
xa = (x * EA[0]).x + (y * EA[1]).x + (z * EA[2]).x =
= x * EA[0].x + y * EA[1].x + z * EA[2].x
Если вдруг забыл: EA[0] = [cos(a), sin(a), 0], получается
xa = x * cos(a) + y * sin(a) + z * 0 = x * cos(a) + y * sin(a)
Остальные координаты аналогично.

Если когда-то видел умножение матриц, то ща словишь флешбек. Я заменил обращение к координате на такое же, как к вектору — через квадратные скобки и индекс. Итоговый вектор назову ea.

ea[0] = e[0] * EA[0][0] + e[1] * EA[1][0] + e[2] * EA[2][0]
ea[1] = e[0] * EA[0][1] + e[1] * EA[1][1] + e[2] * EA[2][1]
ea[2] = e[0] * EA[0][2] + e[1] * EA[1][2] + e[2] * EA[2][2]
Они на деревьях.

Это было умножение матрицы на вектор кароч. Получился перевод вектора из ебанутого базиса в ахуевший. А теперь давай глянем на это по-другому. Пускай вектор был взят до того, как базис стал ебанутым. Т.е. ахуевшие координаты известны до поворота и после. Значит он вращнулся прямо в ахуевшем пространстве, а ебанутый базис с синусами понадобился лишь для вычисления новых координат. Называть одноразовую хуйню базисом — много чести. Просто матрица преобразования. Опущенная.

Ещё раз вывод: та залупа с синусами и косинусами является матрицей вращения в плоскости XY, и чтоб чото повращать, надо это на неё умножить. Матрицы вращения вокруг оставшихся осей можно вычислить так же, как я вычислял эту. Вот как всё в итоге выглядит:

Осторожно, есть говно: координатные сетки бывают левосторонние и правосторонние, разница окажется в знаках синуса. Не заморачивайся пока этой хуйнёй, просто предупредил. 
[ cos(a), sin(a), 0]
Mz = [-sin(a), cos(a), 0]
[0, 0, 1]
[cos(a), 0, -sin(a)]
My = [0, 1, 0]
[sin(a), 0, cos(a)]
[1, 0, 0]
Mx = [0, cos(a), sin(a)]
[0, -sin(a), cos(a)]

Настоятельно рекомендую всё это сделать самостоятельно на бумаге, может это и очень сложно, но точно реально, я проверял. Мозги качнутся так, что охуеешь заживо.

Задачка с вращением была просто примером, абстрагируйся от неё и вынеси только формулу умножения вектора на матрицу. Без синусов и говна.

Теперь я хочу вращать не один ссаненький вектор, а аж ёбаный базис целиком, все его нахер вектора одновременно. Пускай есть базис E и матрица поворота M, итоговый базис назову I. Обращаться к векторам и координатам буду так же, как в первый раз: к вектору через квадратные скобки и индекс, к координате через точку и название.

С первым вектором происходит то ж самое, как если бы это был просто вектор (потому что это просто вектор лол):
I[0].x = (E[0].x * M[0].x) + (E[0].y * M[1].x) + (E[0].z * M[2].x)
I[0].y = (E[0].x * M[0].y) + (E[0].y * M[1].y) + (E[0].z * M[2].y)
I[0].z =
(E[0].x * M[0].z) + (E[0].z * M[1].z) + (E[0].z * M[2].z)
Блять, да и со вторым так же, он ж не особенный ни хуя
I[1].x = (E[1].x * M[0].x) + (E[1].y * M[1].x) + (E[1].z * M[2].x)
I[1].y = (E[1].x * M[0].y) + (E[1].y * M[1].y) + (E[1].z * M[2].y)
I[1].z =
(E[1].x * M[0].z) + (E[1].z * M[1].z) + (E[1].z * M[2].z)
Ну этого уже достаточно для понимания алгоритма. Довай зоресую.

Раньше мне думалось, что всю эту залупу придумал какой-то поехавший под грибами. Но нет, я только что от одного лишь определения вектора логически пришёл к этому умножению. Перед финалом кратко повторю логическую цепочку.

  1. Вектор — набор чисел, можно складывать с другим вектором и умножать на число.
  2. Любой вектор можно разложить на сумму векторов, каждый из которых нельзя разложить на сумму остальных, они типа перпендикулярны друг другу: [x, y] = x * [1, 0] + y * [0, 1]. Систему таких векторов обозвали базисом. Алсо систему векторов удобно писать в столбик и называть матрицей.
  3. Чтобы совершить преобразование вектора (поворот, перемещение, хуещение), можно совершить преобразование его базисных векторов. Кайф в том, что его локальные координаты не изменятся.
  4. глобальные координаты после преобразования можно найти таким макаром: x * E[0] + y * E[1] + z * E[2], где x, y, z — локальные координаты, Е — базис, E[0], E[1], E[2] — вектора базиса
  5. x * E[0].a + y * E[1].a + z * E[2].a — формула из п.4 для каждой отдельной координаты. Вместо a можно подставить x y или z. Это обозвали умножением вектора на матрицу.
  6. Каждый вектор базиса можно умножить на одну и ту же матрицу, тогда преобразуется весь базис. И это получается умножение матрицы на матрицу. Формула вычисления каждого вектора в п.4, и каждой координаты в п.5.

Некоторые из этих пунктов подробно расписаны в предыдущей статье, остальные здесь. Я особенно кайфанул от того, что всё это высосано из одного лишь первого пункта, не использовано никаких операций кроме сложения и умножения, не притянуто никаких знаний извне. Сухой анализ набора чисел с двумя операциями, божественно нахой.

Из такого психованного перемножения следует больная тема — количество строк левой матрицы должно быть равно количеству столбов правой. Ну с этим можно бороться так же, как с неодинаковыми векторами: там можно прибавлять нули в конец, здесь тоже, но с прибавлением нуля вправо, нужно добавлять ещё один базисный вектор снизу, которому этот ноль соответствует. Пример:

[a, b] [a, b, 0]
[c, d] = [c, d, 0]
[0, 0, 1]
Кароч везде нули кроме главной диагонали, на ней единицы.

Собственные значения (числа) и собственные векторы.
Примеры решений

Второй урок о линейных преобразованиях будет посвящён собственным числам и собственным значениям их матриц, и для более интересного чтения я рекомендую ознакомиться с первой статьёй. Однако если у вас совсем нет времени/сил/желания, то задачи этой страницы можно освоить и чисто формально. С небольшой художественной формальности я, собственно, и начну:

Рассмотрим произвольную квадратную матрицу, например, . И умножим данную матрицу справа на какой-нибудь подходящий столбец. Мне пришёл в голову вектор :

Вроде ничего примечательного – умножили матрицу на вектор-столбец и получили другой вектор-столбец . Обычная векторная жизнь. Но в обществе таких векторов существуют особые представители, которые обладают внутренним стержнем и не желают изменять себе в трудные минуты.

Умножим ту же матрицу на :

На последнем шаге вынесли константу. Что произошло? В результате умножения матрицы на вектор , данный вектор птицей Феникс возродился с числовым коэффициентом :

Определение: ненулевой вектор , который при умножении на некоторую квадратную матрицу превращается в самого же себя с числовым коэффициентом , называется собственным вектором матрицы . Число называют собственным значением или собственным числом данной матрицы.

Поскольку каждой квадратной матрице соответствует определенное линейное преобразование (в некотором базисе), то, исходя из содержательного смысла, часто говорят о собственных значениях и собственных векторах линейного преобразования.
В Википедии есть удачный геометрический пример (взгляните!), иллюстрирующий рассматриваемые понятия – на репродукции Джоконды синий вектор не меняется в результате перекоса плоскости, а значит, является собственным вектором данного линейного преобразования с коэффициентом . И из комментария к иллюстрации можно сразу узнать, что любой коллинеарный ему вектор – тоже будет собственным вектором данного линейного преобразования. Я скуп на внешние ссылки, но здесь не удержался, пожалуйста, сообщите, если эту картинку вдруг удалят.

Примеры ещё будут, примеры интересные, ну а пока что продолжаем:

В первых абзацах статьи собственный вектор был выставлен «главным действующим лицом», но на самом деле всё немного не так: говорят, что собственный вектор соответствует собственному значению . И в практических заданиях сначала разыскиваются собственные числа и только потом соответствующие им собственные векторы.

Как найти собственные значения и собственные векторы матрицы?

Проведём исследование и получим алгоритм, по которому нужно решать данную задачу. Люди, которые не очень хорошо разбираются в математике (да и которые хорошо) обычно в страхе или отвращении захлопывают учебник, когда речь заходит о каком-либо доказательстве или выводе какой-нибудь формулы. Но это не тот случай – всё будет понятно даже полному чайнику:

Найти собственные числа и собственные векторы матрицы

Перед вами та же матрица, у которой я уже выдал одно собственное значение и один собственный вектор. Давайте научимся добывать их самостоятельно!

Обозначим через неизвестный собственный вектор. Тогда матричное уравнение запишется следующим образом:

В левой части по обычному правилу проведём матричное умножение, в правой части – внесём «лямбду»:

Две матрицы равны, если равны их соответствующие элементы. Приравниваем соответствующие элементы векторов-столбцов и получаем однородную систему линейных уравнений:

Перенесём всё налево:

В первом уравнении за скобки вынесем «икс», во втором уравнении – «игрек»:

По определению, собственный вектор не может быть нулевым , поэтому нас не устраивает тривиальное решение системы. А если однородная система имеет ненулевое решение, то её уравнения линейно зависимы и определитель матрицы равен нулю:

Это так называемое характеристическое уравнение матрицы , корни которого являются собственными числами данной матрицы.

На практике, как правило, не нужно расписывать подробный вывод формулы – вполне достаточно руководствоваться формальным алгоритмом, и решение задачи можно начать примерно так:

Сначала найдём собственные значения

Составим характеристическое уравнение. Смотрим на исходную матрицу и записываем её определитель, вычитая при этом «лямбду» из чисел главной диагонали:

Раскроем определитель и решим квадратное уравнение:

Таким образом, собственные значения:

Желательно располагать их в порядке возрастания, хотя это не принципиально.

Теперь найдём собственные векторы

В данном примере получены различные собственные числа и каждому из них соответствует свои собственные векторы.

1) Рассмотрим собственное число и подставим значение в однородную систему уравнений :

Для записи системы целесообразно запомнить формальный приём: мысленно либо на черновике подставляем в определитель :
– это и есть коэффициенты системы.

Из обоих уравнений следует:

Если в ходе решения выяснилось, что линейной зависимости нет (т.е. получается только тривиальное решение, в данном примере ) – ищите ошибку! Этот признак касается всех задач рассматриваемого типа.

Итак, в нашем распоряжении есть выражение , и, придавая переменной «игрек» (либо «икс») произвольные значения, мы получаем бесконечно много собственных векторов . Все они будут коллинеарны друг другу, и поэтому нам достаточно указать один из них. Обычно стараются выбрать «красивый» вектор – чтобы его «иксовая» координата была положительной, целой и минимальной, а «игрек» не дробным.Этому эстетическому критерию соответствует значение , тогда:

Теперь обязательно проверяем, что частное решение удовлетворяет каждому уравнению системы:

Таким образом: – первый собственный вектор.

2) Найдём собственные векторы, соответствующие числу . Для этого мысленно либо на черновике подставим его в определитель и запишем вторую однородную систему:

Из обоих уравнений следует, что .

В результате: – второй собственный вектор.

Повторим важные моменты решения:

– полученная система непременно имеет общее решение (уравнения линейно зависимы);

– «игрек» подбираем таким образом, чтобы он был целым и первая «иксовая» координата – целой, положительной и как можно меньше.

– проверяем, что частное решение удовлетворяет каждому уравнению системы.

Ответ: собственные числа: , собственные векторы: .

Промежуточных «контрольных точек» было вполне достаточно, поэтому проверка равенств , в принципе, дело излишнее.

В различных источниках информации координаты собственных векторов довольно часто записывают не в столбцы, а в строки, например: (и, если честно, я сам привык записывать их строками). Такой вариант приемлем, но в свете темы линейных преобразований технически удобнее использовать векторы-столбцы.

Возможно, решение показалась вам очень длинным, но это только потому, что я очень подробно прокомментировал первый пример.

Найти собственные числа и собственные векторы матрицы

Тренируемся самостоятельно! Примерный образец чистового оформления задачи в конце урока.

Иногда требуется выполнить дополнительное задание, а именно:

записать каноническое разложение матрицы

Если собственные векторы матрицы образуют базис, то она представима в виде:

, где – матрица составленная из координат собственных векторов, – диагональная матрица с соответствующими собственными числами.

Такое разложение матрицы называют каноническим или спектральным.

Рассмотрим матрицу первого примера. Её собственные векторы линейно независимы (неколлинеарны) и образуют базис. Составим матрицу из их координат:

На главной диагонали матрицы в соответствующем порядке располагаются собственные числа, а остальные элементы равняются нулю:
– ещё раз подчёркиваю важность порядка: «двойка» соответствует 1-му вектору и посему располагается в 1-м столбце, «тройка» – 2-му вектору.

По обычному алгоритму нахождения обратной матрицы либо методом Гаусса-Жордана находим . Нет, это не опечатка! – перед вами редкое, как солнечное затмение событие, когда обратная совпала с исходной матрицей.

Осталось записать каноническое разложение матрицы :

Желающие могут перемножить три матрицы и удостовериться, что произведение равно .

Разрешив матричное уравнение относительно диагональной матрицы, можно получить другое соотношение:

Диагональную матрицу также называют матрицей линейного преобразования в базисе из собственных векторов. Если не очень понятно, то давайте вспомним заключительную часть урока о линейных преобразованиях. В ней мы выяснили, что одному и тому же линейному преобразованию в разных базисах в общем случае соответствуют разные матрицы (в частности, матрицы и в нашем примере). И наиболее удобным из них как раз и является базис из собственных векторов (в случае его существования).

Более того, все матрицы конкретного линейного преобразования в одном и том же векторном пространстве имеют один и то же характеристический многочлен, из-за чего характеристическое уравнение, вероятно, и получило своё название.

Так, легко убедиться, что характеристическое уравнение матрицы :

– совпадает с характеристическим уравнением матрицы , которое мы получили в 1-м примере.

Однако такой удобный базис существует далеко не всегда:

Найти каноническое разложение матрицы

Решение: найдем собственные значения. Составим и решим характеристическое уравнение:

– получены кратные собственные числа.

Мысленно либо на черновике подставим в определитель и запишем однородную систему линейных уравнений:

Очевидно, «игрек» равен нулю: (иначе в первом уравнении получится неверное равенство). За «икс» можно принять любое ненулевое значение, в хорошем стиле положим, что . Не ленимся и проверяем, что эта пара значений удовлетворяет каждому уравнению системы!

Таким образом, кратным собственным числам соответствует одно множество коллинеарных друг другу собственных векторов в «лице» вектора , и поэтому канонического разложения матрицы не существует.

Почему? Потому что невозможно записать матрицу , которая должна состоять из двух линейно независимых собственных векторов. Размерность вектора равна двум («икс» и «игрек»), но сам-то вектор – один-одинёшенек. Коллинеарный товарищ, например , в пару не годится (хотя бы по той причине, что и обратной матрицы попросту не существует).

У рассмотренного примера есть простое геометрическое объяснение: матрица определяет не что иное, как «перекос Джоконды», у которого существует лишь одно множество коллинеарных друг другу собственных векторов, которые это линейное преобразование переводит в коллинеарные исходным, причём равные векторы (коль скоро, )

Ответ: собственные векторы не образуют базиса, поэтому требуемое разложение неосуществимо.

Обратите внимание на корректность и точность ответа – нас никто не спрашивал о собственных значениях и собственных векторах. Кстати, об условии – его могут сформулировать и коварно: записать матрицу линейного преобразования в базисе из собственных векторов. Коварство состоит в том, что здесь можно найти собственные числа и машинально дать нелегальный ответ . Но базиса-то не существует!

И сейчас назрели важные вопросы:

Сколько у матрицы собственных чисел и собственных векторов?

Ну, во-первых (вроде не говорил), эти понятия определены только для квадратных матриц.

И с собственными числами всё просто:

у матрицы существует ровно собственных значений.

Могут ли они быть комплексными? Запросто. Простейший пример: – матрица поворота декартовой системы координат против часовой стрелки на угол , отличный от 180 и 360 градусов. Возьмём «школьный» угол в 30 градусов, запишем соответствующую матрицу поворота и составим характеристическое уравнение:

Оно имеет сопряжённые комплексные корни , и дальнейшее решение показывает, что у рассматриваемого преобразования нет действительных собственных векторов. И это очевидно – при повороте на 30 градусов любой ненулевой вектор отображается в неколлинеарный ему вектор.

Случай второй, самый распространённый. Собственные числа матрицы действительны и различны (как, например, в Примерах 1, 2). Такое линейное преобразование имеет ровно собственных линейно независимых векторов, и его недиагональную матрицу всегда можно записать в виде .

Случай третий, самый интересный. Среди собственных чисел есть кратные, или же только кратные, как в Примере 3. В этих случаях неколлинеарных собственных векторов может оказаться… сколько угодно! Меньше, чем собственных чисел (Пример 3). Может оказаться ровно штук, и тогда будет существовать разложение .

А может – вообще бесконечно много! Например, при повороте плоскости на 180 градусов. Ему соответствует матрица с характеристическим уравнением с кратными собственными числами ; и, продолжая стандартное решение, мы приходим к симпатичной системе , которой удовлетворяют координаты вообще любого вектора. Таким образом, любой ненулевой вектор этого преобразования является собственным! Оно и неудивительно – ведь при повороте на 180 градусов любой ненулевой вектор отображается в коллинеарный и противоположно направленный вектор, например:
, и, вынося собственное число из столбца: , мы окончательно убеждаемся, что – есть собственный вектор.

Следует отметить, что этот поворот – частный случай преобразования подобия, и у подобия, к слову, тоже любой ненулевой вектор собственный. Коэффициент же подобия – есть не что иное, как соответствующее собственное значение, в частности, при все геометрические объекты сохраняют свои размеры неизменными

Однако не будем слишком увлекаться геометрией – ведь в термины вектор, базис и др. вкладывается, прежде всего, алгебраический смысл. Собственные векторы и собственные значения используются во многих математических задачах, моделях, но мы не будем увлекаться и ими 🙂 – сейчас важно освоить техническую сторону вопроса.

И задачи с матрицей «три на три» отличаются бОльшей технической сложностью:

Найти собственные векторы линейного преобразования, заданного матрицей

Решение: такая формулировка задачи смущать не должна – ведь это и есть «генеральная линия партии». Энтузиасты могут провести самостоятельные выкладки по аналогии с Примером № 1, я же ограничусь «рабочим» решением примера.

По условию требуется найти собственные векторы, но алгоритм таков, что в первую очередь всё равно нужно найти собственные числа.

Вычтем «лямбду» из всех чисел главной диагонали матрицы и составим её характеристическое уравнение:

Определитель раскроем по первому столбцу:

На этом месте немного притормозим и познакомимся с очень полезным техническим приёмом, который значительно упростит дальнейшую жизнь. Практически во всех методических пособиях вам будет предложено раскрыть все скобки, получить слева многочлен 3-й степени, затем подбором найти корень и стать жертвой долгих мытарств, описанных в Примере № 1 урока Сложные пределы. За годы практики я отработал рациональную схему, позволяющую избежать этих неприятностей:

Сначала представим в виде произведения «хвост» левой части:

Выполненное действие не привело к заметному результату.

Поэтому пробуем разложить на множители квадратный трёхчлен . Решив квадратное уравнение, получаем .

Вынесем за скобку и проведём дальнейшие упрощения:

Решаем ещё одно квадратное уравнение, в итоге:

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

Собственные значения всегда стараемся расположить в порядке возрастания:

Найдем собственные векторы:

1) Мысленно либо на черновике подставим значение в определитель , с которого «снимем» коэффициенты однородной системы:

Систему можно решить с помощью элементарных преобразований и в следующих примерах мы прибегнем к данному методу. Но здесь гораздо быстрее срабатывает «школьный» способ. Из 3-го уравнения выразим: – подставим во второе уравнение:

Поскольку первая координата нулевая, то получаем систему , из каждого уравнения которой следует, что .

И снова обратите внимание на обязательное наличие линейной зависимости. Если получается только тривиальное решение , то либо неверно найдено собственное число, либо с ошибкой составлена / решена система.

Компактные координаты даёт значение

И ещё раз – проверяем, что найденное решение удовлетворяет каждому уравнению системы. В последующих пунктах и в последующих задачах рекомендую принять данное пожелание за обязательное правило.

2) Для собственного значения по такому же принципу получаем следующую систему:

Из 2-го уравнения системы выразим: – подставим в третье уравнение:

Поскольку «зетовая» координата равна нулю, то получаем систему , из каждого уравнения которой следует линейная зависимость .

Проверяем, что решение удовлетворяет каждому уравнению системы.

Таким образом, собственный вектор: .

3) И, наконец, собственному значению соответствует система:

Второе уравнение выглядит самым простым, поэтому из него выразим и подставим в 1-е и 3-е уравнение:

Всё хорошо – выявилась линейная зависимость , которую подставляем в выражение :

В результате «икс» и «игрек» оказались выражены через «зет»: . На практике не обязательно добиваться именно таких взаимосвязей, в некоторых случаях удобнее выразить и через либо и через . Или даже «паровозиком» – например, «икс» через «игрек», а «игрек» через «зет»

Проверяем, что найденное решение удовлетворяет каждому уравнению системы и записываем третий собственный вектор

Ответ: собственные векторы:

Геометрически эти векторы задают три различных пространственных направления («туда-обратно»), по которым линейное преобразование переводит ненулевые векторы (собственные векторы) в коллинеарные им векторы.

Если бы по условию требовалось найти каноническое разложение , то здесь это возможно, т. к. различным собственным числам соответствуют разные линейно независимые собственные векторы. Составляем матрицу из их координат, диагональную матрицу из соответствующих собственных значений и находим обратную матрицу .

Если же по условию нужно записать матрицу линейного преобразования в базисе из собственных векторов, то просто указываем матрицу . Внимательно читайте, что требует условие той или иной задачи!

Задача с более простыми вычислениями для самостоятельного решения:

Найти собственные векторы линейного преобразования, заданного матрицей

При нахождении собственных чисел постарайтесь не доводить дело до многочлена 3-й степени. Системы можно решать разными путями – здесь нет однозначности, а векторы, которые вы укажите, могут отличаться от векторов в образце с точностью до пропорциональности их соответствующих координат. Например, и . Эстетичнее представить ответ в виде , но ничего страшного, если остановитесь и на втором варианте. Однако всему есть разумные пределы, версия смотрится уже не очень хорошо.

Примерный чистовой образец оформления задания в конце урока.

Как решать задачу в случае кратных собственных чисел?

Общий алгоритм остаётся прежним, но здесь есть свои особенности, и некоторые участки решения целесообразно выдержать в более строгом академичном стиле:

Найти собственные числа и собственные векторы

Решение: составим и решим характеристическое уравнение:

Конечно же, оприходуем сказочный первый столбец:

И, после разложения квадратного трёхчлена на множители:

В результате получены собственные числа , два из которых кратны.

Найдем собственные векторы:

1) С одиноким солдатом разделаемся по «упрощённой» схеме:

Из последних двух уравнений четко просматривается равенство , которое, очевидно, следует подставить в 1-е уравнение системы:

Лучшей комбинации не найти:
Собственный вектор:

2-3) Теперь снимаем пару часовых. В данном случае может получиться либо два, либо один собственный вектор. Невзирая на кратность корней, подставим значение в определитель , который приносит нам следующую однородную систему линейных уравнений:

Собственные векторы – это в точности векторы
фундаментальной системы решений

Собственно, на протяжении всего урока мы только и занимались тем, что находили векторы фундаментальной системы. Просто до поры до времени данный термин особо не требовался. Кстати, те ловкие студенты, которые в маскхалатах проскочили тему однородных уравнений, будут вынуждены вкурить её сейчас.

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

Единственное действие состояло в удалении лишних строк. В результате получена матрица «один на три» с формальной «ступенькой» посередине.
– базисная переменная, – свободные переменные. Свободных переменных две, следовательно, векторов фундаментальной системы тоже два.

Выразим базисную переменную через свободные переменные: . Нулевой множитель перед «иксом» позволяет принимать ему совершенно любые значения (что хорошо видно и из системы уравнений).

В контексте данной задачи общее решение удобнее записать не в строку, а в столбец:

Паре соответствует собственный вектор:
Паре соответствует собственный вектор:

Примечание: искушенные читатели могут подобрать данные векторы и устно – просто анализируя систему , но тут нужны некоторые знания: переменных – три, ранг матрицы системы – единица, значит, фундаментальная система решений состоит из 3 – 1 = 2 векторов. Впрочем, найденные векторы отлично просматриваются и без этих знаний чисто на интуитивном уровне. При этом даже «красивее» запишется третий вектор: . Однако предостерегаю, в другом примере простого подбора может и не оказаться, именно поэтому оговорка предназначена для опытных людей. Кроме того, а почему бы не взять в качестве третьего вектора, скажем, ? Ведь его координаты тоже удовлетворяют каждому уравнение системы, и векторы линейно независимы. Такой вариант, в принципе, годен, но «кривоват», поскольку «другой» вектор представляет собой линейную комбинацию векторов фундаментальной системы.

Ответ: собственные числа: , собственные векторы:

Аналогичный пример для самостоятельного решения:

Найти собственные числа и собственные векторы

Примерный образец чистового оформления в конце урока.

Следует отметить, что и в 6-м и в 7-м примере получается тройка линейно независимых собственных векторов, и поэтому исходная матрица представима в каноническом разложении . Но такая малина бывает далеко не во всех случаях:

Найти собственные числа и собственные векторы матрицы

Решение: составим и решим характеристическое уравнение:

Определитель раскроем по первому столбцу:

Дальнейшие упрощения проводим согласно рассмотренной методике, избегая многочлена 3-й степени:

Найдем собственные векторы:

1) С корнем затруднений не возникает:

Не удивляйтесь, помимо комплекта в ходу также переменные – разницы тут никакой.

Из 3-го уравнения выразим – подставим в 1-е и 2-е уравнения:

Из обоих уравнений следует:

2-3) Для кратных значений получаем систему .

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

(1) Ко второй строке прибавили первую строку, умноженную на –2.

(2) Последние две строки одинаковы, одну из них удалили.

(3) Дальше пошла уместная доводка матрицы методом Гаусса-Жордана: к первой строке прибавили вторую строку.

(4) У первой строки сменили знак.

Переменные – базисные, переменная – свободная. Так как свободная переменная одна, то фундаментальная система решений состоит из одного вектора. И мы счастливые наблюдатели случая, когда кратным собственным числам соответствует единственный собственный вектор. Записываем в столбец общее решение системы: , и, задавая свободной переменной значение , получаем нашего героя:

Ответ: собственные числа: , собственные векторы: .

Здесь матрицу нельзя представить виде – по той простой причине, что «собственного» базиса не существует – хоть трёхмерные векторы-столбцы и линейно независимы, но самих-то их всего лишь два. Недобор.

Шестое чувство мне подсказывает, что многие воодушевились на задание повышенной сложности:

Найти собственные числа и собственные векторы матрицы

Можно ли записать каноническое разложение этой матрицы?

Не беда, если дело застопорилось, в психотерапевтических целях отложите тетрадь с решением на чёрный день. Когда заест скука – самое то =)

Решения и ответы:

Пример 2: Решение: Найдем собственные значения. Составим и решим характеристическое уравнение:

– собственные значения.
Найдем собственные векторы:
1)

Пусть
– собственный вектор.
2)

Пусть
– собственный вектор.
Ответ: собственные значения: , собственные векторы: .

Пример 5: Решение: сначала найдем собственные числа. Составим и решим характеристическое уравнение:

Определитель раскроем по первой строке:

– собственные значения.
Найдем собственные векторы:
1)

Пусть

2)

Пусть

3)

Пусть

Ответ: собственные векторы:

Пример 7: Решение: составим и решим характеристическое уравнение:

– собственные значения.
Найдем собственные векторы:
1-2)

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

Выразим базисную переменную через свободные переменные: и запишем общее решение: . Найдём векторы фундаментальной системы, которые и являются собственными векторами матрицы:
Паре соответствует собственный вектор:
Паре соответствует собственный вектор:
Примечание: в качестве решения системы линейных уравнений напрашивается тройка , но вектор линейно выражается через векторы фундаментальной системы. Использование такого и подобных ему решений в качестве одного из собственных векторов корректно, но нестандартно.
3)

Пусть

Ответ: собственные числа: , собственные векторы:

Пример 9: Решение: Составим и решим характеристическое уравнение:

Определитель вычислим понижением порядка. К третьей строке прибавим вторую строку, умноженную на –1. К четвёртой строке прибавим вторую строку, умноженную на :

Разложим определитель по 4-му столбцу:

К третьей строке прибавим первую строку:

Собственные значения:

Найдем собственные векторы:
1)

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

(1) Первую и третью строку поменяли местами.
(2) Ко 2-й и 3-й строкам прибавили первую строку, умноженную на –1 и –2 соответственно.
(3) Вторую строку разделили на 2.
(4) К 3-й и 4-й строкам прибавили вторую строку, умноженную на –1.
(5) Последние две строки пропорциональны, третью строку удалили. У первой строки сменили знак, вторую строку умножили на 2.
(6) К первой и второй строкам прибавили третью строку.
(7) У первой строки сменили знак, последние две строки разделили на 2.
Выразив базисные переменные через свободную, запишем общее решение: . Придаём свободной переменной значение и получаем собственный вектор
2-3)

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

(1) Первая и четвёртая строки одинаковы. Вторая и третья строки одинаковы. Первую и вторую строку удалили из матрицы.
Выразим базисные переменные через свободные переменные :

Таким образом, общее решение: .
Фундаментальная система состоит из двух векторов:
при получаем ;
при получаем .

4)

Запишем матрицу системы и с помощью элементарных преобразований приведём её к ступенчатому виду:

(1) Первую и третью строку поменяли местами.
(2) Ко 2-й и 3-й строкам прибавили первую строку, умноженную на –1 и 2 соответственно.
(3) Вторую строку разделили на 2.
(4) К 3-й и 4-й строкам прибавили вторую строку.
(5) Последние две строки пропорциональны, третью строку удалили. Вторую строку умножили на –2.
(6) К первой и второй строкам прибавили третью строку.
(7) Последние две строки разделили на 2.
Общее решение: . Придаём свободной переменной значение и получаем собственный вектор .

Ответ: собственные значения: , собственные векторы:
. Перечисленные четыре четырехмерных вектора линейно независимы, и поэтому матрицу линейного преобразования можно записать в виде . Но не нужно =)

Автор: Емелин Александр

Блог Емелина Александра

(Переход на главную страницу)

Zaochnik.com – профессиональная помощь студентам,

cкидкa 15% на первый зaкaз, при оформлении введите прoмoкoд: 5530-hihi5

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *