Вам не нужно обновлять исходный код MEX, чтобы продолжить создание файлов MEX. mex
команда использует -R2017b
API по умолчанию. Однако в будущей версии MATLAB®, mex
использует перемежающийся комплексный API -R2018a
по умолчанию, а затем необходимо изменить команду сборки. Поэтому, чтобы гарантировать желаемое поведение между версиями MATLAB, добавьте флаг совместимости -R2017b
к вашим скриптам сборки.
Можно запустить существующие двоичные файлы MEX, не обновляя файлы для использования с перемеженным комплексным API. Однако другие несовместимости могут помешать выполнению существующей MEX-функции. Если ваша функция не выполняется должным образом, выполните поиск mex
в соответствующих примечаниях к релизу MATLAB и рассмотрите темы Вопросов совместимости».
Состояние вашего исходного кода | Следующее действие |
---|---|
Мои MEX-функции не используют комплексные числа. | Проверьте, что ваши функции правильно обрабатывают любые комплексные данные вход. Вызовы на MathWorks рекомендует вам обновить код, чтобы использовать Если вы используете |
Я не планирую обновлять свой код. |
Если ваши MEX-функции используют комплексные числа, тогда вы решили отказаться. MathWorks рекомендует создание с использованием флага совместимости Если ваш код обрабатывает сложные числа, вы можете заметить влияние эффективности, когда MATLAB обращается к интерфейсу совместимости. |
Я хочу обновить код. С чего начать? | Для обновления исходного кода смотрите Upgrade MEX Files to Use Interleaved Complex API. |
Я использую комплексные числа в MEX-функциях, но не имею доступа к исходному коду. |
Попросите владельца исходного кода следовать шагам в Upgrade MEX Files to Use Interleaved Complex API. |
Я использую комплексные числа со сторонними библиотеками. Мой код MEX отвечает за преобразование MATLAB представления комплексных чисел в представление комплексных чисел в библиотеке. |
Идентифицируйте представление библиотекой комплексных чисел. Иногда представление может быть ближе к чередующемуся представлению, используемому в MATLAB. В других случаях библиотеки имеют опции для представления комплексных чисел в памяти. Если это так, обратитесь к документации поставщика и выберите представление, которое наиболее точно соответствует чередующемуся представлению MATLAB. |
Моя MEX-функция генерирует ошибки. |
Необходимо перекомпилировать файл MEX из исходного кода. При использовании |