Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
MuPAD® автоматически оценивает результаты, возвращенные большинством системных функций. Однако несколько функций могут возвратить неоцененные результаты. Например, функция text2expr
не оценивает возвращенные результаты:
text2expr("2 + 2")
Функция last
и ее ярлык %
, которые возвращают ранее вычисленный объект, также не оценивают результаты:
%
Для таких случаев MuPAD обеспечивает функцию eval
. Эта функция позволяет вам осуществить оценку выражения. Например, осуществите оценку ранее возвращенного выражения:
eval(%);
Другим примером функции, которая автоматически не оценивает возвращенные результаты, является функция subs
. Эта функция может упростить выражения, которые содержат только чисто арифметические операции:
subs(x^2 + 1, x = 0)
Однако функция subs
не выполняет выражения. Например, замените переменной x
со значением 0 в следующем выражении, которое содержит синусоидальную функцию:
subs(sin(x^2) + 1, x = 0)
Можно использовать функцию eval
, чтобы осуществить оценку результатов, возвращенных subs
. В этом случае MuPAD выполняет целое выражение:
eval(%)
Также функция subs
обеспечивает более эффективный метод оценить его результаты. Опция EvalChanges
осуществляет оценку измененных частей выражения, упуская неизменные части из процесса оценки:
subs(sin(x^2) + 1, x = 0, EvalChanges)
Наиболее эффективно выполните выражение в особом значении переменной при помощи функции evalAt
. Смотрите Оценку в Точке.
Кроме того, MuPAD не оценивает массивы, таблицы и полиномы. Например, система не оценивает идентификаторы a
и b
следующего массива A
:
A := array(1..2, [a, b]): b := 2*a: a := 1: A
Когда вы получаете доступ к записям массива A
при помощи функции op
, система не оценивает записи A
. Когда вы используете индексный доступ, система оценивает записи массивов, матриц и таблиц:
op(A, 1), op(A, 2); A[1], A[2]
Чтобы оценить все записи массива, таблица или полином применяет функцию eval
к тому массиву, таблице или полиному. Используйте функцию map
, чтобы применить eval
к массиву или таблице:
map(A, eval)
Для полиномов используйте функцию mapcoeffs
:
p := poly(c*x, [x]): c := 10: mapcoeffs(p, eval)
delete a, b, c: