Определение функции

Определение и вызов ускорения кода

Функции

coder.extrinsicОбъявите функцию как внешнюю и выполните ее в MATLAB
coder.ignoreConstПредотвратите использование постоянного значения выражения для специализаций функции
coder.unrollРазблокируйте for-loop путем создания копии тела цикла для каждой итерации цикла

Темы

Директива компиляции% # codegen

Укажите, что MATLAB® функция предназначена для генерации кода.

Генерация кода для списков аргументов переменной длины

Сгенерируйте код для varargin и varargout.

Генерация кода для рекурсивных функций

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

Принудительный генератор кода для использования рекурсии во время выполнения

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

Генерация кода для анонимных функций

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

Генерация кода для вложенных функций

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

Разрешение вызовов функций для генерации кода

Генератор кода использует правила приоритета для разрешения вызовов функций.

Разрешение типов файлов на пути генерации кода

Генератор кода использует правила приоритета для разрешения типов файлов.

Используйте MATLAB Engine для выполнения вызова функции в сгенерированном коде

Если функция не поддерживается для генерации кода, объявите ее как extrinsic для выполнения в MATLAB.

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

Неконстантный индекс в вараргин или вараргаут в цикле for-Loop

Цикл силы разворачивается, когда генератор кода не может определить значение индекса в varargin или varargout.

Выходная переменная должна быть назначена перед рекурсивным вызовом во время выполнения

Диагностируйте проблемы назначения выходных переменных для рекурсии во время выполнения.

Достигнут предел рекурсии во время компиляции

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