Все курсы > Линейная алгебра > Занятие 3
На прошлых занятиях мы поговорили про векторы и векторные пространства. Сегодня рассмотрим матрицы и линейные преобразования.
Ноутбук к сегодняшнему занятию⧉
Как матрицы преобразовывают пространство
Посмотрим, как матрица может изменить положение вектора.
Преобразование базисных векторов
Начнем с базисных векторов. Возьмем матрицу $A$ и два базисных вектора $mathbf i$ и $mathbf j$.
|
A = np.array([[2, 3], [5, 1]]) i = np.array([1, 0]) j = np.array([0, 1]) |
Если поочередно умножить матрицу на каждый из векторов, то первый столбец матрицы $A$ определит новые координаты вектора $mathbf i$, второй столбец — вектора $mathbf j$.
$$ begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} cdot begin{bmatrix} 1 \ 0 end{bmatrix} = begin{bmatrix} 2 \ 5 end{bmatrix} $$
$$ begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} cdot begin{bmatrix} 0 \ 1 end{bmatrix} = begin{bmatrix} 3 \ 1 end{bmatrix} $$
Так трансформационная матрица (transformation matrix, левый множитель) оказывает влияние на базисные (и все остальные) векторы и, таким образом, меняет пространство.
Посмотрим на результат на графике.
|
ax = plt.axes() plt.xlim([—0.5, 5]) plt.ylim([—0.5, 6]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # найдем координаты с помощью произведения arrow_a = ax.arrow(0, 0, np.dot(A, i)[0], np.dot(A, i)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘r’, ec = ‘r’) arrow_b = ax.arrow(0, 0, np.dot(A, j)[0], np.dot(A, j)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘r’, ec = ‘r’) plt.show() |
Продемонстрируем, что при преобразовании любого вектора, мы по сути меняем базисные векторы, умноженные на скаляр. Рассмотрим, как в результате умножения матрицы A на вектор $mathbf r$, мы получим новый вектор $mathbf r’$.
$$A cdot mathbf r = mathbf r’ $$
Очевидно, мы можем умножать векторы $mathbf r$ и $mathbf r’$ на скаляр $n$ или представить их в виде суммы двух (базисных) векторов.
$$A cdot n mathbf r = n mathbf r’ $$
$$A cdot (mathbf i + mathbf j) = (mathbf i + mathbf j)’ $$
Тогда справедливо, что
$$A cdot (n mathbf i+m mathbf j) = (n mathbf i+m mathbf j)’ $$
Выполним умножение.
$$ A cdot (n mathbf i + m mathbf j) = (nA mathbf i+mA mathbf j) = n mathbf i’ + m mathbf j’ $$
Обратите внимание, что умножение матрицы на скаляр коммутативно, то есть $A n mathbf i = n A mathbf i $.
Таким образом, можно сказать, что при преобразовании пространства матрица преобразует масштабированные (scaled) базисные векторы. Приведем пример.
$$ begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} begin{bmatrix} 2 \ 4 end{bmatrix} = begin{bmatrix} 16 \ 14 end{bmatrix} $$
$$ begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} left( 2 begin{bmatrix} 1 \ 0 end{bmatrix} + 4 begin{bmatrix} 0 \ 1 end{bmatrix} right) = begin{bmatrix} 16 \ 14 end{bmatrix} $$
$$ 2 begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} begin{bmatrix} 1 \ 0 end{bmatrix} + 4 begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} begin{bmatrix} 0 \ 1 end{bmatrix} = begin{bmatrix} 16 \ 14 end{bmatrix} $$
$$ 2 begin{bmatrix} 2 \ 5 end{bmatrix} + 4 begin{bmatrix} 3 \ 1 end{bmatrix} = begin{bmatrix} 16 \ 14 end{bmatrix} $$
Иначе говоря, «новые», преобразованные векторы будут иметь те же координаты относительно нового базиса, что и исходный вектор, относительно исходного базиса (потому что $n$ и $m$ или 2 и 4 в примере выше не изменяются при преобразовании).
Свойства преобразований
Вначале дадим описательное определение линейной трансформации пространства.
При линейном преобразовании начало координат не смещается, а линии координатной сетки остаются параллельными и сохраняют исходное расстояние друг от друга (origin remains fixed, grid lines remain parallel and evenly spaced).
Более формально свойства трансформации ($T$), которую также можно назвать функцией (function) или отображением (mapping) относительно векторов $mathbf v$ и $mathbf w$ можно выразить через две заданные в линейном пространстве операции сложения и умножения на скаляр.
- $ T(mathbf v + mathbf w) = T(mathbf v) + T(mathbf w) $
- $ T(c mathbf v) = c T(mathbf v) $
Примечение. Несмещение начала координат можно рассматривать как частный случай свойства 2, так как преобразование нулевого вектора должно дать нулевой вектор $T(mathbf 0) = mathbf 0 $. Приведем пример линейного и нелинейного преобразований.
Пример 1. Проекция
Рассмотрим проекцию $T: mathbb R^2 rightarrow mathbb R^2 $.
Проверим приведенные выше свойства:
- $ T(mathbf v + mathbf w) = T(mathbf v) + T(mathbf w) $
- если, например, вектор $mathbf v$ увеличить в два раза, то и проекция увеличится в два раза
- начало координат при проекции не смещается, то есть $T(mathbf 0) = mathbf 0 $
Пример 2. Нелинейное преобразование
Предположим, что мы хотим сместить каждый вектор проскости (в частности, вектор $ mathbf v $) на некоторый вектор $ mathbf d $.
Очевидно нарушается второе свойство, например, $ T(2 mathbf v) not= 2T(mathbf v) $. Более того, смещается начало координат, $T(mathbf 0) = mathbf d $.
Умножение матрицы на вектор
Важно, что умножение матрицы $A$ на векторы $mathbf v$ и $mathbf w$, т.е. $T(mathbf v) = A mathbf v$ и $T(mathbf w) = A mathbf w$ всегда линейно, так как
- $ A(mathbf v + mathbf w) = A(mathbf v) + A(mathbf w) $
- $ A(c mathbf v) = c A(mathbf v) $
Соответственно, задача линейного преобразования сводится к нахождению правильной трансформационной матрицы (причем в известной, заданной системе координат).
Например, если мы хотим перейти от трех измерений к двум, $T: mathbb R^3 rightarrow mathbb R^2$, то нам потребуется матрица $2 times 3$:
В общем случае матрица $A$ размерностью $m times n$ соответствует $ T: R^n rightarrow R^m $.
Смена базиса
Как уже было сказано, если линейное преобразование задано матрицей, то введена система координат (базис).
- На вход матрица получает базис $ mathbf v_1,…, mathbf v_n in R^n $
- На выходе выдает $ mathbf w_1,…, mathbf w_m in R^m $
Другими словами, при преобразовании линейной комбинации $mathbf v_1,…, mathbf v_n$ в линейную комбинацию $mathbf w_1,…, mathbf w_m$ происходит смена базиса. Например,
$$ mathbf v = c_1 mathbf v_1 + c_2 mathbf v_2 rightarrow T(mathbf v) = c_1 mathbf w_1 + c_2 mathbf w_2 $$
Пример 3. Производная как линейное преобразование
Интересно, что взятие производной линейно. Предположим, что у нас есть некоторая функция $ f(x) = c_1 + c_2 x + c_3 x^2 $. Ее базис: ${ 1, x, x^2 }$. Тогда производной будет $f'(x) = c_2 + 2 c_3 x $ с базисом ${ 1, x }$. Найти производную можно с помощью матрицы
$$ begin{bmatrix} 0 & 1 & 0 \ 0 & 0 & 2 end{bmatrix} begin{bmatrix} c_1 \ c_2 \ c_3 end{bmatrix} = begin{bmatrix} c_2 \ 2c_3 end{bmatrix} $$
Решение системы уравнений как преобразование
Теперь рассмотрим решение системы линейных уравнений (simultaneous equations) с точки зрения трансформации пространства.
$$ begin{bmatrix} 2 & 3 \ 5 & 1 end{bmatrix} begin{bmatrix} a \ b end{bmatrix} = begin{bmatrix} 8 \ 13 end{bmatrix}$$
По сути, нам нужно найти такой вектор $begin{bmatrix} a \ b end{bmatrix}$, при умножении матрицы на который мы окажемся в точке $ begin{bmatrix} 8 \ 13 end{bmatrix} $.
Виды преобразований
Можно выделить некоторые часто встречающиеся виды преобразований. Создадим вектор $mathbf x$.
Единичная матрица
Если умножить единичную матрицу (identity matrix) на вектор $mathbf x$, ничего не произойдет.
|
I = np.array([[1, 0], [0, 1]]) np.dot(I, x) |
Обратите внимание, мы легко можем догадаться, что с вектором после преобразования ничего не произойдет, потому что столбцы трансформационной матрицы в точности повторяют векторы базиса $mathbf i$ и $mathbf j$.
Сжатие и растяжение
При сжатии или растяжении (scaling) координаты вектора соответственно уменьшаются или увеличиваются в размере. В случае базисных векторов, они не меняют направления. Приведем пример растяжения.
|
# столбцы — это тот же базис, но # единицы увеличены в три и два раза соответственно Scale = np.array([[3, 0], [0, 2]]) np.dot(Scale, x) |
Посмотрим, как это выглядит на графике.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
ax = plt.axes() plt.xlim([—0.5, 9.5]) plt.ylim([—0.5, 9.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, np.dot(Scale, i)[0], np.dot(Scale, i)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Scale, j)[0], np.dot(Scale, j)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), 3, 2, fill = False, edgecolor = ‘b’, lw = 2)) ax.arrow(0, 0, np.dot(Scale, x)[0], np.dot(Scale, x)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘r’, ec = ‘r’) plt.show() |
Дадим некоторые пояснения. Преобразования пространства удобно описывать с помощью площади, образованной двумя (в пространстве $R^2$) векторами.
- Зеленый квадрат: площадь базисных векторов
- Синий квадрат: площадь масштабированных базисных векторов
- Красный вектор: масштабированный вектор $mathbf x$
Обратите внимание, векторы базиса $mathbf i$ и $mathbf j$ после трансформации сохранили направление, вектор $ mathbf r $ сместился выше. Понимание того, что некоторые векторы сохраняют направление, а некоторые — нет, очень пригодится позднее.
Приведем пример сжатия. Для этого нужно, чтобы ненулевые координаты матрицы были меньше единицы.
|
Squish = np.array([[.5, 0], [0, .5]]) np.dot(Squish, x) |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
ax = plt.axes() plt.xlim([—0.5, 2.5]) plt.ylim([—0.5, 2.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, np.dot(Squish, i)[0], np.dot(Squish, i)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Squish, j)[0], np.dot(Squish, j)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), .5, .5, fill = False, edgecolor = ‘b’, lw = 2)) ax.arrow(0, 0, np.dot(Squish, x)[0], np.dot(Squish, x)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘r’, ec = ‘r’) plt.show() |
Отражение
Отражение (reflection) как бы «перекидывает» вектор на другую сторону от осей координат. Посмотрим на отражение относительно оси y (то есть «перекидывать» мы будем вектор $mathbf i$). Для этого в первом столбце трансформационной матрицы 1 меняется на $-1$.
|
Reflect_y = np.array([[—1, 0], [0, 2]]) # посмотрим, где окажется вектор x np.dot(Reflect_y, x) |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
ax = plt.axes() plt.xlim([—1.5, 1.5]) plt.ylim([—0.2, 2.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # отражается относительно оси y ax.arrow(0, 0, np.dot(Reflect_y, i)[0], np.dot(Reflect_y, i)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) # вектор j мы растягиваем ax.arrow(0, 0, np.dot(Reflect_y, j)[0], np.dot(Reflect_y, j)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), —1, 2, fill = False, edgecolor = ‘b’, lw = 2)) plt.show() |
Выполним отражение относительно обеих осей.
|
Invert = np.array([[—1, 0], [0, —1]]) np.dot(Invert, x) |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
ax = plt.axes() plt.xlim([—1.5, 1.5]) plt.ylim([—1.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # отражается относительно оси y ax.arrow(0, 0, np.dot(Invert, i)[0], np.dot(Invert, i)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) # отражается относительно оси x ax.arrow(0, 0, np.dot(Invert, j)[0], np.dot(Invert, j)[1], width = 0.02, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), —1, —1, fill = False, edgecolor = ‘b’, lw = 2)) plt.show() |
Матрица перестановки
Матрица перестановки (permutation matrix) позволяет поменять векторы $mathbf i$ и $mathbf j$ местами.
|
P = np.array([[0, 1], [1, 0]]) # посмотрим, где окажется вектор x np.dot(P, x) |
|
# а также базисные векторы np.dot(P, i), np.dot(P, j) |
|
(array([0, 1]), array([1, 0])) |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
ax = plt.axes() plt.xlim([—0.5, 1.5]) plt.ylim([—0.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # i и j меняются местами ax.arrow(0, 0, np.dot(P, i)[0], np.dot(P, i)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(P, j)[0], np.dot(P, j)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘b’, lw = 1)) plt.show() |
Сдвиг (трансвекция)
Сдвиг или трансвекция (shear) предполагает, что один из базисных векторов остается на месте, второй сдвигается.
|
# вектор i остается на месте, j сдвигается Shear = np.array([[1, 1], [0, 1]]) np.dot(Shear, x) |
|
ax = plt.axes() plt.xlim([—0.5, 2.5]) plt.ylim([—0.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, np.dot(Shear, i)[0], np.dot(Shear, i)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Shear, j)[0], np.dot(Shear, j)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Polygon([[0, 0], [1, 0], [2, 1], [1, 1]], fill = False, edgecolor = ‘b’, lw = 2)) plt.show() |
Вращение
Посмотрим, как можно повернуть (rotate) базисные векторы на 90 градусов против часовой стрелки.
|
# поворот на 90 градусов против часовой стрелки Rotate = np.array([[0, —1], [1, 0]]) np.dot(Rotate, x) |
|
ax = plt.axes() plt.xlim([—1.5, 1.5]) plt.ylim([—0.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, np.dot(Rotate, i)[0], np.dot(Rotate, i)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Rotate, j)[0], np.dot(Rotate, j)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.add_patch(Rectangle((0, 0), 1, 1, fill = False, edgecolor = ‘g’, lw = 2)) ax.add_patch(Rectangle((0, 0), —1, 1, fill = False, edgecolor = ‘b’, lw = 2)) plt.show() |
Поворот на определенный угол против часовой стрелки.
|
theta = np.radians(90) Rotate = np.array([[np.cos(theta), —np.sin(theta)], [np.sin(theta), np.cos(theta)]]) np.dot(Rotate, x) |
Смысл такой трансформации представлен на схеме ниже. Для поворота на 90 градусов против часовой стрелки вспомним, что
- для вектора $mathbf i quad cos(90^{circ}) = 0, quad -sin(90^{circ}) = -1$
- для вектора $mathbf j quad sin(90^{circ}) = 1, quad cos(90^{circ}) = 0$
Видео про линейные преобразования⧉.
Композиция преобразований
Посмотрим, что произойдет, если применить сначала поворот на 90 градусов по часовой стрелке, затем отражение относительно оси y.
Так как матрица преобразования стоит слева от преобразуемого вектора, то для применения двух преобразований, матрица второго преобразования будет стоять слева от матрицы первого.
$$ Reflect_y cdot (Rotate cdot mathbf x ) $$
Подготовим матрицы.
|
# поворот по часовой стрелки theta = np.radians(90) Rotate = np.array([[np.cos(theta), np.sin(theta)], [—np.sin(theta), np.cos(theta)]]).round() Rotate |
|
array([[ 0., 1.], [-1., 0.]]) |
|
# отражение относительно оси y Reflect_y = np.array([[—1, 0], [0, 1]]) Reflect_y |
|
array([[-1, 0], [ 0, 1]]) |
Выполним преобразование.
|
np.dot(Reflect_y, np.dot(Rotate, i)), np.dot(Reflect_y, np.dot(Rotate, j)) |
|
(array([ 0., -1.]), array([-1., 0.])) |
Посмотрим на этот процесс графически. Вначале первое преобразование (вращение).
|
ax = plt.axes() plt.xlim([—1.5, 1.5]) plt.ylim([—1.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # поворот по часовой стрелке ax.arrow(0, 0, np.dot(Rotate, i)[0], np.dot(Rotate, i)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Rotate, j)[0], np.dot(Rotate, j)[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) plt.show() |
Теперь применим второе преобразование (отражение) к результату первого.
|
ax = plt.axes() plt.xlim([—1.5, 1.5]) plt.ylim([—1.5, 1.5]) plt.grid() ax.arrow(0, 0, i[0], i[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) ax.arrow(0, 0, j[0], j[1], width = 0.03, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘g’, ec = ‘g’) # отображение относительно оси y ax.arrow(0, 0, np.dot(Reflect_y, np.dot(Rotate, i))[0], np.dot(Reflect_y, np.dot(Rotate, i))[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) ax.arrow(0, 0, np.dot(Reflect_y, np.dot(Rotate, j))[0], np.dot(Reflect_y, np.dot(Rotate, j))[1], width = 0.01, head_width = 0.1, head_length = 0.2, length_includes_head = True, fc = ‘b’, ec = ‘b’) plt.show() |
Запишем, где оказались векторы $mathbf i$ и $mathbf j$ после второго преобразования и соединим эти координаты в матрицу. Затем умножим на исходные векторы $mathbf i$ и $mathbf j$.
|
Composition = np.array([[0, —1], [—1, 0]]) np.dot(Composition, i), np.dot(Composition, j) |
|
(array([ 0, -1]), array([-1, 0])) |
Результат аналогичен последовательному применению предыдущих преобразований.
|
# то же самое мы получим, перемножив матрицы преобразований np.dot(Reflect_y, Rotate) |
|
array([[ 0., -1.], [-1., 0.]]) |
Обратите внимание, что порядок операций важен. Поменяв матрицы преобразований местами, мы получим другой результат.
|
# выполнив отражение, а затем поворот, # мы вернем векторы в исходное положение np.dot(Rotate, np.dot(Reflect_y, i)), np.dot(Rotate, np.dot(Reflect_y, j)) |
|
(array([0., 1.]), array([1., 0.])) |
Это еще раз демонстрирует некоммутативность, но ассоциативность умножения матриц.
Приведем ссылки на видео:
- Умножение матриц как последовательность преобразований⧉
- Линейные преобразования в трехмерном пространстве⧉
Подведем итог
Мы посмотрели, как матрицы преобразовывают пространство и на примерах изучили, чем линейные преобразования отличаются от нелинейных. Кроме того, мы познакомились с основными видами линейных преобразований.
Рассмотрим системы линейных уравнений.
Матрицы линейных преобразований
Пусть
в n-
мерном линейном пространстве с базисом
,
,…,
задано линейное преобразование А. Тогда
векторы А,А
,…,А
—
также векторы этого пространства и их
можно представить в виде линейной
комбинации векторов базиса:
A=
a11+
a21+…+
an1
A=
a12+
a22+…+
an2
……………………………….
A=
an1+
an2+…+
ann
Тогда
матрица А =
называется матрицей
линейного преобразования А.
Если
в пространстве L
взять вектор
=
x1+
x2+…+
xn,
то A
L.
,
где
……………………………..
Эти
равенства можно назвать линейным
преобразованием в базисе
,
,…,
.
В
матричном виде:

А
Пример.
Найти матрицу линейного преобразования,
заданного в виде:
x
= x + y
y
= y + z
z
= z + x
x
= 1x
+ 1y
+ 0z
y
= 0x
+ 1y
+ 1z
z
= 1x
+ 0y
+ 1z
A
=
На практике действия
над линейными преобразованиями сводятся
к действиям над их матрицами.
Определение:
Если вектор
переводится
в вектор
линейным преобразованием с матрицей
А, а вектор
в вектор
линейным преобразованием с матрицей
В, то последовательное применение этих
преобразований равносильно линейному
преобразованию, переводящему вектор
в вектор
(оно
называется произведением
составляющих преобразований).
С
= ВА
Пример.
Задано линейное преобразование А,
переводящее вектор
в
вектор
и линейное преобразование В, переводящее
вектор
в вектор
.
Найти матрицу линейного преобразования,
переводящего вектор
в вектор
.
С
= ВА
Т.е.
Примечание:
Если А=
0, то преобразование вырожденное, т.е.,
например, плоскость преобразуется не
в целую плоскость, а в прямую.
Собственные значения и собственные векторы линейного преобразования
Определение:
Пусть L
– заданное n-
мерное линейное пространство. Ненулевой
вектор
L
называется собственным
вектором
линейного преобразования А, если
существует такое число ,
что выполняется равенство:
A.
При
этом число
называется собственным
значением (характеристическим числом)
линейного преобразования А, соответствующего
вектору
.
Определение:
Если линейное преобразование А в
некотором базисе
,
,…,
имеет матрицу А =

то собственные значения линейного
преобразования А можно найти как корни
1,
2,
… ,n
уравнения:
Это
уравнение называется характеристическим
уравнением,
а его левая часть- характеристическим
многочленом
линейного преобразования А.
Следует
отметить, что характеристический
многочлен линейного преобразования не
зависит от выбора базиса.
Рассмотрим
частный
случай. Пусть
А – некоторое линейное преобразование
плоскости, матрица которого равна

Тогда преобразование А может быть задано
формулами:

в
некотором базисе
.
Если
преобразование А имеет собственный
вектор с собственным значением ,
то А.
или
Т.к.
собственный вектор
ненулевой,
то х1
и х2
не равны нулю одновременно. Т.к. данная
система однородна, то для того, чтобы
она имела нетривиальное решение,
определитель системы должен быть равен
нулю. В противном случае по правилу
Крамера система имеет единственное
решение – нулевое, что невозможно.
Полученное
уравнение является характеристическим
уравнением линейного преобразования
А.
Таким
образом, можно найти собственный вектор
(х1,
х2)
линейного преобразования А с собственным
значением ,
где
— корень характеристического уравнения,
а х1
и х2
– корни системы уравнений при подстановке
в нее значения .
Понятно,
что если характеристическое уравнение
не имеет действительных корней, то
линейное преобразование А не имеет
собственных векторов.
Следует
отметить, что если
—
собственный вектор преобразования А,
то и любой вектор ему коллинеарный –
тоже собственный с тем же самым собственным
значением .
Действительно,
.
Если учесть, что векторы имеют одно
начало, то эти векторы образуют так
называемое собственное
направление или
собственную
прямую.
Т.к.
характеристическое уравнение может
иметь два различных действительных
корня 1
и 2,
то в этом случае при подстановке их в
систему уравнений получим бесконечное
количество решений. (Т.к. уравнения
линейно зависимы). Это множество решений
определяет две собственные
прямые.
Если
характеристическое уравнение имеет
два равных корня 1
= 2
= ,
то либо имеется лишь одна собственная
прямая, либо, если при подстановке в
систему она превращается в систему
вида:

Эта система удовлетворяет любым значениям
х1
и х2.
Тогда все векторы будут собственными,
и такое преобразование называется
преобразованием
подобия.
Пример.
Найти характеристические числа и
собственные векторы линейного
преобразования с матрицей А =
.
Запишем
линейное преобразование в виде:
Составим
характеристическое уравнение:
2
— 8
+ 7 = 0;
Корни
характеристического уравнения: 1
= 7; 2
= 1;
Для
корня 1
= 7:
Из
системы получается зависимость: x1
– 2x2
= 0. Собственные
векторы для первого корня характеристического
уравнения имеют координаты: (t;
0,5t)
где t—
параметр.
Для
корня 2
= 1:
Из
системы получается зависимость: x1
+ x2
= 0. Собственные
векторы для второго корня характеристического
уравнения имеют координаты: (t;
—t)
где t—
параметр.
Полученные
собственные векторы можно записать в
виде:
Пример.
Найти характеристические числа и
собственные векторы линейного
преобразования с матрицей А =
.
Запишем
линейное преобразование в виде:
Составим
характеристическое уравнение:
2
— 4
+ 4 = 0;
Корни
характеристического уравнения: 1
= 2
= 2;
Получаем:
Из
системы получается зависимость: x1
– x2
= 0. Собственные
векторы для первого корня характеристического
уравнения имеют координаты: (t;
t)
где t—
параметр.
Собственный
вектор можно записать:
.
Рассмотрим
другой частный
случай. Если
—
собственный вектор линейного преобразования
А, заданного в трехмерном линейном
пространстве, а х1,
х2,
х3
– компоненты этого вектора в некотором
базисе
,
то
,
где
— собственное значение (характеристическое
число) преобразования А.
Если
матрица линейного преобразования А
имеет вид:

то
Характеристическое
уравнение:
Раскрыв
определитель, получим кубическое
уравнение относительно .
Любое кубическое уравнение с действительными
коэффициентами имеет либо один, либо
три действительных корня.
Тогда
любое линейное преобразование в
трехмерном пространстве имеет собственные
векторы.
Пример.
Найти характеристические числа и
собственные векторы линейного
преобразования А, матрица линейного
преобразования А =

Составим
характеристическое уравнение:
(1
— )((5
— )(1
— )
— 1) — (1 —
— 3) + 3(1 — 15 + 3)
= 0
(1
— )(5
— 5
—
+ 2
— 1) + 2 +
— 42 + 9
= 0
(1
— )(4
— 6
+ 2)
+ 10
— 40 = 0
4
— 6
+ 2
— 4
+ 62
— 3
+ 10
— 40 = 0
-3
+ 72
– 36 = 0
-3
+ 92
— 22
– 36 = 0
-2(
+ 2) + 9(2
– 4) = 0
(
+ 2)(-2
+ 9
— 18) = 0
Собственные
значения: 1
= -2; 2
= 3; 3
= 6;
1)
Для 1
= -2:
Если
принять х1
= 1, то

х2
= 0; x3
= -1;
Собственные
векторы:
2)
Для 2
= 3:
Если
принять х1
= 1, то

х2
= -1; x3
= 1;
Собственные
векторы:
3)
Для 3
= 6:
Если
принять х1
= 1, то

х2
= 2; x3
= 1;
Собственные
векторы:
Пример.
Найти характеристические числа и
собственные векторы линейного
преобразования А, матрица линейного
преобразования А =

Составим
характеристическое уравнение:
-(3
+ )((1
— )(2
— )
– 2) + 2(4 — 2
— 2) — 4(2 — 1 + )
= 0
-(3
+ )(2
—
— 2
+ 2
— 2) + 2(2 — 2)
— 4(1 + )
= 0
-(3
+ )(2
— 3)
+ 4 — 4
— 4 — 4
= 0
-32
+ 9
— 3
+ 32
— 8
= 0
-3
+
= 0
1
= 0; 2
= 1; 3
= -1;
Для
1
= 0:
Если
принять х3
= 1, получаем х1
= 0, х2
= -2
Собственные
векторы
t,
где t
– параметр.
Для
самостоятельного решения:
Аналогично найти
и
для 2
и 3.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
Элементарные преобразования матриц
Квадратную матрицу, полученную из единичной при помощи конечного числа элементарных преобразований, будем называть элементарной. Покажем, что элементарные преобразования можно представить как процесс умножения данной матрицы на элементарные матрицы.
I. Перестановка двух столбцов (строк) матрицы. Пусть дана матрица размеров
. Для перестановки двух столбцов (i-гo и j-го) данной матрицы достаточно умножить ее справа на квадратную матрицу
n-го порядка вида
(1.1)
Эта матрица получена из единичной матрицы n-го порядка при помощи перестановки i-го и j-го столбцов.
Чтобы поменять местами две строки (i-ю и j-ю) данной матрицы , достаточно умножить ее слева на элементарную матрицу
m-го порядка вида
(1.2)
Эта матрица получена из единичной матрицы m-го порядка при помощи перестановки i-й и j-й строк.
Пример 1.33. Дана матрица . Показать, что умножение данной матрицы слева на матрицу
приводит к перестановке 2-й и 3-й строк матрицы
, а умножение данной матрицы
справа на матрицу
приводит к перестановке 2-го и 4-го столбцов.
Решение
II. Умножение всех элементов одного столбца (строки) матрицы на одно и то же число, отличное от нуля. Пусть дана матрица размеров
. Для умножения всех элементов одного столбца (i-го) данной матрицы на одно и то же число
, отличное от нуля, достаточно умножить матрицу
справа на элементарную матрицу:
1.3
Эта квадратная матрица n-го порядка получена из единичной матрицы n-го порядка умножением i-го столбца на число .
Чтобы умножить все элементы i-й строки данной матрицы на одно и то же число , отличное от нуля, достаточно умножить матрицу
слева на элементарную матрицу вида:
1.4
Эта квадратная матрица m-ro порядка получена из единичной матрицы m-го порядка умножением i-й строки на число .
Пример 1.34. Дана матрица . Показать, что умножение данной матрицы слева на матрицу
приводит к умножению всех элементов 1-й строки матрицы
на число 2; умножение матрицы
справа на матрицу
приводит к умножению 3-го столбца матрицы
на матрицу на число 3.
Решение
Матрица имеет размеры
, т.е.
. Матрица
получена из единичной матрицы второго порядка умножением первой строки на число 2. Матрица
получена из единичной матрицы третьего порядка умножением 3-го столбца на число 3. Находим произведения:
что и требовалось показать.
III. Прибавление к элементам одного столбца (строки) соответствующих элементов другого столбца (строки), умноженных на одно и то же число. Пусть дана матрица размеров
. Чтобы прибавить к одному столбцу (i-му) соответствующие элементы другого столбца (j-го), умноженные на одно и то же число
, достаточно умножить матрицу
справа на элементарную матрицу вида:
(1.5)
Эта квадратная матрица n-го порядка получена из единичной матрицы n-го порядка в результате прибавления к i-му столбцу соответствующих элементов j-го столбца, умноженных на число .
Чтобы прибавить к одной строке (i-й) соответствующие элементы другой строки (j-й), умноженные на одно и то же число , достаточно умножить матрицу
слева на элементарную матрицу вида:
(1.6)
Эта квадратная матрица m-го порядка получена из единичной матрицы m-го порядка прибавлением к элементам i -й строки соответствующих элементов j-й строки, умноженных на число .
Пример 1.35. Дана матрица . Показать, что умножение данной матрицы слева на матрицу
приводит к прибавлению к элементам второй строки соответствующих элементов первой строки, умноженных на (-2).
Решение
Матрица имеет размеры
, т.е.
. Матрица
получена из единичной матрицы второго порядка путем прибавления к элементам 2-й строки соответствующих элементов 1-й строки, умноженных на число (-2). Находим произведение:
что и требовалось показать.
Приведение матрицы к ступенчатому виду (методом Гаусса) или к простейшему виду (методом Гаусса-Жордана) сводится к последовательному умножению данной матрицы на элементарные матрицы.
Пример 1.36. Привести матрицу к простейшему виду 2 4 5 при помощи умножения на элементарные матрицы.
Решение
При помощи элементарных преобразований эта матрица в примере 1.32 была приведена к простейшему виду. Запишем последовательность преобразований, представляя их как умножения на матрицы специального вида.
На первом шаге ко второй строке прибавляли первую, умноженную на (- 2). Этому преобразованию соответствует умножение матрицы слева на матрицу
(см. пример 1.35):
Затем ко второму столбцу прибавили первый, умноженный на (-2), а к третьему — первый, умноженный на (-3). Эти действия соответствуют последовательному умножению данной матрицы справа на матрицы
Матрица получена из единичной матрицы третьего порядка путем прибавления к элементам 2-го столбца соответствующих элементов 1-го столбца, умноженных на число (-2). Матрица
получена из единичной матрицы третьего порядка путем прибавления к элементам 3-го столбца соответствующих элементов 1-го столбца, умноженных на число (-3). Находим произведения
Последний шаг — умножение последнего столбца на (-1) и перестановка его на место второго. Этим действиям соответствует последовательное умножение преобразуемой матрицы справа на матрицы
Матрица получена из единичной матрицы третьего порядка путем умножения элементов 3-го столбца на число (-1). Матрица
получена из единичной матрицы третьего порядка при помощи перестановки 2-го и 3-го столбцов. Находим произведения
Таким образом, исходная матрица с помощью умножения на элементарные матрицы приведена к простейшему виду (см. рис. 1.6).
Пример 1.37. Привести матрицу к ступенчатому виду при помощи умножения на элементарные матрицы
Решение
При помощи элементарных преобразований эта матрица в примере 1.30 была приведена к ступенчатому виду, причем преобразования выполнялись только над ее строками. Запишем последовательность преобразований, представляя их как умножения матрицы слева на элементарные матрицы. Первое преобразование — прибавление ко второй строке первой, умноженной на (-1), — соответствует умножению матрицы
слева на матрицу
Действительно,
Второе преобразование — прибавление к третьей строке первой, умноженной на (-2), что соответствует умножению матрицы слева на матрицу
Действительно,
Третье преобразование — прибавление к четвертой строке первой, умноженной на (-4), что соответствует умножению матрицы слева на матрицу
Действительно
Далее были использованы следующие преобразования: к третьей строке прибавляли вторую; умножили третью строку на 0,5; к четвертой строке прибавили третью, умноженную на (-2). Этим преобразованиям соответствует умножение матрицы слева на матрицы:
Действительно, выполняя умножения, получаем ступенчатый вид
Приведение матрицы к простейшему виду
Указанные ранее свойства элементарных преобразований можно переформулировать следующим образом:
1. Для любой матрицы существует набор таких элементарных матриц
вида (1.2), (1.4), (1.6), что матрица
будет иметь ступенчатый или даже упрощенный вид. В частности, если матрица
— квадратная, то матрица
будет верхней треугольной.
2. Для любой матрицы существуют набор таких элементарных матриц
вида (1.1)–(1.6), что матрица
будет иметь простейший вид.
Так как произведение элементарных матриц является элементарной матрицей, то последнее свойство можно сформулировать следующим образом.
Теорема 1.2 о приведении матрицы к простейшему виду. Для любой матрицы размеров
существуют такие элементарные матрицы
и
m-го и n-го порядков соответственно, что матрица
имеет простейший вид (см. рис. 1.6):
(1.7)
где . Матрицы
и
будем называть элементарными преобразующими матрицами.
Алгоритм приведения матрицы к простейшему виду
Для приведения матрицы к простейшему виду (1.7) и нахождения элементарных преобразующих матриц
и
нужно выполнить следующие действия.
1. Приписав к матрице (размеров
) справа и снизу единичные матрицы
и
соответственно, составить блочную матрицу:
(1.8)
Элементы правого нижнего блока этой матрицы можно не указывать, так как они не участвуют в дальнейших преобразованиях, либо считать их равными нулю.
2. При помощи элементарных преобразований, выполняемых над строками и столбцами блочной матрицы, привести ее левый верхний блок к простейшему виду (1.7). При этом блочная матрица преобразуется к виду
(1.9)
где — матрица простейшего вида, а
и
— искомые преобразующие матрицы, связанные с матрицей
равенством (1.7).
Действительно, элементарные преобразования (указанные в п.2 алгоритма) относятся к первым строкам и первым
столбцам блочной матрицы (1.8). Этим преобразованиям соответствует умножение матрицы (1.8) слева на матрицу
и справа на матрицу
, где символом
обозначены нулевые матрицы соответствующих размеров. Выполняя умножение блочных матриц, получаем
Эта матрица совпадает с (1.9), если . Другими словами, если в результате п.2 алгоритма левый верхний блок
матрицы (1.8) приведен к простейшему виду
, то в других блоках матрицы (1.9) получаем искомые преобразующие матрицы
и
.
Пример 1.38. Привести матрицу к простейшему виду. Найти элементарные преобразующие матрицы
и
, удовлетворяющие равенству (1.7).
Решение
Припишем к матрице справа и снизу единичные матрицы соответствующих размеров
Возьмем в качестве ведущего элемент . Ко второй строке прибавим первую:
Ко второму столбцу прибавим первый, к третьему — первый, умноженный на (-2):
Теперь возьмем в качестве ведущего элемент . К третьей строке прибавим вторую, умноженную на (-1):
К третьему столбцу прибавим второй, а к четвертому столбцу — второй, умноженный на (-1):
В результате преобразований на месте исходной матрицы получена матрица
простейшего вида (1.7), а на месте единичных матриц — элементарные преобразующие матрицы
Проверим равенство , вычисляя произведение
что и требовалось показать.
Замечания 1.12
1. Элементарные преобразующие матрицы и
находятся неоднозначно, так как зависят от выбранной последовательности преобразований.
2. Если требуется найти одну из элементарных преобразующих матриц, например, , то достаточно применить рассмотренный выше алгоритм к матрице
. Выполняя элементарные преобразования над строками матрицы
и над первыми ее столбцами, входящими в левый блок, получим матрицу
, где
— матрица простейшего вида, а
— искомая матрица. Если требуется найти одну матрицу
, то выполняем преобразования матрицы
.
3. Учитывая свойство 1 элементарных преобразований, теорему 1.1 можно сформулировать следующим образом: для любой матрицы размеров
существует такая элементарная матрица
m-го порядка, что матрица
имеет упрощенный вид (см. рис. 1.5).
Для нахождения матрицы нужно составить блочную матрицу
, затем при помощи элементарных преобразований, выполняемых только над строками матрицы
, привести ее левый блок
к упрощенному виду. При этом блочная матрица преобразуется к виду
, где ,
— матрица упрощенного вида (см. рис. 1.5), а
— искомая элементарная матрица.
4. Диагональная матрица является элементарной.
Пример 1.39. Найти элементарную преобразующую матрицу , приводящую матрицу
к упрощенному виду (см. рис. 1.5).
Решение
Припишем к матрице справа единичную матрицу 3-го порядка.
Элементарными преобразованиями строк блочной матрицы приводим ее левый блок к упрощенному виду. Для этого ко второй строке прибавляем первую. Затем к третьей строке прибавляем вторую, умноженную на (-1), а к первой строке прибавляем вторую. В результате преобразований получаем:
Левый блок матрицы
имеет упрощенный вид, а правый блок -искомая матрица
. Проверим равенство
, вычисляя произведение
Матрица действительно имеет упрощенный вид.
Математический форум (помощь с решением задач, обсуждение вопросов по математике).
Если заметили ошибку, опечатку или есть предложения, напишите в комментариях.
Содержание:
- Линейные преобразования. Собственные векторы и собственные числа линейного оператора
- Собственные векторы и собственные числа линейного оператора: определение, свойства
- Нахождение собственных чисел и собственных векторов
- Базис пространства из собственных векторов линейного оператора
- Линейная модель обмена (модель международной торговли)
Линейные преобразования. Собственные векторы и собственные числа линейного оператора
Линейные преобразования (линейные операторы). Матрица линейного преобразования
Пусть задано 


этого же пространства, говорится, что в векторном пространстве 


Вектор 



Преобразование 


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

нулевой оператор 

Линейное преобразование 





Рассмотрим задачу об отыскании координат образа вектора 
Пусть в пространстве 







Но образы 

где 


С учетом (5.5) соотношение (5.4) принимает вид:
Группируя члены правой части относительно векторов базиса, имеем:
С другой стороны, если 


Сопоставляем (5.8) из (5.7) и получаем координаты вектора 
Следовательно, при линейном преобразовании:
координаты образа вектора являются линейными комбинациями координат прообраза, коэффициенты при которых составляют матрицу 

Матрица 




Каждый — 






Обратите внимание, что 

Каждому линейном оператору 



Например, с помощью оператора линейных преобразований можно описать поворот произвольного вектора с пространства 





где 


точки 

По соотношению (5.12) матрица линейного преобразования} 


а матрица обратного линейного преобразования 


Теорема 5.1 (о связи между матрицами оператора в различных базисах).
Матрицы 




где 
Доказательство. Пусть линейный оператор 








Умножим равенство (5.14) слева на матрицу 


Сравнив соотношение 

Две квадратные матрицы 




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


Определим матрицу 




Предоставим расписание векторов нового базиса по векторам исходного базиса: 
Ее определитель 

По теореме 5.1 определяем матрицу оператора 
Обратите внимание, что в новом базисе матрица оператора 
Собственные векторы и собственные числа линейного оператора: определение, свойства
Рассмотрим 



Ненулевой вектор 



Скаляр 


Согласно определениями собственного числа и собственного вектора имеем:
1) Если 




2) любой ненулевой 



Поставим задачу нахождения собственных чисел и собственных векторов заданной матрицы
Поставим задачу нахождения собственных чисел и собственных векторов заданной матрицы
Запишем матричное уравнение (5.17) в развернутом виде:
Таким образом, задача сводится к решению однородной системы 

Раскрытие определителя в соотношении (5.19) дает многочлен степени 




По основной теореме алгебры уравнения 





Множество всех собственных чисел матрицы называют спектром матрицы. Если в спектре матрицы то же собственное число повторяется 

Теорема 5.2 (о единственности собственного чucлa, что соответствует собственному вектору). Если 



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




Согласно теореме 5.2 говорят, что собственный вектор 


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







Поскольку равенство (5.19) выполняется для произвольного 
Теорема 5.4 (критерий существования собственного вектора 






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

Достаточность. На основании свойств действий над матрицами с учетом условия 

Теорема 5.5 (пpo линейную независимость собственных векторов). Собственные векторы, принадлежащие различным собственным числам, является линейно независимыми.
Доказательство проведем методом от противного. Пусть 





Предположим обратное. Пусть (5.23) выполняется при условии, что одно из чисел 
Умножим левую и правую части (5.23) на собственное число 
Левую и правую части равенства (5.23) умножим на матрицу 
Сравним (5.25) и (5.24). Получаем:
По условию теоремы 




Если есть более двух собственных векторов, принадлежащих попарно различным собственным числам, доведение аналогичное (с использованием метода математической индукции).
Заметим, что собственные векторы, принадлежащих различным собственным числам, можно использовать как базисные векторы пространства 
Теорема 5.6 (пpo сумму и произведение собственных чисел). Если 

1) сумма собственных чисел равна сумме элементов главной диагонали матрицы 
2) произведение собственных чисел равна определителю матрицы 
Доказательство основывается на формулах Виета, которые описывают соотношение между корнями и коэффициентами многочлена 
Рассмотрим простейший случай 
С (5.29) по теореме Виета (для квадратного уравнения) имеем:
Сумму всех диагональных элементов матрицы называют следом (от нем. spur — след) этой матрицы и обозначают 
Для квадратной матрицы произвольного порядка 
при этом собственное число 
Нахождение собственных чисел и собственных векторов
Рассмотрим алгоритм нахождения собственных чисел матрицы 
Согласно соотношениями (5.18) и (5.19) имеем такой порядок отыскания собственных чисел и собственных векторов матрицы.
1. Составляем по исходной матрицей 
2. Подставляем поочередно каждое собственное число в систему (5.18) и находим все ее нетривиальные решения, что и дает множество собственных векторов, принадлежащих соответствующему собственному числу.
Замечания. Множество всех собственных векторов, принадлежащих определенному собственному числу, можно представить как линейную комбинацию фундаментальных решений однородной системы уравнений согласно (4.19), гл. 4.
Найдем собственные числа и собственные векторы матрицы
Характерным уравнением этой матрицы является квадратное уравнение:
Решив его, получим собственные числа 
Теперь описываем множества 

Для этого в матрицу 

Предоставляя параметру 

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

Нахождение других двух корней сводится к решению квадратного уравнения:
3. Опишем множества 

Для этого в матрицу 

Аналогично находим собственные векторы 
Система векторов 

Убеждаемся, что векторы 

Для этого определим их скалярные произведения:
Поскольку скалярные произведения векторов равны нулю, то векторы попарно ортогональны.
Если в выражениях (5.31-5.33) положить 
которая использовалась как базис пространства 





Теорема 5.8 (о преобразовании матрицы к диагональному виду). Матрица линейного оператора 


Теорему наводим без доказательств
Заметим, что при нахождении собственных чисел для заданной матрицы самой задачей является решение алгебраического уравнения 
Следующий пример был решен в пакете MatLab, в котором конечный результат вычислений предоставляется без промежуточных выкладок.
Найдем собственные числа и соответствующие им собственные векторы матрицы
Характерным уравнением для нахождения собственных чисел является уравнение
корнями которого будут числа 
Собственные числа и собственные векторы матриц имеют широкий спектр использования, в частности, в аналитической геометрии (Раздел 2), в задачах различных отраслей естественных наук и эконометрики.
Базис пространства из собственных векторов линейного оператора
По теореме 5.5 собственные векторы, принадлежащие разным собственным числам, являются линейно независимыми. Возникает вопрос, при каких условиях существует базис линейного пространства 
Лема. Если 





Доказательство. Согласно теореме 5.4 множество собственных векторов совпадает с множеством всех решений однородной системы линейных уравнений:
где 




Теорема 5.9 (о существовании базиса из собственных векторов матрицы). Пусть числа 





Доказательство. Согласно лемме каждое множество собственных векторов, соответствующих уравнению 


Поскольку собственные векторы матрицы 


Теорема 5.10 (о существовании базиса из собственных векторов симметричной матрицы). Если матрица 


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

Согласно теореме 5.9 такой базис существует, поскольку матрица 

и решим его: 

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

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

При 
По последнем шагом элементарных преобразований матрицы записываем общее решение системы:
Возлагаем 
Поскольку 



Это и есть ортогональный базис пространства 

По соотношению (5.13) определим матрицу 






По матричным уравнением (5.13) находим матрицу 

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




Матрицу 

Эта матрица описывает взаимодействие стран в процессе международной торговли. Соотношение (5.34) означает, что сумма элементов каждого столбца матрицы равна
1. Если объем средств, которые тратит каждая страна на торговлю, обозначить через 


Чтобы торговля каждой страны была сбалансированной, по определению должно выполняться условие 



Группируя в левой части слагаемые, содержащие каждое из 
Учитывая соотношение (5.20), получим:
Отсюда следует, что сбалансированная торговля возможна только в случае знака равенства. Это, полагаем, понятно не только на основании аналитических выкладок, но и с экономической точки зрения (и даже просто с точки зрения здравого смысла): все страны в совокупности не могут получить прибыль. Более того, для одной из стран не может выполняться знак строгого неравенства 
Итак, условием сбалансированной торговли является равенства 

Введем в рассмотрение вектор (бюджетных) средств 
С (5.40) следует, что при условии сбалансированности торговли между странами вектор средств 



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

Отсюда следует, что для сбалансированности торговли необходимо, чтобы средства, которые вкладывает в внешний товарооборот каждая страна, соотносились как
Лекции:
- Разложение в ряд Фурье четных и нечетных функций
- Функции многих переменных
- Наибольшее и наименьшее значение функции
- Уравнение плоскости
- Экстремум функции трёх переменных
- Как найти вероятность: пример решения
- Свойства определенного интеграла
- Комбинаторика
- Однородные дифференциальные уравнения
- Простейшие задачи аналитической геометрии



































































































































