Преобразуйте блокноты MuPAD в Live скрипты MATLAB

Миграция MuPAD® блокноты в MATLAB® live скрипты, которые используют код MATLAB. Live скрипты являются интерактивным способом запуска кода MATLAB. Для получения дополнительной информации смотрите Что такое Live Script или Function?. Блокноты MuPAD преобразуются в live скрипты с помощью Symbolic Math Toolbox™. Для получения дополнительной информации смотрите Запуск с Symbolic Math Toolbox.

Преобразуйте Notebook MuPAD .mn в Live Script MATLAB .mlx

  1. Подготовьте блокнот: Этот шаг является необязательным, но помогает избежать ошибок преобразования и предупреждений. Проверьте, содержит ли записной блокнот непереводимые объекты из объектов MuPAD, которые не преобразуются. Эти объекты вызывают ошибки перевода или предупреждения.

  2. Преобразуйте блокнот: Использовать convertMuPADNotebook. Для примера преобразуйте myNotebook.mn в текущей папке, в myScript.mlx в той же папке.

    convertMuPADNotebook('myNotebook.mn','myScript.mlx')

    Также щелкните правой кнопкой мыши блокнот в браузере Текущей папки и выберите Open as Live Script.

  3. Проверяйте на ошибки или предупреждения: Проверяйте выход convertMuPADNotebook для ошибок или предупреждений. Если их нет, перейдите к шагу 7. Например, этот выход означает, что преобразованный live скрипт myScript.mlx имеет 4 ошибки и 1 предупреждение.

    Created ''myScript.mlx': 4 translation errors, 1 warnings. For verifying...
     the document, see help.

    Ошибка перевода означает, что переведенный код не будет запускаться правильно, в то время как предупреждение о переводе указывает, что код требует проверки. Если код содержит только предупреждения, он, вероятно, будет запускаться без проблем.

  4. Исправьте ошибки перевода: Откройте преобразованный live скрипт, нажав ссылку в выходах. Поиск ошибок путем поиска ERROR. Ошибка объясняет, какая команда MuPAD не была правильно переведена. Для получения дополнительной информации и исправлений нажмите ERROR. После устранения ошибки удалите сообщение об ошибке. Список ошибок перевода см. в разделе Диагностика ошибок перевода MuPAD в MATLAB. Если вы не можете исправить ошибку и известные проблемы не помогают, обратитесь в службу технической поддержки MathWorks.

  5. Исправить предупреждения о переводе: Найти предупреждения путем поиска WARNING. Предупреждающий текст объясняет проблему. Для получения дополнительной информации и исправлений нажмите WARNING. Решите либо адаптировать код, либо проигнорировать предупреждение. Затем удалите предупреждающее сообщение. Список предупреждений о переводе см. в разделе Поиск и устранение проблем с MuPAD в MATLAB Translation Warnings.

  6. Проверьте live скрипт: Откройте live скрипт и проверьте на неожиданные команды, комментарии, форматирование и так далее. Для читаемости преобразованный код может потребовать ручной очистки, такой как исключение вспомогательных переменных.

  7. Выполните live скрипт: Убедитесь, что код запускается правильно и возвращает ожидаемые результаты. Если результаты не ожидаются, проверьте код MuPAD на наличие известных проблем, перечисленных ниже.

Преобразуйте графику MuPAD в графику MATLAB

Чтобы преобразовать графику MuPAD, сначала попробуйте преобразовать команды plot MuPAD, которые сгенерировали графику. Этот подход гарантирует, что вы можете управлять графическим выходом в MATLAB, подобным MuPAD. Если вы не можете преобразовать команды MuPAD, которые производят графику, то можно экспортировать графику в векторные или растровые форматы.

Известные проблемы

Это известные проблемы при преобразовании блокнотов MuPAD в live скрипты MATLAB с convertMuPADNotebook функция. Если ваша проблема не описана, обратитесь в службу технической поддержки MathWorks.

Объекты MuPAD, которые не преобразованы

Разверните список, чтобы просмотреть объекты MuPAD, которые не преобразованы. Чтобы избежать ошибок преобразования и предупреждений, удалите эти объекты или команды из вашего блокнота перед преобразованием.

 Объекты, не преобразованные

Нет автоматической замены в MATLAB

В MATLAB, когда символьным переменным присваиваются значения, выражения, содержащие эти значения, не обновляются автоматически.

 Исправление этой проблемы

last(1) в MuPAD не ans в MATLAB

В MuPAD, last(1) всегда возвращает последний результат. В MATLAB, ans возвращает результат последней неназначенной команды. Для примера в MATLAB, если вы запускаете x = 1, затем вызов ans не возвращается 1.

 Исправление этой проблемы

Некоторые solve Неправильный доступ к результатам

Когда результаты MuPAD solve имеют доступ, convertMuPADNotebook принимает, что результатом является конечное множество. Однако, если результатом является не конечное множество, то код неправильно переводится.

 Исправление этой проблемы

break Внутренние case Неверно переведен

В MuPAD, a break завершает корпус в корпусе переключателя. Однако MATLAB не требует break чтобы закончить дело. Таким образом, MuPAD break представляет ненужное break в MATLAB. Кроме того, если случай MuPAD опускает break, тогда случай MATLAB не упадет.

 Исправление этой проблемы

Некоторые опции графики MuPAD не переведены

Хотя наиболее часто используемые графические опции MuPAD переведены, существуют некоторые опции, которые не переведены.

 Исправление этой проблемы

Некоторые операции с матрицами переведены неправильно

Операции с матрицами не всегда преобразуются правильно. Для примера, если M является матрицей, тогда exp(M) в MuPAD неправильно переведен в exp(M) вместо матричной экспоненциальной expm(M).

 Исправление этой проблемы

indets Поведение в MATLAB отличается

indets переведен в MATLAB symvar. Однако, symvar не находит связанных переменных или постоянных идентификаторов, таких как PI в MuPAD.

Возвращаемый тип factor Отличается MATLAB

Тип возврата MuPAD factor не имеет эквивалента в MATLAB. Последующие операции по результатам factor в MATLAB могут быть возвращены неправильные результаты.

 Исправление этой проблемы

Вопросы размещения

  • Системы блокнотов не преобразуются.

  • Блокноты MuPAD не преобразуются.

  • Графики MuPAD не являются интерактивными в live скриптах.

  • Заголовки или заголовки в блокнотах MuPAD не всегда обнаруживаются.

  • Текстовый атрибут MuPAD underline не преобразован

  • Форматирование текста: Шрифт, размер шрифта и цвет не преобразуются. Весь текст в live скриптах выглядит одинаково.

Синтаксические различия между MATLAB и MuPAD

Для синтаксических различий между MATLAB и MuPAD, смотрите Различия между MATLAB и MuPAD Синтаксис.