Код можно заменить из кода MATLAB

Код, что замены генератора кода зависят от заменяющей библиотеки кода (CRL), которую вы используете. По умолчанию генератор кода не применяет заменяющую библиотеку кода. Ваш выбор библиотек зависит от лицензирования продукта и есть ли у вас доступ к пользовательским библиотекам.

Математические функции

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

ФункцияПоддержка типов данныхСкаляр, вектор, матричная поддержкаДействительная, комплексная поддержка
abs1Плавающая точкаСкалярДействительный
acosПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
acosdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acotПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acotdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acothПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acscПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acscdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
acschПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
asecПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
asecdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
asechПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
asinПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
asindПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
atanПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
atan2Плавающая точкаСкаляр
Вектор
Матрица
Действительный
atan2dПлавающая точкаСкаляр
Вектор
Матрица
Действительный
atandПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cosПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
ceil
  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

cosdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
coshПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
cotПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cotdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cothПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cscПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cscdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
cschПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
expПлавающая точкаСкалярДействительный
fixПлавающая точкаСкалярДействительный
floor
  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

  • С плавающей точкой

  • Скаляр

hypotПлавающая точкаСкаляр
Вектор
Матрица
Действительный
ldexpПлавающая точкаСкалярДействительный
logПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
log10Плавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
log2Плавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
maxЦелое число
Плавающая точка
СкалярДействительный
minЦелое число
Плавающая точка
СкалярДействительный
powПлавающая точкаСкалярДействительный
remПлавающая точкаСкалярДействительный
roundПлавающая точкаСкалярДействительный
secПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
secdПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
sechПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
signПлавающая точкаСкалярДействительный
sinПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
sindПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
sinhПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
sqrtПлавающая точкаСкалярДействительный
tanПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход
tandПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
tanhПлавающая точкаСкаляр
Вектор
Матрица
Действительный
Комплекс
Комплексный вход/комплексный выход
Действительный вход/комплексный выход

1 Переносятся на целочисленном переполнении только

Функции памяти

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

ФункцияПоддержка типов данныхСкаляр, вектор, матричная поддержкаДействительная, комплексная поддержка
memcmpПустой указатель (void*)Скаляр
Вектор
Матрица
Действительный
Комплекс
memcpyПустой указатель (void*)Скаляр
Вектор
Матрица
Действительный
Комплекс
memsetПустой указатель (void*)Скаляр
Вектор
Матрица
Действительный
Комплекс
memset2zeroПустой указатель (void*)Скаляр
Вектор
Матрица
Действительный
Комплекс

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

Операторы

При генерации кода C/C++ из кода MATLAB, в зависимости от заменяющих библиотек кода, доступных в среде разработки, можно сконфигурировать генератор кода, чтобы заменить экземпляры следующих операторов со специализированными реализациями.

Смешанная поддержка типов данных указывает, что можно задать различные типы данных различных входных параметров.

ОператорКлючПоддержка типов данныхСкаляр, вектор, матричная поддержкаДействительная, комплексная поддержка
Сложение (+)1RTW_OP_ADDЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Вычитание (-)1RTW_OP_MINUSЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Умножение (*)2RTW_OP_MULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Деление (/)RTW_OP_DIVЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Действительный
Комплекс
Преобразование типа данных (брошено)RTW_OP_CASTЦелое число
Плавание point3
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Сдвиг оставлен (<<)RTW_OP_SLЦелое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Переключите правильную арифметику (>>)4RTW_OP_SRA
Целое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Логическое право сдвига (>>)RTW_OP_SRL Целое число
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Поэлементное умножение матриц (.*)5RTW_OP_ELEM_MULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Действительный
Комплекс
Комплексное спряжениеRTW_OP_CONJUGATEЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Перемещение (.')RTW_OP_TRANSЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Действительный
Комплекс
Эрмитово (комплексно-сопряженное) перемещение (')RTW_OP_HERMITIANЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Действительный
Комплекс
Умножение с transposition2RTW_OP_TRMULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Действительный
Комплекс
Умножение с Эрмитовым transposition2RTW_OP_HMMULЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Вектор
Матрица
Действительный
Комплекс
Умножение сопровождается арифметикой права сдвига (u1*u2>>u3)6RTW_OP_MUL_SRAЦелое число
Фиксированная точка
СкалярДействительный
Умножение сопровождается делением (u1*u2/u3)7RTW_OP_MULDIVЦелое число
Фиксированная точка
СкалярДействительный
Больше, чем (>)RTW_OP_GREATER_
ЧЕМ
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Больше, чем или равный (>=)RTW_OP_GREATER_
THAN_OR_EQUAL
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Меньше, чем (<)RTW_OP_LESS_THANЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Меньше чем или равный (<=)RTW_OP_LESS_THAN_
OR_EUQAL
Целое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Равный (==)RTW_OP_EUQALЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс
Не равный (!=)RTW_OP_NOT_EUQALЦелое число
Плавающая точка
Фиксированная точка
Смешанный
Скаляр
Вектор
Матрица
Действительный
Комплекс

1 Смотрите Замену Оператора сложения и Оператора вычитания Кода для получения дополнительной информации чтобы рассмотреть при определении отображений для замен сложения и вычитания кода.

2 Может сопоставить с функциями умножения базовых подпрограмм линейной алгебры (BLAS).

3 Масштабированных плавающих точки не поддержаны.

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

5 Использования умножение (*) оператор (RTW_OP_MUL) для скалярного умножения.

6 Требует скаляра, действительного, или типы данных с фиксированной точкой с нулевым смещением; выведите тип операции умножения, чтобы разместить все возможные выходные значения; операнд сдвига является беззнаковым целым; и сетевой наклон равен 1 (U1_slope * U2_slope == Mul_output_slope и Mul_output_slope == output_slope_of_shift_operation).

7 Требует скаляра, действительного, или типы данных с фиксированной точкой с нулевым смещением; выведите тип операции умножения, чтобы разместить все возможные выходные значения; и сетевой наклон равен 1 (U1_slope * U2_slope == Mul_output_slope == U3_slope * Div_output_slope).

Похожие темы