Анализ кода MATLAB

Идентифицируйте и устраните проблемы в MATLAB® код, которые предотвращают генерацию кода C/C++

Успешная генерация кода C/C++ из кода MATLAB зависит от податливости с правилами генерации кода и ограничениями. Например, ваш код MATLAB должен только использовать функции MATLAB и функции тулбокса, поддерживаемые для генерации кода. Чтобы идентифицировать и устранить проблемы с вашим кодом MATLAB, до генерации кода C/C++, можно использовать Инструмент Готовности Анализатора кода и Кода. Чтобы проверять, что ваш код MATLAB производит сгенерированный код, который работает как ожидалось, сгенерируйте и выполните MEX-функцию, которая является исполняемым файлом и тестируемый в среде MATLAB.

Функции

codegenСгенерируйте код C/C++ из кода MATLAB
coder.runTestЗапустите тест, заменяющий вызовы функций MATLAB с вызовами MEX-функций
coder.screenerОпределите, подходит ли функция для генерации кода
coder.sameSizeBinaryOpПримените поэлементные бинарные операции без неявного расширения

Темы

Аналитические основы кода MATLAB

Рабочий процесс для подготовки кода MATLAB для генерации кода

Подготовьте код MATLAB к генерации кода C/C++ или ускорению кода.

Фиксация ошибок, обнаруженных во время проектирования

Зафиксируйте ошибки, обнаруженные анализатором кода.

Зафиксируйте ошибки, обнаруженные во время генерации кода

Зафиксируйте ошибки и предупреждения, перечисленные в отчете генерации кода.

Отладка стратегий

Выберите стратегию обнаружения и исправления кода, который не подходит для генерации кода.

Используя MEX-функции, которые генерирует MATLAB Coder

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

Отладьте Сгенерированный Код C/C++

Отладьте автономный код C/C++, сгенерированный из вашего кода MATLAB.

Анализатор кода

Используя анализатор кода

Проверяйте на нарушения кода MATLAB во время проектирования.

Проверка кода с анализатором кода

Проверяйте на нарушения кода MATLAB в редакторе MATLAB.

Инструмент готовности кода

Инструмент готовности генерации кода

Интерпретируйте отчет инструмента готовности генерации кода.

Экранирование готовности генерации кода в приложении MATLAB Coder

Экраны приложения ваш код MATLAB для неподдерживаемых функций и функций.

Проверка кода при помощи инструмента готовности генерации кода

Запустите инструмент готовности генерации кода в командной строке от браузера текущей папки, или в приложении.

Тестирование MEX-функции

Рабочий процесс для тестирования MEX-функций в MATLAB

Протестируйте MEX-функции прежде, чем сгенерировать код C/C++.

Зачем тестировать MEX-функции в MATLAB?

Протестируйте MEX-функцию, чтобы проверить, что она обеспечивает ту же функциональность как оригинальный код MATLAB.

Сгенерируйте MEX-функции при помощи приложения MATLAB Coder

Следуйте за рабочим процессом для генерации MEX-функций с приложением MATLAB Coder™.

Сгенерируйте MEX-функции в командной строке

Следуйте за рабочим процессом для генерации MEX-функций с codegen.

Проверяйте на проблемы во время выполнения при помощи приложения

Обнаружьте и устраните проблемы, которые более трудно найти в сгенерированном автономном коде C/C++.

Выполнение MEX-функций

Вызовите MEX-функцию таким же образом, что вы вызываете исходную функцию MATLAB.

Соберите и просмотрите выполнение линии, значит ваш код MATLAB

Смотрите, как хорошо ваш тест осуществляет код MEX, сгенерированный из вашего кода MATLAB.

Отладьте ошибки времени выполнения

Отладьте проблемы со сгенерированными MEX-функциями.

Поиск и устранение проблем

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

Инструмент готовности генерации кода перестал работать, когда это не может найти ваши файлы точки входа.

Не удалось открыть проект MATLAB Coder

Используйте резервный файл проекта, чтобы вернуться к формату более раннего релиза.

Медленные операции в приложении MATLAB Coder

Отключите экранирование готовности генерации кода.

Ошибка твердости: функция не поддерживается для генерации кода

Диагностируйте отказ генерации кода неподдерживаемых функций MATLAB.

Для просмотра документации необходимо авторизоваться на сайте