linalg::expr2MatrixСоздайте матрицу из уравнений
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
linalg::expr2Matrix(eqns, <vars, R>, <Include>)
linalg::expr2Matrix(eqns, vars) создает расширенную матрицу коэффициентов
системы линейных уравнений m в eqns относительно n indeterminates в vars. Вектор
является правой стороной этой системы.
linalg::expr2Matrix возвращает расширенную матрицу коэффициентов
. Правый вектор стороны
может быть извлечен из матричного M linalg::col(M, n + 1).
Матрица коэффициентов A может быть извлечена linalg::delCol(M, n + 1).
Арифметические выражения в eqns рассматриваются как уравнения с нулем правых сторон.
Если никакие переменные не даны, то indeterminates уравнений определяются с функциональным indets и опция PolyExpr, т.е. левые стороны уравнений рассматриваются как многочленные выражения.
Если никакой кольцевой R компонента дан затем стандартный доменный Dom::ExpressionField() выбран в качестве звонка компонента расширенной матрицы коэффициентов.
Коэффициенты линейных уравнений преобразованы в элементы кольцевого R компонента. Сообщение об ошибке возвращено, если это не возможно.
Расширенная матрица коэффициентов системы x + y + z = 1, 2 y - z + 5 = 0 из линейных уравнений в переменных x, y, z является следующим 2×4 матрица:
delete x, y, z: Ab := linalg::expr2Matrix( [x + y + z = 1, 2*y - z + 5], [x, y, z], Dom::Real )
![]()
Мы используем linalg::matlinsolve вычислить общее решение этой системы:
linalg::matlinsolve(Ab)

Матрица коэффициентов или правый вектор стороны могут быть быть извлеченными из матричного Ab следующим образом:
A := linalg::delCol(Ab, 4); b := linalg::col(Ab, 4)
![]()
![]()
Следующие два входных параметров приводят к различным линейным системам:
delete x, y, z: linalg::expr2Matrix([x + y + z = 1, 2*y - z + 5 = x]), linalg::expr2Matrix([x + y + z = 1, 2*y - z + 5 = x], [x, y])

Отметьте различие между вызовом linalg::expr2Matrix с и без опции Include:
delete x, y: linalg::expr2Matrix([x + y = 1, 2*x - y = 3], [x, y])
![]()
linalg::expr2Matrix([x + y = 1, 2*x - y = 3], [x, y], Include)

|
Система линейных уравнений, т.е. набор или список выражений типа |
|
Набор или список indeterminates |
|
Коммутативный звонок, т.е. область категории |
|
Добавляет отрицание правого вектора стороны |
m × (n + 1) матрица доменного Dom::Matrix(R).