forget
Очистите помнить таблицу процедуры
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
forget(f
)
forget(f)
очищает помнить таблицу процедуры f
. forget
функция очищается, только помнят, что таблицы, составленные опцией, помнят.
forget
функция очищается, только помнят, что таблицы, составленные опцией, помнят. Функция не влияет на помнить таблицы, составленные prog::remember
.
Не вызывайте forget
функция для предопределенных функций MuPAD®. Многие предопределили функции MuPAD, сохранили специальные значения в их помнить таблицы. forget
функция не выдает ошибку, когда вы вызываете ее для предопределенной функции MuPAD.
forget
функция не работает рекурсивно. Если внутренняя процедура во вложенном использовании процедуры опция помнит, forget
функция не очищает помнить таблицу, составленную для внутренней процедуры.
Если вы используете опцию, помнят в процедуре, MuPAD хранит все входные параметры, которые вы использовали в вызовах процедуры в качестве индексов помнить таблицы и соответствующих результатов как значения этих записей. Например, создайте следующую процедуру f
как обертка для MuPAD sign
функция. Использование опция не забывает включать помнить механизм для процедуры f
:
f := proc(x) option remember; begin sign(x) end:
Теперь вычислите sign
функция для значений-1, 0, и 1:
f(-1), f(0), f(1)
Можно задать различное значение для sign(0)
. Сначала используйте unprotect
функция, чтобы смочь перезаписать значение sign
. Затем присвойте новое значение sign(0)
:
unprotect(sign): sign(0):= 1/2:
Несмотря на то, что вы задали новое значение для sign(0)
, MuPAD не повторно вычисляет результат вызова функции f(0)
. Вместо этого система возвращает результат, сохраненный в помнить таблице:
f(0)
Очистить помнить таблицу, составленную опцией remember
, используйте forget
функция:
forget(f): f(0)
Если вы присваиваете значение вызову функции, вызывая forget
функция также очищает то значение:
f(2) := 1/3: f(2)
forget(f): f(2)
Для дальнейших расчетов восстановите sign
функционируйте к его определению по умолчанию. Используйте protect
функция с ProtectLevelError
опция, чтобы предотвратить дальнейшие изменения в sign
. Кроме того, удалите процедуру f
:
sign(0):= 0: protect(sign, ProtectLevelError): delete f
|
Процедура или функциональная среда |
Пустой объект доменного типа DOM_NULL