Символьная матрица левого деления
решает символическую систему линейных уравнений в матричной форме, X = A\BA*X = B для X.
Если решение не существует или не является уникальным, \ оператор выдает предупреждение.
A может быть прямоугольной матрицей, но уравнения должны быть последовательными. Символьный оператор \ не вычисляет решения методом наименьших квадратов.
Решите систему линейных уравнений, заданную квадратной матрицей коэффициентов и вектором правых сторон уравнений.
Создайте матрицу, содержащую коэффициент членов уравнения, и вектор, содержащий правые стороны уравнений.
A = sym(pascal(4)) b = sym([4; 3; 2; 1])
A = [ 1, 1, 1, 1] [ 1, 2, 3, 4] [ 1, 3, 6, 10] [ 1, 4, 10, 20] b = 4 3 2 1
Использовать оператор \ для решения этой системы.
X = A\b
X = 5 -1 0 0
Создайте матрицу, содержащую коэффициенты членов уравнений, и вектор, содержащий правые стороны уравнений.
A = sym(magic(4)) b = sym([0; 1; 1; 0])
A = [ 16, 2, 3, 13] [ 5, 11, 10, 8] [ 9, 7, 6, 12] [ 4, 14, 15, 1] b = 0 1 1 0
Найдите ранг системы. Эта система содержит четыре уравнения, но ее ранг 3. Следовательно, система имеет недостаточный ранг. Это означает, что одна переменная системы не является независимой и может быть выражена в терминах других переменных.
rank(horzcat(A,b))
ans = 3
Попробуйте решить эту систему с помощью символического \ оператор. Поскольку система имеет недостаток ранга, возвращаемое решение не является уникальным.
A\b
Warning: Solution is not unique because the system is rank-deficient.
ans =
1/34
19/34
-9/17
0Создайте матрицу, содержащую коэффициент членов уравнения, и вектор, содержащий правые стороны уравнений.
A = sym(magic(4)) b = sym([0; 1; 2; 3])
A = [ 16, 2, 3, 13] [ 5, 11, 10, 8] [ 9, 7, 6, 12] [ 4, 14, 15, 1] b = 0 1 2 3
Попробуйте решить эту систему с помощью символического \ оператор. Оператор выдает предупреждение и возвращает вектор со всеми элементами, имеющими значение Inf потому что система уравнений противоречива, и поэтому решения не существует. Количество элементов в получившемся векторе равно количеству уравнений (строк в матрице коэффициентов).
A\b
Warning: Solution does not exist because the system is inconsistent. ans = Inf Inf Inf Inf
Найдите форму уменьшенного эшелона строк этой системы. В последней строке показано, что одно из уравнений, приведенное к 0 = 1, что означает, что система уравнений противоречива.
rref(horzcat(A,b))
ans = [ 1, 0, 0, 1, 0] [ 0, 1, 0, 3, 0] [ 0, 0, 1, -3, 0] [ 0, 0, 0, 0, 1]
Матричные вычисления, включающие множество символьных переменных, могут быть медленными. Чтобы увеличить вычислительную скорость, уменьшите число символьных переменных, подставив заданные значения для некоторых переменных.
При делении на ноль mldivide рассматривает знак числителя и возвращает Inf или -Inf соответственно.
syms x [sym(0)\sym(1), sym(0)\sym(-1), sym(0)\x]
ans = [ Inf, -Inf, Inf*x]
ctranspose | ldivide | minus | mpower | mrdivide | mtimes | plus | power | rdivide | times | transpose