Можно сгенерировать эффективный код C/C++ для подмножества встроенных функций MATLAB® и функций тулбокса, классов и Системных объектов, которые вы вызываете из кода MATLAB. Эти функции, классы и Системные объекты перечислены категорией MATLAB или категорией тулбокса в следующих таблицах.
Для алфавитного списка поддерживаемых функций классы и Системные объекты, видят Функции и Объекты, Поддержанные для Генерации кода C/C++ — Алфавитный список.
Для получения дополнительной информации о генерации кода для алгоритмов фиксированной точки обратитесь к Ускорению Кода и Генерации кода от MATLAB (Fixed-Point Designer).
C и генерация Кода С++ для следующих функций требует программного обеспечения Toolbox™ 5G.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих кватернионных функций Aerospace Toolbox требует программного обеспечения Aerospace Blockset™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
См. Массив по сравнению Матричные операции (MATLAB) для подробных описаний следующего оператора эквивалентные функции.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения Audio System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Имя |
---|
Аудио ввод-вывод и Генерация Формы волны |
Дизайн алгоритма обработки аудиоданных |
Выделение признаков и глубоко изучение |
Измерение и пространственное аудио |
Аудио плагины |
C и генерация Кода С++ для следующих функций и классов требует программного обеспечения Automated Driving System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения Communications Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения Computer Vision System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Control System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Deep Learning Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Можно использовать genFunction
в Глубоком Изучении Тулбокса, чтобы сгенерировать автономную функцию MATLAB для обученной нейронной сети. Можно сгенерировать код C/C++ от этой автономной функции MATLAB. Чтобы сгенерировать блоки Simulink®, используйте функцию genSim
. Смотрите Развертывают Обученные Функции Нейронной сети (Глубоко Изучение Тулбокса).
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Генерация кода C для следующих функций и Системных объектов требует Системы DSP лицензия Toolbox™. Много функций DSP System Toolbox требуют постоянных входных параметров для генерации кода.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Имя |
---|
Оценка |
Фильтры |
|
Отфильтруйте дизайн |
Математические операции |
dsp.UpperTriangularSolver * |
Квантизаторы |
Осциллографы |
Управление сигнала |
Операции сигнала |
Приемники |
Источники |
Статистика |
|
|
|
|
|
Преобразования |
|
|
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Следующие общие ограничения применяются к использованию Фиксированной точки функции Designer™ в сгенерированном коде с fiaccel
:
fipref
и объекты quantizer
не поддержаны.
Размеры слова, больше, чем 128 битов, не поддержаны.
Вы не можете изменить fimath
или numerictype
данной переменной fi
после того, как та переменная была создана.
Значение boolean
свойств DataTypeMode
и DataType
не поддержано.
Для всех настроек свойства SumMode
кроме FullPrecision
свойство CastBeforeSum
должно быть установлено в true
.
Можно использовать параллель для (parfor
) циклы в коде, скомпилированном с fiaccel
, но те циклы обработаны как регулярные циклы for
.
Когда вы компилируете код, содержащий объекты fi
с нетривиальным наклоном и масштабированием смещения, можно видеть, что различные результаты в сгенерированном коде, чем вы достигают путем выполнения того же кода в MATLAB.
Общие ограничения кода C/C++, сгенерированного от MATLAB, применяются. Для получения дополнительной информации смотрите Функции языка MATLAB, поддерживавшие для Генерации кода C/C++ (MATLAB CODER).
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Fuzzy Logic Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Если вы устанавливаете программное обеспечение Image Acquisition Toolbox™, можно сгенерировать C и Код С++ для Системы VideoDevice object™. Смотрите imaq.VideoDevice
и Генерацию кода с Системным объектом VideoDevice (Image Acquisition Toolbox).
В следующей таблице перечислены Обработку изображений функции Toolbox™, которые были включены для генерации кода. Необходимо было установить программное обеспечение MATLAB Coder™, чтобы сгенерировать код С от MATLAB для этих функций.
Image Processing Toolbox обеспечивает три типа поддержки генерации кода:
Функции, которые генерируют код С.
Функции, которые генерируют код С, который зависит от специфичной для платформы разделяемой библиотеки (.dll
, .so
или .dylib
). Использование разделяемой библиотеки сохраняет оптимизацию производительности в этих функциях, но это ограничивает целевые платформы, для которых можно сгенерировать код. Для получения дополнительной информации смотрите Генерацию кода для Обработки изображений (Image Processing Toolbox).
Функции, которые генерируют код С или код С, который зависит от разделяемой библиотеки, в зависимости от которой целевой платформы вы задаете в MATLAB CODER. Если вы задаете типичную целевую платформу MATLAB Host Computer
, эти функции генерируют код С, который зависит от разделяемой библиотеки. Если вы задаете какую-либо другую целевую платформу, эти функции генерируют код С.
В сгенерированном коде каждая поддерживаемая функция тулбокса имеет то же имя, аргументы и функциональность как ее дубликат Image Processing Toolbox. Однако некоторые функции имеют ограничения. Следующая таблица включает информацию об ограничениях генерации кода, которые могут существовать для каждой функции. В следующей таблице все функции генерируют код С. Таблица идентифицирует те функции, которые генерируют код С, который зависит от разделяемой библиотеки и тех функций, которые могут сделать обоих, в зависимости от которой целевой платформы вы выбираете.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения MATLAB Compiler™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующей функции требует Образцового Прогнозирующего Управления Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций и Системных объектов требует Оптимизации Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения Phased Array System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Генерация кода C/C++ для следующих функций требует программного обеспечения Robotics System Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Sensor Fusion и Tracking Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Signal Processing Toolbox™. Эти функции не поддерживают входные параметры переменного размера, необходимо задать размер и тип входных параметров функции. Для получения дополнительной информации смотрите Вводы Определения в Генерации кода от MATLAB (Signal Processing Toolbox).
Много функций Signal Processing Toolbox требуют постоянных входных параметров в сгенерированном коде. Чтобы задать постоянный входной параметр для codegen
, используйте coder.Constant
.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Statistics и Machine Learning Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Описательная статистика и визуализация |
geomean * |
grp2idx * |
harmmean * |
iqr |
kurtosis * |
|
Распределения вероятностей |
|
|
|
|
|
Кластерный анализ |
pdist * |
|
squareform * |
Регрессия |
glmval * |
loadCompactModel |
predict * GeneralizedLinearModel и CompactGeneralizedLinearModel |
predict * LinearModel и CompactLinearModel |
predict * RegressionEnsemble , RegressionBaggedEnsemble и CompactRegressionEnsemble |
predict * RegressionGP и CompactRegressionGP |
predict * RegressionLinear |
predict * RegressionSVM и CompactRegressionSVM |
predict * RegressionTree и CompactRegressionTree |
random * GeneralizedLinearModel и CompactGeneralizedLinearModel |
random * LinearModel и CompactLinearModel |
update * CompactRegressionSVM |
GeneralizedLinearModel * и CompactGeneralizedLinearModel * |
LinearModel * и CompactLinearModel * |
RegressionEnsemble *, RegressionBaggedEnsemble *, и CompactRegressionEnsemble * |
RegressionGP * и CompactRegressionGP * |
RegressionLinear * |
RegressionSVM * и CompactRegressionSVM * |
RegressionTree * и CompactRegressionTree * |
Классификация |
loadCompactModel |
predict * ClassificationECOC и CompactClassificationECOC |
predict * ClassificationEnsemble , ClassificationBaggedEnsemble и CompactClassificationEnsemble |
predict * ClassificationDiscriminant и CompactClassificationDiscriminant |
predict * ClassificationKNN |
predict * ClassificationLinear |
predict * ClassificationSVM и CompactClassificationSVM |
predict * ClassificationTree и CompactClassificationTree |
update * CompactClassificationSVM |
ClassificationECOC * и CompactClassificationECOC * |
ClassificationEnsemble *, ClassificationBaggedEnsemble *, и CompactClassificationEnsemble * |
ClassificationDiscriminant * и CompactClassificationDiscriminant * |
ClassificationKNN * |
ClassificationLinear * |
ClassificationSVM * и CompactClassificationSVM * |
ClassificationTree * и CompactClassificationTree * |
Сокращение размерности |
|
Промышленная статистика |
coxphfit * |
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения System Identification Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
C и генерация Кода С++ для следующих функций требует программного обеспечения Wavelet Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Преобразования частоты времени |
Анализ сигнала |
Анализ изображения |
Denoising |
|
Ортогональные и биоортогональные наборы фильтров |
C и генерация Кода С++ для следующих функций и Системных объектов требует программного обеспечения WLAN Toolbox™.
Звездочка (*) указывает, что страница с описанием имеет указания и ограничения по применению для генерации кода C/C++.
Моделирование MAC |
Моделирование PHY |
Передача сигнала |
Прием сигнала |
Канал распространения |
Функциональность Тулбокса WLAN с блоком MATLAB function не поддержана.