mrdivide, /

Решите системы линейных уравнений, xA = B для x

Синтаксис

Описание

пример

x = B/A решает систему линейных уравнений x*A = B для x. Матрицы A и B должен содержать одинаковое число столбцов. MATLAB® отображает предупреждающее сообщение, если A является плохо масштабированным или почти сингулярным, но выполняет вычисление независимо.

  • Если A является скаляром, тогда B/A эквивалентно B./A.

  • Если A является квадратным n-by- n матрица и B является матрицей с n столбцы, затем x = B/A является решением уравнения x*A = B, если он существует.

  • Если A является прямоугольной m-by- n матрица с m ~= n, и B является матрицей с n столбцы, затем x = B/ A возвращает решение системы уравнений методом наименьших квадратов x*A = B.

x = mrdivide(B,A) является альтернативным способом выполнения x = B/A, но редко используется. Это позволяет выполнить перегрузку оператора для классов.

Примеры

свернуть все

Решить систему уравнений, которая имеет уникальное решение, x*A = B.

A = [1 1 3; 2 0 4; -1 6 -1];
B = [2 19 8];
x = B/A
x = 1×3

    1.0000    2.0000    3.0000

Решите недоопределенную систему, x*C = D.

C = [1 0; 2 0; 1 0];
D = [1 2];
x = D/C
Warning: Rank deficient, rank = 1, tol =  1.332268e-15.
x = 1×3

         0    0.5000         0

MATLAB ® выдает предупреждение, но продолжает вычислять .

Проверьте, что x не является точным решением.

x*C-D
ans = 1×2

     0    -2

Входные параметры

свернуть все

Операнды, заданные как векторы, полные матрицы или разреженные матрицы. A и B должно иметь одинаковое число столбцов.

  • Если A или B имеет целочисленный тип данных, другой вход должен быть скалярным. Операнды с целочисленным типом данных не могут быть комплексными.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Поддержка комплексного числа: Да

Выходные аргументы

свернуть все

Решение, возвращенное как векторная, полная матрица или разреженная матрица. Если A является m-by- n матрица и B является p-by- n матрица, затем x является p-by- m матрица.

x разрежен, только если оба A и B являются разреженными матрицами.

Совет

  • Операторы / и \ связаны друг с другом уравнением B/A = (A'\B')'.

  • Если A является квадратной матрицей, тогда B/A приблизительно равно B*inv(A), но MATLAB обрабатывает B/A по-разному и более робастно.

  • Использовать decomposition объекты для эффективного решения линейной системы несколько раз с различными правыми сторонами. decomposition объекты хорошо подходят для решения задач, которые требуют повторных решений, поскольку разложение матрицы коэффициентов не нужно выполнять несколько раз.

Расширенные возможности

..
Представлено до R2006a