Dom
::Numerical
Поле чисел
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
Dom::Numerical(x
)
Dom::Numerical
поле чисел.
Dom::Numerical
область чисел, представленных одной из областей ядра DOM_INT
, DOM_RAT
, DOM_FLOAT
, или DOM_COMPLEX
.
Dom::Numerical
имеет категорию Cat::Field
из-за прагматизма. Эта область на самом деле не является полем потому что bool(1.0 = float(3) / float(3))
возвращает FALSE
, например.
Элементы Dom::Numerical
обычно не создаются явным образом. Однако, если вы создаете элементы с помощью обычного синтаксиса, он проверяется, может ли входное выражение быть преобразовано в номер (см. ниже).
Это означает тот Dom::Numerical
область фасада, которая создает элементы доменного типа DOM_INT
, DOM_RAT
, DOM_FLOAT
или DOM_COMPLEX
. Каждая системная функция, имеющая дело с числами, может быть применена, и расчеты в этой области выполняются эффективно.
Dom::Numerical
не имеет никакого нормального представления, потому что 0
и 0.0
оба представляют нуль.
Просматриваемый как дифференциальный звонок, Dom::Numerical
тривиально. Это только содержит константы.
Если x
постоянное арифметическое выражение, такое как sin(2)
или PI + 2
, системная функция float
применяется, чтобы преобразовать x
в приближение с плавающей точкой.
Сообщение об ошибке выпущено, если результат этого преобразования не имеет доменного типа DOM_FLOAT
или DOM_COMPLEX
.
Ax::canonicalRep
, Ax::systemRep
, Ax::efficientOperation
("_divide")
, Ax::efficientOperation
("_mult")
, Ax::efficientOperation
("_invert")
Dom::Numerical
содержит количества областей DOM_INT
, DOM_RAT
, DOM_FLOAT
и DOM_COMPLEX
:
Dom::Numerical(2), Dom::Numerical(2/3), Dom::Numerical(3.141), Dom::Numerical(2 + 3*I)
Постоянные арифметические выражения преобразованы в действительное и комплексное число с плавающей запятой, соответственно, т.е. в элемент доменного DOM_FLOAT
или DOM_COMPLEX
(см. функциональный float
для деталей):
Dom::Numerical(exp(5)), Dom::Numerical(sin(2/3*I) + 3)
Обратите внимание на то, что элементы этой области являются элементами областей ядра, нет никаких элементов доменного типа Dom::Numerical
!
Сообщение об ошибке выпущено для непостоянных арифметических выражений:
Dom::Numerical(sin(x))
Error: Invalid arguments. [Dom::Numerical::new]
Dom::Numerical
рассматривается как поле, и оно поэтому может использоваться в качестве содействующего звонка полиномов или как звонок компонента матриц, например.
Мы создаем область матриц произвольного размера (см. Dom::Matrix
) с числовыми компонентами:
MatN := Dom::Matrix(Dom::Numerical)
Затем мы создаем ленточную матрицу, такую как:
A := MatN(4, 4, [-PI, 0, PI], Banded)
и вектор-строка с четырьмя компонентами как 1 ×4 матрица:
v := MatN([[2, 3, -1, 0]])
Векторное умножение матриц может быть выполнено со стандартным оператором *
для умножения:
v * A
Наконец мы вычисляем определитель матричного A
, использование функционального det
:
det(A)
|
"характеристика" | нуль. |