Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Чтобы преобразовать файл блокнота MuPAD в файл live скрипта MATLAB, смотрите convertMuPADNotebook. Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, несмотря на то, что существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
И MATLAB и MuPAD имеют их собственные зарезервированные слова, такие как имена функций, специальные значения и имена математических констант. В MATLAB, если вы предоставляете выражение или уравнение как скаляр строки или вектор символов к какой-либо символьной функции кроме str2sym, и входной текст содержит зарезервированные слова как имена переменных или имена функций по крайней мере в одном интерфейсе, затем ошибка может закончиться. Если вы работаете в одном интерфейсе, и имя является зарезервированным словом в другом, то интерфейс вы работаете в продуктах сообщения об ошибке и предупреждающие сообщения. Эти сообщения могут задать причину проблемы неправильно.
Лучший подход должен избегать использования зарезервированных слов как имен переменных или имен функций, особенно если вы используете оба интерфейса.
В MuPAD защищены имена функций. Обычно, система не позволяет вам переопределить стандартную функцию или использует ее имя в качестве переменной. (Чтобы смочь изменить стандартную функцию MuPAD, необходимо сначала удалить ее защиту.), Даже когда вы работаете в Окне Команды MATLAB, механизм MuPAD обрабатывает символьные вычисления. Поэтому имена функций MuPAD являются зарезервированными словами в этом случае. Используя имя функции MuPAD при выполнении символьных вычислений в Окне Команды MATLAB может привести к ошибке. Например:
evalin(symengine,'solve(D - 10)')Error using symengine
Invalid argument.
Error in mupadengine/evalin (line 132)
res = mupadmex(statement,output_type{:});Сообщение не указывает на действительную причину проблемы.
Чтобы устранить эту проблему, используйте функцию syms, чтобы объявить D как символьную переменную. Затем передайте уравнение символьному решателю как символьное выражение (то есть, не задавайте уравнение как скаляр строки или вектор символов).
syms D solve(D - 10)
ans = 10
В этом случае программное обеспечение заменяет D на другое имя переменной прежде, чем передать выражение механизму MuPAD.
Также преобразуйте уравнение, которое задано как скаляр строки или вектор символов и содержит необъявленное, зарезервированное имя переменной к символьному выражению с помощью str2sym. Затем предоставьте выражение к solve. Например:
clear all
expsn = str2sym("D - 10");
solve(expsn)ans = 10