Обновлено:
Посчитать матрицу
Первое, что хочется сделать, когда нужно быстро умножить, найти детерминант или обратную – просто посчитать матрицу без долгих выкладок. Ниже – удобный онлайн‑калькулятор и короткие правила, чтобы не ошибиться.
Как посчитать матрицу онлайн
Калькулятор выше считает типовые операции линейной алгебры для матриц 2×2, 3×3, 4×4 и произвольного размера, если это позволяет операция.
Онлайн‑калькулятор матриц
Что умеет калькулятор:
- сложение и вычитание матриц одинакового размера;
- умножение матриц A(m×n) и B(n×p), умножение на скаляр;
- транспонирование, след tr(A), возведение квадратной матрицы в степень;
- детерминант det(A) квадратной матрицы;
- обратная матрица A⁻¹ (если det(A) ≠ 0);
- ранг матрицы, приведённая ступенчатая форма (RREF);
- решение СЛАУ Ax=b: точное решение, статус (единственное/бесконечное/нет решений).
Параметры и логика расчёта:
- размеры матриц: задаются как m×n; для произведения A·B требуется совпадение n(A)=m(B);
- детерминант и A⁻¹ доступны только для квадратных матриц;
- ранжирование и решение СЛАУ выполняются методом Гаусса‑Жордана с частичным выбором главного элемента; детерминант – через приведение к треугольной форме; для 3×3 дополнительно используется правило Саррюса;
- округление управляется параметром точности; при |x| < 1e−12 значения трактуются как 0 для устойчивости.
Как посчитать матрицу вручную?
Сложение и вычитание
Складываются и вычитаются только матрицы одинакового размера: c_ij = a_ij ± b_ij.
Пример. A=[[1, −2], [0, 5]], B=[[3, 4], [−1, 2]]:
- A + B = [[4, 2], [−1, 7]]
- A − B = [[−2, −6], [1, 3]]
Умножение матриц (правило совместимости)
Перемножать можно A(m×n) и B(n×p). Элемент результата C(m×p) вычисляется как c_ij = Σ_k a_ik·b_kj.
Пример. A(2×3)=[[1, 2, 0], [−1, 3, 2]], B(3×2)=[[3, 1], [−2, 4], [5, 0]]:
- c_11 = 1·3 + 2·(−2) + 0·5 = −1
- c_12 = 1·1 + 2·4 + 0·0 = 9
- c_21 = (−1)·3 + 3·(−2) + 2·5 = 1
- c_22 = (−1)·1 + 3·4 + 2·0 = 11
Итог: C = [[−1, 9], [1, 11]]. Важно: AB ≠ BA в общем случае.
Транспонирование, след
- Транспонирование: Aᵗ – матрица, у которой строки и столбцы поменяны местами: (Aᵗ)_ij = A_ji.
- След квадратной матрицы: tr(A) = Σ_i a_ii – сумма диагональных элементов. Полезен при проверках и в формулах.
Детерминант: 2×2, 3×3 (правило Саррюса) и Гаусс
- 2×2: для A=[[a, b], [c, d]] det(A) = ad − bc.
Пример. [[2, 3], [−1, 4]]: det = 2·4 − 3·(−1) = 11.
- 3×3: правило Саррюса. Сложите произведения «нисходящих» диагоналей и вычтите сумму «восходящих».
Пример. A=[[1, 2, 3], [0, −1, 4], [2, 5, −2]]:
сумма нисходящих: 1·(−1)·(−2) + 2·4·2 + 3·0·5 = 2 + 16 + 0 = 18
сумма восходящих: 3·(−1)·2 + 1·4·5 + 2·0·(−2) = −6 + 20 + 0 = 14
det(A) = 18 − 14 = 4
n×n: метод Гаусса (приведение к верхнетреугольной форме). det(A) – произведение диагонали итоговой треугольной матрицы с поправкой на операции над строками:
- перестановка двух строк меняет знак det;
- умножение строки на k умножает det на k;
- прибавление к строке кратной другой строки det не меняет.
Метод Гаусса предпочтителен для 4×4 и больше – он быстрее и менее ошибкоопасен.
Обратная матрица: когда существует и как найти
Обратимая матрица – квадратная с det(A) ≠ 0. Тогда существует A⁻¹, такая что A·A⁻¹ = I.
- 2×2: A=[[a, b], [c, d]], A⁻¹ = (1/det(A))·[[d, −b], [−c, a]].
Пример. A=[[2, 3], [−1, 4]], det=11: A⁻¹ = (1/11)·[[4, −3], [1, 2]].
- 3×3 и больше: используйте метод Гаусса‑Жордана (приписываем справа I, приводим A к I, справа получается A⁻¹) или LU‑разложение. После расчёта проверьте A·A⁻¹≈I с учётом округления.
Если det близок к нулю, матрица плохо обусловлена: численные ошибки усиливаются. Увеличьте точность или примените регуляризацию.
Ранг и решение Ax = b
Ранг – максимальное число линейно независимых строк (или столбцов). На практике находится по приведённой ступенчатой форме (RREF).
Пример ранга. A=[[1, 2, 3], [2, 4, 6], [0, 1, 1]]. Вторая строка равна 2·первой, значит rank(A)=2.
Решение СЛАУ Ax=b:
- если det(A) ≠ 0 (для квадратной A), решение единственно: x = A⁻¹b;
- в общем случае используйте Гаусса‑Жордана; сравните rank(A) и rank([A|b]).
Пример (Крамер, 2×2). 2x + y = 5; −x + 3y = 1. A=[[2,1],[−1,3]], b=[5,1], det(A)=7.
- x = det([[5,1],[1,3]])/7 = 14/7 = 2
- y = det([[2,5],[−1,1]])/7 = 7/7 = 1
Типичные ошибки и быстрые проверки
- Несовместимые размеры при умножении: n(A) ≠ m(B).
- Порядок важен: AB и BA обычно разные.
- Детерминант и обратная определены только для квадратных матриц.
- При вычислении det по Саррюсу часто теряют знак или диагональ.
- При перестановке строк не меняют знак det – это ошибка.
- Округление: для плохо обусловленных матриц малые погрешности растут; увеличьте точность.
- Быстрая проверка: tr(AᵗA) ≥ 0; A·A⁻¹≈I; det(AB)=det(A)·det(B); det(Aᵗ)=det(A).
Краткая памятка по свойствам
- Iₙ – единичная матрица; A·I = I·A = A.
- (AB)ᵗ = BᵗAᵗ; (A⁻¹)ᵗ = (Aᵗ)⁻¹ (если A обратима).
- det(AB)=det(A)·det(B); det(Aᵗ)=det(A).
- Если строка (или столбец) нулевая – det(A)=0.
- Симметричная: Aᵗ=A; ортогональная: AᵗA=I ⇒ A⁻¹=Aᵗ.
- Треугольная: det равен произведению диагонали; след – сумма диагонали.
Источники и справка
- Матрица (математика) – определения, операции и свойства: https://ru.wikipedia.org/wiki/Матрица_(математика)
- Определитель – методы и свойства детерминанта: https://ru.wikipedia.org/wiki/Определитель
- Обратная матрица – критерии обратимости и методы: https://ru.wikipedia.org/wiki/Обратная_матрица
Часто задаваемые вопросы
Как быстро проверить, можно ли перемножить две матрицы?
Сравните внутренние размеры: первая матрица A имеет форму m×n, вторая B – n×p. Перемножить можно только если число столбцов A равно числу строк B. Результат будет m×p. Порядок важен: AB и BA, как правило, различаются по размеру и значению.
Как посчитать детерминант 4×4 без лишних ошибок?
Надёжнее свести матрицу к верхнетреугольной методом Гаусса: det равен произведению диагональных элементов с учётом операций над строками (перестановка меняет знак, умножение строки на k – умножает det на k). Разложение по минорам для 4×4 громоздко и рискованно по знакам.
Что делать, если детерминант равен нулю?
Обратная матрица не существует, а система Ax=b может быть несовместной или иметь бесконечно много решений. Проверьте ранг: при rank(A)=rank([A|b]) и rank(A)<n решений бесконечно, при rank(A)<rank([A|b]) – решений нет.
Чем поэлементное умножение отличается от матричного произведения?
Поэлементное умножение (Хадамара) одинаковых по размеру матриц вычисляется как c_ij = a_ij·b_ij. Классическое произведение использует скалярные произведения строк и столбцов: c_ij = Σ_k a_ik·b_kj. Это разные операции с разными свойствами и результатами.
Можно ли посчитать матрицу с десятичными и большими числами?
Да, расчёты выполняются в вещественных числах с управляемым округлением. При очень больших или плохо обусловленных матрицах возможны численные погрешности; для контроля проверяйте A·A⁻¹≈I и пересчитывайте с большей точностью.
Какой метод выбрать для обратной матрицы 3×3 и больше?
Для 2×2 удобна формула через алгебраическое дополнение. Для 3×3 и выше практичнее метод Гаусса‑Жордана или LU‑разложение с частичным выбором главного элемента – они устойчивее и быстрее, чем разложение по минорам.