Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
MuPAD® хранит все объекты как элементы конкретных областей. Существует два типа областей в MuPAD: основные области и области библиотеки. Система включает основные области, написанные в C++. Имена основных областей запускаются с DOM_
. Например, область целых чисел DOM_INT
, область рациональных чисел DOM_RAT
и область идентификаторов DOM_IDENT
является основными областями. Большинство основных областей, доступных в MuPAD, перечислено в Основных Областях.
Система также включает области библиотеки, такие как доменный Dom::Matrix()
матриц, доменный Dom::ArithmeticalExpression
арифметических выражений, доменный Dom::Interval
интервалов с плавающей точкой и доменный stats::sample
статистических выборок. Много областей библиотеки перечислены в Областях Библиотеки. Другие области библиотеки перечислены в соответствующих библиотеках. Например, можно найти область библиотеки solvelib::BasicSet
основных бесконечных множеств под Утилитами для категории Решателя. Области библиотеки написаны в языке программирования MuPAD. Также можно создать собственные области библиотеки.
Перегрузка работает по-другому на основные области и области библиотеки. Система может перегрузить любой метод области библиотеки. Для основных областей, системные перегрузки только некоторые методы.
Основной доменный DOM_EXPR
включает выражения MuPAD, такие как выражения, созданные арифметическими или индексируемыми операторами, операторами и вызовами функции. MuPAD классифицирует элементы доменного DOM_EXPR
далее путем определения типов выражения. Типы выражения обеспечивают более подробную информацию о конкретном выражении. Например, вы можете хотеть знать, является ли выражение арифметическим выражением, таким как сумма или продукт, Булево выражение, вызов функции или некоторый другой тип выражения. Для этих выражений функция domtype
возвращает их доменный тип DOM_EXPR
:
domtype(a + b), domtype(a*b), domtype(a and b), domtype(sin(a)), domtype(a = b)
Чтобы найти типы выражения этих выражений, используйте функцию type
:
type(a + b), type(a*b), type(a and b), type(sin(a)), type(a = b)
Если оператор или функция имеют слот “типа”, функция type
возвращает значение строки, сохраненное в том слоте. Например, слот “типа” оператора сложения содержит значение строки “_plus
”, слот “типа” оператора умножения содержит “_mult
”, слот “типа” синусоидальной функции содержит “sin
” и так далее.
Выражение может включать больше чем один оператор. Как правило, MuPAD сопоставляет тип выражения таких выражений с самым низким оператором приоритета. Если вы визуализируете выражение как дерево выражений, самый низкий оператор приоритета появляется в корне того дерева. Смотрите Деревья выражений Визуализации для получения дополнительной информации. Например, считайте выражение a + b*c
. При выполнении этого выражения система выполняет умножение, и затем выполняет сложение. Поэтому оператор сложения является самым низким оператором приоритета в выражении. Этот оператор определяет тип выражения:
type(a + b*c)
Если самый низкий оператор приоритета в выражении не имеет слота “типа”, функция type
возвращает строку “function
”:
type(f(a^2 + a + 2))
domtype
и функции type
возвращают те же результаты для элементов большинства областей MuPAD:
domtype(5/7), type(5/7); domtype(1.2345), type(1.2345); domtype(a), type(a);
Если ваш код полагается при условии, что объект принадлежит конкретному доменному типу или типу выражения, проверьте что предположение прежде, чем выполнить код. Чтобы протестировать, принадлежит ли объект MuPAD конкретному типу, используйте функцию testtype
. Используйте эту функцию, чтобы протестировать и доменные типы и типы выражения:
testtype(a + b, DOM_EXPR), testtype(a + b, "_plus")