Без преобразования матрицы, определитель легко посчитать только для матриц размером 2×2 и 3×3. Это делается по формулам:
Для матрицы
определитель равен:
a11*a22-a12*a21
Для матрицы
определитель равен:
a11*(a22*a33-a23*a32)-a12*(a21*a33-a23*a31)+a13*(a21*a32-a22*a31)
(можно посчитать по любой строке, выше приводиться формула расчёта определителя по первой строке).
Расчёты для матриц размером 4×4 и выше затруднительны, поэтому их нужно преобразовывать в соответствии со свойствами определителя. Нужно стремиться получить матрицу, в которой все значения кроме одного любого столбца или любой строки равны нулю. Пример такой матрицы:
Для неё определитель равен:
-a12*(a21*(a33*a44-a34*a43)-a23*(a31*a44-a34*a41)+a24*(a31*a43-a33*a41))
Обратите внимание, что
a21*(a33*a44-a34*a43)-a23*(a31*a44-a34*a41)+a24*(a31*a43-a33*a41)
это вычисление детерминанта матрицы, полученой вычетом строки и столбца, на пересечении которых находиться единственное не нулевое числов строки/столбца, по которому мы разлагаем матрицу:
И полученное значение мы умножаем на то самое число, из "нулевого" столбца / строки, при этом число может быть умножено на -1 (все подробности ниже).
Если привести матрицу к треугольному виду, то её определитель вычисляется как произведение цифр по диагонали. Например, для матрицы
Определитель равен:
a11*a22*a33*a44
Аналогично следует поступать с матрицами 5×5, 6×6 и другими больших размерностей.
Преобразования матриц нужно выполнять в соответствии со свойствами определителя. Но прежде чем перейти к практике по вычислению определителя для матриц 4×4, давайте вернёмся к матрицам 3×3 и подробно рассмотрим, как вычисляется определитель для них.
Минор
Определитель матрицы не очень прост для понимания, поскольку в его понятии присутствует рекурсия: определитель матрицы состоит из нескольких элементов, в том числе из определителя (других) матриц.
Чтобы не застрять на этом, давайте прямо сейчас (временно) примем, что определитель матрицы
вычисляется так:
a11*a22-a12*a21
Ещё разберёмся в условных обозначения и в таких понятиях как минор и алгебраическое дополнение.
Буквой i мы обозначаем порядковый номер стоки, буквой j – порядковый номер столбца.
aij означает элемент матрицы (цифру) на пересечении строки i и столбца j.
Представим себе матрицу, которая получена из исходной удалением строки i и столбца j. Определитель новой матрицы, которая получена из исходной удалением строки i и столбца j, называется минором Mij элемента aij.
Проиллюстрируем сказанное. Предположим, дана матрица
Тогда для определения минора M11 элемента a11 нам нужно составить новую матрицу, которая получается из исходной удалением первой строки и первого столбца:
И вычислить для неё определитель: 2*1 — (-4)*0 = 2
Для определения минора M22 элемента a22 нам нужно составить новую матрицу, которая получается из исходной удалением второй строки и второго столбца:
И вычислить для неё определитель: 1*1 -3*3 = -8
Алгебраическое дополнение
Алгебраическим дополнением Аij для элемента aij называется минор Mij этого элемента, взятый со знаком «+», если сумма индексов строки и столбца (i + j), на пересечении которых стоит этот элемент, чётная, и со знаком «-», если сумма индексов нечётная.
Таким образом,
Для матрицы из предыдущего примера
А11 = (-1)(1+1) * (2*1 — (-4)*0) = 2
А22 = (-1)(2+2) * (1*1 -3*3) = -8
Вычисление определителя для матриц
Определителем порядка n, соответствующим матрице А, называется число, обозначаемое det A и вычисляемое по формуле:
В этой формуле нам всё уже знакомо, давайте теперь посчитаем определитель матрицы для
Каков бы ни был номер строки i=1,2,…, n или столбца j = 1, 2,…, n определитель n-го порядка равен сумме произведений элементов этой строки или этого столбца на их алгебраические дополнения, т. е.
Т.е. детерминант можно вычислить по любому столбцу или по любой строке.
Чтобы убедиться в этом, вычислим определитель для матрицы из последнего примера по второму столбцу
Как видим, результат идентичный и для этой матрицы определитель всегда будет -52 не зависимо от того, по какой строке или по какому столбцу мы его будем считать.
Свойства определителя матриц
- Строки и столбцы определителя равноправны, т. е. величина определителя не изменится, если поменять местами его строки и столбцы с сохранением порядка их следования. Эта операция называется транспонированием определителя. В соответствии со сформулированным свойством det A = det AT.
- При перестановке местами двух строк (или двух столбцов) определитель сохраняет свою абсолютную величину, но меняет знак на противоположный.
- Определитель с двумя одинаковыми строками (или столбцами) равен нулю.
- Умножение всех элементов некоторой строки (или некоторого столбца) определителя на число λ равносильно умножению определителя на число λ.
- Если все элементы какой-либо строки (или какого-либо столбца) определителя равны нулю, то и сам определитель равен нулю.
- Если элементы двух строк (или двух столбцов) определителя пропорциональны, то определитель равен нулю.
- Если к элементам некоторой строки (или некоторого столбца) определителя прибавить соответствующие элементы другой строки (другого столбца), умноженные на произвольный множитель λ, то величина определителя не изменится.
- Сумма произведений элементов какой-либо строки (какого-либо столбца) определителя на соответствующие алгебраические дополнения элементов любой другой строки (любого другого столбца) равна нулю.
- Если все элементы i-й строки определителя представлены в виде суммы двух слагаемых aij = bj + cj то определитель равен сумме двух определителей, у которых все строки, кроме i-й, такие же, как и в заданном определителе, i-я строка в одном из слагаемых состоит из элементов bj, а в другом — из элементов cj. Аналогичное свойство справедливо и для столбцов определителя.
- Определитель произведения двух квадратных матриц равен произведению их определителей: det (А * В) = det A * det B.
Для вычисления определителя любого порядка можно применять метод последовательного понижения порядка определителя. Для этого пользуются правилом разложения определителя по элементам строки или столбца. Еще один способ вычисления определителей заключается в том, чтобы с помощью элементарных преобразований со строками (или столбцами), прежде всего в соответствии со свойствами 4 и 7 определителей, привести определитель к виду, когда под главной диагональю определителя (определяемой так же, как и для квадратных матриц) все элементы равны нулю. Тогда определитель равен произведению элементов, расположенных на главной диагонали.
При вычислении определителя последовательным понижением порядка для уменьшения объема вычислительной работы целесообразно с помощью свойства 7 определителей добиться обнуления части элементов какой-либо строки или какого-либо столбца определителя, что уменьшит число вычисляемых алгебраических дополнений.
Приведение матрицы к треугольному виду, преобразование матрицы, облегчающее вычисление определителя
Показанные ниже методы нецелесообразно использовать для матриц 3×3, но я предлагаю рассмотреть суть методов на простом примере. Воспользуемся матрицей, для которой мы уже считали определитель — нам будет проще проверить правильность вычислений:
Используя 7-е свойство определителя, вычтем из второй строки третью, умноженную на 2:
из третьей строки вычтем соответствующие элементы первой строки определителя, умноженные на 3:
далее из третьей строки мы вычтем вторую строку, умноженную на -3:
Так как элементы определителя, расположенные под его главной диагональю, равны 0, то, следовательно, определитесь равен произведению элементов, расположенных на главной диагонали:
1*2*(-26) = -52.
Как видим, ответ совпал с полученными ранее.
Давайте вспомним формулу определителя матрицы:
Детерминант — это сумма алгебраических дополнений, умноженная на члены одной из строк или одного из столбцов.
Если в результате преобразований мы сделаем так, что одна из строк (или столбец) будет состоять полностью из нулей кроме одной позиции, то нам не нужно будет считать все алгебраические дополнения, поскольку они заведомо будут равны нулю. Как и предыдущий метод, этот целесообразно применять для матриц больших размеров.
Покажем пример на той же самой матрице:
Замечаем, что второй столбец определителя уже содержит один нулевой элемент. Прибавляем к элементам второй строки элементы первой строки, умноженные на -1. Получим:
Вычислим определитель по второму столбцу. Нам нужно посчитать только одно алгебраическое дополнение, поскольку остальные заведомо сводятся к нулю:
Вычисление определителя для матриц 4×4, 5×5 и больших размерностей
Чтобы избежать слишком больших вычислений для матриц больших размеров следует делать преобразования, описанные выше. Приведём пару примеров.
Вычислить определитесь матрицы
Р е ш е н и е. Используя 7-е свойство определителя, вычтем из второй строки третью, из четвёртой строки — соответствующие элементы первой строки определителя, умноженные соответственно на 3, 4, 5. Эти действия сокращённо будем обозначать так: (2) — (1) * 3; (3) — (1) * 4; (4) — (1) * 5. Получим:
Далее, в соответствии с ведёнными обозначениями, выполним действия: (3) — (2) * 8; (4) — (2) * 9. Получаем
Выполним действия
Имеем
Так как элементы определителя, расположенные под его главной диагональю, равны 0, то, следовательно, определитесь равен произведению элементов, расположенных на главной диагонали:
Вычислить определитель
Р е ш е н и е. Замечаем, что второй столбец определителя уже содержит один нулевой элемент. Прибавляем к элементам второй строки элементы первой строки, умноженные на -1, а к элементам четвёртой строки — элементы первой строки, умноженные на 5. Получим:
Разлагая полученный определитесь по второй строке имеем:
(Затем мы вынесли сомножитель 2 первого столбца на основании свойства 4). Далее прибавим к элементам первого и второго столбца элементы определителя. Получим:
Затем мы вынесли множитель в первом столбце, а затем общий множитель (-1) в первой строке. Разлагая теперь получившийся определитесь третьего порядка по элементам второй строки получим:
Здесь определитесь второго порядка вычислен в соответствии с его определением, по формуле
Вычисление определителя (детерминанта) матрицы wxMaxima и Maxima
В wxMaxima и Maxima для вычисления определителя используется функция determinant:
m7:matrix([1,2,3],[6,2,-4],[3,0,1]); determinant(m7);
Для приведения матриц к треугольному виду можно воспользоваться функцией triangularize:
- Произведение (перемножение) матриц (100%)
- Как найти обратную матрицу? (100%)
- Ранг матрицы. Метод окаймляющих миноров. Линейная независимость строк (столбцов) матрицы (100%)
- Как решить систему линейных уравнений методом Крамера? (100%)
- Как решить систему линейных уравнений матричным методом? (100%)
- Преобразование координат (RANDOM - 50%)