Создайте блоки MATLAB function из выражений MuPAD

Примечание

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Чтобы преобразовать файл блокнота MuPAD в файл live скрипта MATLAB, смотрите convertMuPADNotebook. Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, несмотря на то, что существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Symbolic Math Toolbox™ позволяет вам создать блок MATLAB function из символьного выражения. Сгенерированный блок доступен для использования в моделях Simulink®, имеет ли компьютер, который запускает симуляции, лицензию на Symbolic Math Toolbox.

Если вы работаете в Live Editor MATLAB, смотрите, Генерируют блоки MATLAB function от Символьных выражений. Работа в Live Editor MATLAB рекомендуется.

MuPAD Notebook не обеспечивает функцию для генерации блока. Поэтому смочь создать блок из выражения MuPAD:

  1. В блокноте MuPAD присвойте то выражение переменной.

  2. Используйте getVar функционируйте, чтобы скопировать ту переменную от блокнота до рабочего пространства MATLAB.

Для получения дополнительной информации об этих шагах, см. Копию Переменные MuPAD к рабочему пространству MATLAB.

Когда выражение, которое вы хотите использовать в создании блока MATLAB function, появляется в рабочем пространстве MATLAB, используйте matlabFunctionBlock функция, чтобы создать блок из того выражения.

Например, откройте блокнот MuPAD с указателем notebook_handle:

notebook_handle = mupad;

В этом блокноте создайте следующее символьное выражение:

r := sqrt(x^2 + y^2)

Используйте getVar скопировать переменную r к рабочему пространству MATLAB:

r = getVar(notebook_handle,'r')

Переменный r и его значение появляется в рабочем пространстве MATLAB и в Live Editor MATLAB:

r =
(x^2 + y^2)^(1/2)

Прежде, чем сгенерировать блок MATLAB function от выражения, создайте пустую модель или откройте существующую. Например, создайте и откройте новую модель my_system:

new_system('my_system')
open_system('my_system')

Поскольку переменная и ее значение находятся в рабочем пространстве MATLAB, можно использовать matlabFunctionBlock сгенерировать блок my_block:

matlabFunctionBlock('my_system/my_block', r)

Можно открыть и отредактировать блок в редакторе MATLAB. Чтобы открыть блок, дважды кликните его:

function r = my_block(x,y)
%#codegen

r = sqrt(x.^2+y.^2);