Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Чтобы преобразовать файл блокнота MuPAD в файл live скрипта MATLAB, смотрите convertMuPADNotebook
. Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, несмотря на то, что существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
Процедура MuPAD является текстовым файлом, который можно написать в любом текстовом редакторе. Методические рекомендации должны использовать редактор MATLAB.
Чтобы задать процедуру, используйте proc
функция. Заключите код в begin
и end_proc
функции:
myProc:= proc(n) begin if n = 1 or n = 0 then 1 else n * myProc(n - 1) end_if; end_proc:
По умолчанию процедура MuPAD возвращает результат последней выполняемой команды. Можно обеспечить процедуру, чтобы возвратить другой результат при помощи return
. В обоих случаях процедура возвращает только один результат. Чтобы получить несколько результатов процедуры, объедините их в список или другую структуру данных, или используйте print
функция.
Если вы только хотите отобразить результаты и не должны использовать их в дальнейших расчетах, используйте print
функция. С print
, ваша процедура все еще возвращает один результат, но распечатывает промежуточные результаты на экране. Например, эта процедура распечатывает значение своего аргумента в каждом вызове:
myProcPrint:= proc(n) begin print(n); if n = 0 or n = 1 then return(1); end_if; n * myProcPrint(n - 1); end_proc:
Если вы хотите использовать несколько результатов процедуры, используйте упорядоченные структуры данных, такие как списки или матрицы как возвращаемые значения. В этом случае результатом последней выполняемой команды является технически один объект, но это может содержать больше чем одно значение. Например, эта процедура возвращает список двух записей:
myProcSort:= proc(a, b) begin if a < b then [a, b] else [b, a] end_if; end_proc:
Избегайте использования неупорядоченных структур данных, таких как последовательности и наборы, чтобы возвратить несколько результатов процедуры. Порядок записей в этих структурах может измениться непредсказуемо.
Когда вы сохраняете процедуру, рекомендуется использовать дополнительный .mu
. Для получения дополнительной информации смотрите Файлы Notebook и Программные файлы. Имя файла может отличаться от имени процедуры. Кроме того, можно сохранить несколько процедур в одном файле.
Чтобы смочь вызвать процедуру, необходимо сначала выполнить код, задающий ту процедуру в блокноте. Если вы написали процедуру в том же блокноте, просто оцениваете входную область, которая содержит процедуру. Если вы написали процедуру в отдельном файле, необходимо считать файл в блокнот. Чтение файла означает находить его и выполнять команды в нем.
Если вы работаете в MuPAD Notebook и создаете отдельный программный файл, который содержит процедуру, используйте один из следующих методов, чтобы выполнить процедуру в блокноте. Первый подход должен выбрать Notebook> Read Commands из главного меню.
В качестве альтернативы можно использовать read
функция. Вызов функции read(filename)
поиски программного файла в этом порядке:
Папки, заданные переменной окружения READPATH
filename
рассматриваемый как абсолютный путь
Текущая папка (зависит от операционной системы),
Если вы хотите вызвать процедуру от Live Editor MATLAB, все еще необходимо выполнить ту процедуру прежде, чем вызвать ее. Смотрите Вызов Ваши Собственные Процедуры MuPAD.
В качестве альтернативы можно добавить процедуру MuPAD, чтобы запустить команды конкретного блокнота. Этот метод позволяет вам выполнить процедуру каждый раз, когда вы запускаете двигатель блокнота. Запуститесь команды выполняются тихо без любых видимых выходных параметров в блокноте. Можно скопировать процедуру в диалоговое окно, которое задает команды запуска, или присоедините процедуру как скрипт запуска. Для получения информации смотрите, Скрывают Строки кода.
Можно расширить функциональность, доступную в тулбоксе путем записи собственных процедур в языке MuPAD. Этот раздел объясняет, как вызвать такие процедуры в Окне Команды MATLAB.
Предположим, что вы записали myProc
процедура, которая вычисляет факториал неотрицательного целого числа.
Сохраните процедуру как файл с дополнительным .mu
. Например, сохраните процедуру как myProcedure.mu
в папке C:/MuPAD
.
Возвратитесь к Окну Команды MATLAB. Прежде, чем вызвать процедуру в командной строке MATLAB, введите:
read(symengine, 'C:/MuPAD/myProcedure.mu')
read
команда читает и выполняет myProcedure.mu
файл в MuPAD. После этого можно вызвать myProc
процедура любым допустимым параметром. Например, вычислите факториал 15:
feval(symengine, 'myProc', 15)
ans = 1307674368000
Если ваша процедура MuPAD принимает аргументы вектора символов, заключите эти аргументы в два набора кавычек: двойные кавычки в одинарных кавычках. Одинарные кавычки подавляют оценку аргумента прежде, чем передать его процедуре MuPAD, и двойные кавычки позволяют MuPAD распознать, что аргумент является вектором символов. Например, эта процедура MuPAD преобразует вектор символов в нижний регистр и проверяет при возвращении, тот вектор символов изменяет его.
В Окне Команды MATLAB используйте read
команда, чтобы читать и выполнить reverted.mu
.
read(symengine, 'C:/MuPAD/reverted.mu')
Теперь используйте feval
вызывать процедуру reverted
. Чтобы передать аргумент вектора символов процедуре, используйте двойные кавычки в одинарных кавычках.
feval(symengine, 'reverted', '"Abccba"')
ans = 1