Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
MuPAD® реализует внутренний механизм истории. Механизм истории позволяет вам получить доступ к ограниченному количеству ранее вычисленных результатов, с или без команд, которые сгенерировали результаты. Механизм истории также помогает вам сократить количество дополнительных идентификаторов, обычно используемых в хранении результатов промежуточных расчетов. Вместо того, чтобы присвоить результаты таких расчетов к вспомогательным идентификаторам, можно получить доступ к записям таблицы истории и получить ранее вычисленный результат.
Чтобы получить доступ к записям таблицы истории, используйте last
и history
функции. last
функция возвращает ранее вычисленные результаты без команды, которая сгенерировала результаты. history
функция возвращает ранее вычисленные результаты наряду с командами, которые сгенерировали те результаты.
Для last
функция, MuPAD также предоставляет ярлыку %
. Вызов функции last(n)
(или % n
) возвращает n
запись th таблицы истории. last
функционируйте считает записи таблицы истории от конца таблицы. Таким образом, когда вы используете last
функция, новым результатом является первая запись таблицы истории.
Например, вычислите факториалы чисел 10, 20, и 30:
10!; 20!; 30!;
Чтобы получить доступ к вычисленному факториалу 30, используйте вызов функции last
(3) или более короткий вызов %
3:
last(3)
Когда вы вызываете last
или history
функция, MuPAD добавляет результат того вызова таблицы истории.
Вызов last
функционируйте или его ярлык %
вставляет новую запись в таблицу истории. Таким образом таблица истории теперь содержит результаты следующих оценок: 10!, 20!, 30!, и %3 (который в этом примере равен 10!). Если вы вызываете last
функция с аргументом 3 снова, система отображает результат оценки 20!:
last(3)
Чтобы получить доступ к новой записи таблицы истории, можно использовать ярлык %
без параметров. Например, решите следующее уравнение, и затем упростите результат. Обратите внимание на то, что использование %
позволяет вам постараться не присваивать результат решения идентификатора:
solve(log(2, x) + log(2, 5) = x + 5, x);
simplify(%)
last
функция не оценивает результаты. last
функционируйте также возвращает результаты, для которых вы использовали двоеточия, чтобы подавить выходные параметры:
hold(2 + 2): %
history
функционируйте отображает и результат и команду, которая привела к тому результату. Эта функция считает записи таблицы истории от первого результата полученными на текущем сеансе MuPAD. Таким образом, когда вы используете history
функция, новым результатом является последняя запись таблицы истории. В этом разделе первая запись таблицы истории является расчетом факториала 10:
history(1)
Чтобы найти текущее количество записей в таблице истории, вызовите history
функция без аргумента:
history()
Можно использовать history
функционируйте, чтобы получить доступ к новому расчету и его результату:
a := 2: history(history())
Для следующих операторов механизм истории зависит от того, вызываете ли вы оператор в интерактивном режиме или в рамках процедуры:
for
повторение
, и while
циклы
определения процедуры
Эти операторы называются составными операторами. На интерактивном уровне MuPAD хранит составные операторы как один модуль. В процедурах MuPAD хранит операторы, найденные в составном операторе в отдельной таблице истории процедуры. В этом случае система не хранит сам составной оператор.
По умолчанию таблица истории для интерактивных расчетов может содержать до 20 записей. Когда количество записей достигает 20, система удаляет самую старую запись из таблицы истории каждый раз, когда это должно добавить новую запись. Для интерактивных расчетов, переменная окружения HISTORY
определяет максимальное количество записей в таблице истории:
HISTORY
Чтобы изменить максимальное количество записей в таблице истории для текущего сеанса MuPAD, присвойте новое значение HISTORY
:
HISTORY := 2:
Теперь MuPAD хранит только две новых команды и их результаты в таблице истории:
a := 1: b := 2: c := 3: %1, %2; %3
Error: Invalid argument. [last]
В рамках процедуры максимальное количество записей в локальной таблице истории процедуры всегда равняется 3, независимому от значения HISTORY
.
Для дальнейших расчетов восстановите записи максимального количества по умолчанию в таблице истории:
delete HISTORY: HISTORY
Несмотря на то, что MuPAD ограничивает количество записей в таблице истории, это не ограничивает свой размер. Если команда возвращает большой результат, системные хранилища, которые приводят к таблице истории. В то время как этот результат остается в таблице истории, MuPAD не может выпустить память, должен был сохранить тот результат. Одна или несколько больших записей в таблице истории могут значительно уменьшать доступную память и замедлить дальнейшие расчеты. Если вы знаете, что конкретная команда возвращает использующие память результаты, постарайтесь не писать что команда и ее результаты к таблице истории. Чтобы постараться не писать команду и ее результат к таблице истории, установите значение HISTORY
к 0. Недостаток этого подхода - то, что вы удаляете все предыдущие результаты таблицы истории.
Например, установите значение HISTORY
к 0 прежде, чем создать последовательность 1 000 000 случайных чисел:
HISTORY := 0: random() $ i = 1..10^6:
Для дальнейших расчетов восстановите записи максимального количества по умолчанию в таблице истории:
delete HISTORY: HISTORY
Если таблица истории уже содержит использующий память результат, чтобы выпустить память также можно очистить таблицу истории путем устанавливания значения HISTORY
к 0. В качестве альтернативы можно ожидать, пока MuPAD не заполняет таблицу истории новыми записями. Кроме того, можно выбрать Notebook > Disconnect, чтобы перезапустить механизм MuPAD.