Матрицы, матричные операции и вычислительные процедуры линейной алгебры составляют основу инженерного и научного программирования, поэтому мы считаем необходимым напомнить основные положения этих областей, чтобы они были «под рукой» при рассмотрении методов программной реализации матричного класса.
Мы уже определили вектор x(x1, x2, …, xn) в n-мерном пространстве как последовательность комплексных чисел. Линейным преобразованием n-мерного пространства называют такое преобразование, которое вызывает переход вектора x(x1, x2, …, xn) в вектор y(y1, y2, …, yn) по формулам:
yi=ai1x1+aix2+…+ainxn (i=1, 2, …, n).
Обозначим эту операцию буквой A. Очевидно, она может быть записана как система n векторов
ai(ai1, ai2, …, ain),
осуществляющих эту операцию, и представлена в виде таблицы (матрицы) значений aij:
,
а формула преобразования может быть записана в компактном виде:
y=Ax.
Если операция A преобразует различные векторы в различные, а это соответствует тому, что определитель матрицы A отличен от нуля, то операция и обозначающая ее матрица называются неособенными. В этом случае вектор x может быть получен обратным преобразованием A-1
x=A-1y,
и обозначающая обратное преобразование матрица A-1 имеет элементы
{A-1}ij= ,
где через D(A) обозначен связанный с матрицей определитель, представляющий собой число det A, определяемое по известным правилам, а именно:
,
где сумма распространена на всевозможные перестановки (a1, a2, …, an) элементов 1, 2, …, n и, следовательно, содержит n! слагаемых, причем c=0, если перестановка четная, и c=l, если перестановка нечетная.
Через Aij обозначены алгебраические дополнения определителя относительно элементов aij, через i и j – индексы (номера) строк и столбцов в матрице.
Если обратная матрица A-1 существует, то матрица A является невырожденной; эквивалентными являются такие признаки невырожденности, как неравенство нулю определителя матрицы, линейная независимость вектор-столбцов или вектор-строк матрицы.
Последовательное применение двух операций приводит нас к понятию произведения:
y=Ax; z=By; z=BAx=Cx,
а матрица результирующего преобразования BA определяется так:
Cij={BA}ij= ,
и его результат зависит от порядка сомножителей, т.е. BA≠AB.
Очевидно, что для прямоугольных матриц произведение имеет смысл только при равенстве числа столбцов левого сомножителя числу строк правого.
Количество строк результирующей матрицы должно быть равно количеству строк левого сомножителя, а количество столбцов – количеству столбцов правого сомножителя.
Если линейное преобразование вызывает только растяжение составляющих любого вектора вдоль координатных осей
yi=kixi (i=1, 2, …, n),
то оно выражается диагональной матрицей
Если отличный от нуля вектор таков, что осуществляемая матрицей операция преобразования пространства приводит только к изменению его длины без изменения направления, то есть
Ax=λx, (λ - число) или
=0 (k=1, 2, …, n),
то он называется собственным вектором, его направление – собственным направлением, а коэффициент изменения его модуля λ – собственным значением матрицы A.
Последнее уравнение представляет собой однородную систему с матрицей, имеющей равный нулю определитель. После разворачивания определителя получим полином n-го порядка (он носит название характеристического полинома) относительно λ, а приравнивание его нулю дает алгебраическое уравнение для определения всех возможных собственных значений (характеристическое уравнение):
det(A–λE)=0.
Совокупность n собственных значений называют спектром матрицы, а максимальное по модулю собственное значение – спектральным радиусом матрицы. Вычисление собственных значений достаточно сложная задача, но для одного класса матриц, а именно верхних и нижних треугольных (с нулевыми элементами выше или ниже главной диагонали) вычисление вообще не требуется – собственными значениями этих матриц являются элементы главной диагонали.
Если матрица вещественна и симметрична (перемена индексов строк и столбцов не изменяет значение матричного элемента), то все ее собственные значения вещественны. Если, кроме того, матрица является положительно определенной (xTAx>0 при всех x≠0), то все ее собственные значения положительны.
Две квадратные матрицы A и B считаются подобными, если существует невырожденная матрица P такая, что B=PAP-1.