Диагностируйте MuPAD к ошибкам перевода MATLAB

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

Сообщение об ошибкеДеталиРекомендации
Никакой эквивалентный код в MATLAB.

convertMuPADNotebook не может найти соответствующую функциональность в MATLAB.

Настройте код так, чтобы он использовал только функциональность, которая может быть выражена на языке MATLAB. Также в целевом файле .mlx, некоторая функциональность может быть заменена функциональностью MATLAB, такой как во вводе - выводе файла или статистике.

Не мог перевести вторые и производные высшего порядка функций Эйри. Выразите эти производные с точки зрения функций Эйри и их первые производные.

Функция airy MATLAB представляет функции Эйри первого и второго вида и их первых производных. В MuPAD airyAi(z,n) и airyBi(z,n) могут представлять вторые и производные высшего порядка функций Эйри, то есть, n может быть больше, чем 1.

Перепишите вторые и производные высшего порядка функций Эйри с точки зрения функций Эйри и их первых производных. Затем преобразуйте результат в код MATLAB.

MuPAD airyAi и функции airyBi возвращают результаты с точки зрения функций Эйри и их первых производных. Можно заменить вторые и производные высшего порядка их выходными параметрами в MuPAD, прежде, чем преобразовать код в MATLAB.

Не мог перевести присвоение на переменную окружения MuPAD.

Переменные окружения являются глобальными переменными, такими как HISTORY, LEVEL, ORDER, и так далее, которые влияют на поведение алгоритмов MuPAD.

В некоторых случаях можно использовать аргументы пары "имя-значение" в каждом вызове функции, такие как устанавливание значения Order в вызове функции taylor.

В других случаях нет никакой соответствующей замены. Настройте код так, чтобы он не требовал глобальной установки.

Не мог перевести присвоения на помнить таблицу процедуры.

Использование MuPAD помнит таблицы, чтобы ускорить вычисления, особенно когда вы используете рекурсивные вызовы процедуры. Система хранит аргументы вызова процедуры как индексы помнить  записей таблицы и соответствующие результаты как значения этих записей. Когда вы вызываете процедуру с помощью тех же аргументов в качестве в предыдущих вызовах, MuPAD получает доступ к помнить таблице той процедуры. Если помнить таблица содержит запись с обязательными аргументами, MuPAD возвращает значение той записи. Для получения дополнительной информации смотрите, Помнят Механизм.

Помнить таблицы не доступны в MATLAB.

Настройте код так, чтобы он не использовал, помнят таблицы.

Не мог перевести присвоения на слоты областей и функциональных сред.

В MuPAD функция slot задает методы и записи типов данных (области) или для определения атрибутов function environments. Эти методы и записи (слоты) позволяют вам системные функции перегрузки вашими собственными областями и функциональными средами.

Области, функциональные среды и их слоты не доступны в MATLAB.

Настройте код так, чтобы он не использовал присвоения на слоты областей и функциональных сред.

Не мог перевести явно заданный содействующий звонок.

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

Настройте код так, чтобы он не использовал полиномы по специальным звонкам.

Не мог перевести complexInfinity.

MuPAD использует значение complexInfinity. Это значение не доступно в MATLAB.

Настройте код так, чтобы он не использовал complexInfinity.

Не мог перевести код MuPAD, потому что это использует устаревший синтаксис вызова.

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

Обновите код, чтобы использовать текущий синтаксис MuPAD путем проверки документации MuPAD и затем запустить convertMuPADNotebook снова.

Не мог перевести вызов функционального 'D' больше чем с одним аргументом.

Индексы в первом аргументе D не могут быть переведены в имена переменных в MATLAB.

Используйте функцию MuPAD diff вместо D.

Не мог перевести области MuPAD или команды, чтобы создать области или их элементы.

Области представляют типы данных в MuPAD. Они не доступны в MATLAB.

Настройте код так, чтобы он не создавал или явным образом использовал области и их элементы.

Не мог перевести переменную окружения MuPAD '' {0} ''.

Переменные окружения являются глобальными переменными, такими как HISTORY, LEVEL, ORDER, и так далее, которые влияют на поведение алгоритмов MuPAD.

convertMuPADNotebook не может перевести переменные окружения MuPAD, потому что они не доступны в MATLAB.

Настройте код так, чтобы он не требовал доступу переменных окружения MuPAD.

Не мог перевести вызовы функции с последовательностями выражения как входные параметры.

В MuPAD вызов функции f(x), где x является последовательностью операндов n, решает к вызову с аргументами n.

MATLAB не может разрешить вызовы функции с последовательностями выражения к вызовам с несколькими аргументами.

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

Не мог перевести бесконечные множества.

MuPAD распознает бесконечные множества. Например, solve может возвратить решение как бесконечное множество: solve(sin(x*PI/2) = 0, x) возвращается {2k|k}. Можно создать такие наборы при помощи Dom::ImageSet.

MATLAB не поддерживает бесконечные множества.

Настройте код так, чтобы он не использовал бесконечные множества в качестве входных параметров.

Не мог перевести вызов, получающий доступ к ранее вычисленным результатам. Функция ans MATLAB позволяет вам доступ только новый результат.

Функция MuPAD last и ее ярлык % обычно позволяют вам получить доступ к последним 20 командам, сохраненным во внутренней таблице истории.

В MATLAB ans позволяет вам доступ только одна новая команда.

Настройте код так, чтобы он использовал присвоения вместо того, чтобы полагаться на last или %.

Не мог перевести переменную "{0}" представление библиотеки MuPAD.

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

Настройте код так, чтобы он не использовал имена библиотеки MuPAD в качестве идентификаторов.

Не мог сопоставить функцию с объектами этого класса.

Объекты этого класса не имеют эквивалентного представительства в MATLAB. Отображение не может быть переведено.

В целевом файле .mlx реализуйте отображение путем записи цикла.

Не мог перевести эту форму матричного определения.

MuPAD обеспечивает несколько разных подходов для создания матрицы. Можно создать матрицу из массива, списка элементов, вложенного списка строк или таблицы. Кроме того, можно создать матрицу путем определения только ненулевых записей, таких как A[i1,j1] = value1, A[i2,j2] = value2, и так далее.

Некоторые из этих подходов не могут быть переведены в код MATLAB.

Настройте код так, чтобы он задал матрицы при помощи массива, список элементов или вложенный список строк.

Не может перевести деление относительно нескольких переменных.

Полиномиальное деление относительно нескольких переменных не доступно в MATLAB.

Настройте код так, чтобы он не использовал полиномиальное деление относительно нескольких переменных.

Не мог перевести вложенное индексированное присвоение.

Вложенное индексированное присвоение не доступно в MATLAB.

Замените вложенное индексируемое присвоение на несколько присвоений.

Не удалось создать полином из списка коэффициентов.

Не может перевести полиномиальное создание из данного списка коэффициентов.

Приведите первый аргумент poly арифметическое выражение вместо списка.

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

Для кода, который вы хотите выполнить неоднократно, MuPAD позволяет вам создать процедуры при помощи команды proc.

convertMuPADNotebook может перевести простые процедуры в анонимные функции. Простые процедуры не содержат циклы, присвоения, несколько операторов или вложенных функций где внутренние функциональные переменные доступов внешней функции.

Более сложные процедуры не могут быть переведены в код MATLAB.

Настройте код так, чтобы он не использовал сложные процедуры.

Не мог перевести глобальную таблицу свойств.

convertMuPADNotebook не может перевести глобальную таблицу MuPAD свойств, PROPERTIES, потому что эта функциональность не доступна в MATLAB.

Установите свойства и предположения, как описано в Свойствах и Предположениях.

Не удалось создать случайные генераторы с отдельными значениями seed.

MuPAD позволяет вам установить отдельное значение seed для каждого генератора случайных чисел. MATLAB имеет одно значение seed для всех генераторов случайных чисел. Смотрите rng для деталей.

Настройте код так, чтобы он не полагался на отдельные значения seed для различных генераторов случайных чисел.

Не мог перевести цель ''{0}'' для функции MATLAB ''перезапись''.

Функция MuPAD rewrite может переписать выражение с точки зрения следующих целей: andor, arccos, arccosh, arccot, arccoth, arcsin, arcsinh, arctan, arctanh, arg, bernoulli, cos, cosh, cot, coth, diff, D, erf, erfc, erfi, exp, fact, gamma, harmonic, heaviside, inverf, inverfc, lambertW, ln, max, min, piecewise, psi, sign, sin, sincos, sinh, sinhcosh, tan, tanh.

Функция rewrite MATLAB поддерживает меньше целей: explogsincossincostan, cotsqrt, heaviside, asin, acos, atan, acot, sinh, cosh, tanh, coth, sinhcosh, asinh, acosh, atanh, acoth, piecewise.

Настройте код так, чтобы он использовал целевые опции, доступные в MATLAB. В случае необходимости используйте последовательность вызовов функции к rewrite с различными целевыми опциями.

Не мог перевести слоты областей и функциональных сред.

Слоты и области не доступны в MATLAB.

Настройте код так, чтобы он не использовал слоты или области.

Не мог заменить только одним вхождением подвыражения.

Замена только одним вхождением подвыражения не доступна в MATLAB.

В целевом файле .mlx разбейте выражение с помощью функционального children, чтобы получить подвыражение, и затем заменить его с помощью функционального subs.

Синтаксическая ошибка в коде MuPAD.

Код MuPAD содержит синтаксическую ошибку, например, недостающую скобку.

Проверяйте и исправьте код MuPAD, который вы переводите.

Тестовая среда MuPAD, не доступного в MATLAB.

Тестовая среда MuPAD не доступна в MATLAB.

Настройте код так, чтобы он не использовал тестовую среду MuPAD.

Неизвестная область или библиотека "{0}".

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

Проверяйте и исправьте код MuPAD, который вы переводите.

Неизвестная функция MuPAD "{0}".

Функция не доступна в MuPAD.

Проверяйте и исправьте код MuPAD, который вы переводите.

Не мог перевести вызовы функции '' {0} ''.

Функция является допустимой функцией MuPAD, но вызов функции недопустим. Например, количество входных параметров или типы аргументов могут быть неправильными.

Проверяйте и исправьте код MuPAD, который вы переводите.

Не мог перевести вызовы функций библиотеки '' {0} ''.

Функции этой библиотеки доступны в MuPAD, но в MATLAB нет никаких соответствующих функций.

Настройте код так, чтобы он не использовал функции этой библиотеки.

Функция MuPAD ''{0}'' не может быть преобразована в указатель на функцию.

Функция MuPAD не имеет эквивалентного указателя на функцию в MATLAB.

Настройте код, чтобы использовать функцию, которая имеет эквивалент в MATLAB.

Не мог перевести опцию '' {0} ''.

Скорее всего, эта опция доступна в MuPAD, но в MATLAB нет никаких соответствующих опций.

Настройте код так, чтобы он не использовал эту опцию.

Не мог перевести код MuPAD, потому что это использует недопустимый синтаксис вызова.

Скорее всего, вызов функции в коде MuPAD имеет ошибку.

Проверяйте и исправьте код MuPAD, который вы переводите.