Создайте функциональный заменяющий объект настройки
q = coder.approximation(function_name)
q = coder.approximation('Function',function_name,Name,Value)
создает функциональный заменяющий объект настройки для использования во время преобразования фиксированной точки или генерации кода. Объект настройки задает, как создать приближение интерполяционной таблицы для функции MATLAB®, заданной q
= coder.approximation(function_name
)function_name
. Чтобы сопоставить это приближение с объектом coder.FixptConfig
для использования с функцией thecodegen
, используйте метод объекта addApproximation
настройки coder.FixptConfig
.
Используйте этот синтаксис только для функций, которые coder.approximation
может заменить автоматически. Эти функции перечислены в описании аргумента function_name
.
log
на интерполяционную таблицу по умолчаниюСоздайте функциональный заменяющий объект настройки использование настроек по умолчанию. Получившаяся интерполяционная таблица в сгенерированном коде использует 1 000 точек.
logAppx = coder.approximation('log');
log
на универсальную интерполяционную таблицуСоздайте функциональный заменяющий объект настройки. Задайте входной диапазон и префикс, чтобы добавить к заменяющему имени функции. Получившаяся интерполяционная таблица в сгенерированном коде использует 1 000 точек.
logAppx = coder.approximation('Function','log','InputRange',[0.1,1000],... 'FunctionNamePrefix','log_replace_');
log
на оптимизированную интерполяционную таблицуСоздайте функциональный заменяющий объект настройки использование опции 'OptimizeLUTSize'
, чтобы задать, чтобы заменить функцию log
на оптимизированную интерполяционную таблицу. Получившаяся интерполяционная таблица в сгенерированном коде использует меньше, чем число точек по умолчанию.
logAppx = coder.approximation('Function','log','OptimizeLUTSize', true,... 'InputRange',[0.1,1000],'InterpolationDegree',1,'ErrorThreshold',1e-3,... 'FunctionNamePrefix','log_optim_','OptimizeIterations',25);
Создайте функциональный заменяющий объект настройки, который задает, чтобы заменить пользовательскую функцию, saturateExp
, с оптимизированной интерполяционной таблицей.
Создайте пользовательскую функцию, saturateExp
.
saturateExp = @(x) 1/(1+exp(-x));
Создайте функциональный заменяющий объект настройки, который задает, чтобы заменить функцию saturateExp
на оптимизированную интерполяционную таблицу. Поскольку функция saturateExp
не перечислена как функция, для которой coder.approximation
может сгенерировать приближение автоматически, необходимо задать свойство CandidateFunction
.
saturateExp = @(x) 1/(1+exp(-x)); custAppx = coder.approximation('Function','saturateExp',... 'CandidateFunction', saturateExp,... 'NumberOfPoints',50,'InputRange',[0,10]);
functionName
Имя функции, чтобы заменить'acos'
| 'acosd'
| 'acosh'
| 'acoth'
| 'asin'
| 'asind'
| 'asinh'
| 'atan'
| 'atand'
| 'atanh'
| 'cos'
| 'cosd'
| 'cosh'
| 'erf '
| 'erfc'
| 'exp'
| 'log'
| 'normcdf'
| 'reallog'
| 'realsqrt'
| 'reciprocal'
| 'rsqrt'
| 'sin'
| 'sinc'
| 'sind'
| 'sinh'
| 'sqrt'
| 'tan'
| 'tand'
Имя функции, чтобы заменить, заданный как строка. Функция должна быть одной из перечисленных функций.
Пример: 'sqrt'
Типы данных: char
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Function', 'log'
'Architecture'
— Архитектура приближения интерполяционной таблицы'LookupTable'
(значение по умолчанию) | 'Flat'
Архитектура приближения интерполяционной таблицы, заданного как пара, разделенная запятой, состоящая из 'Architecture'
и строки. Используйте этот аргумент когда это необходимо, чтобы задать архитектуру для интерполяционной таблицы. Архитектура Flat
не использует интерполяцию.
Типы данных: char
'CandidateFunction'
— Указатель на функцию заменяющей функцииУказатель на функцию заменяющей функции, заданной как пара, разделенная запятой, состоящая из 'CandidateFunction'
и указателя на функцию или строки, относящейся к указателю на функцию. Используйте этот аргумент, когда функция, которую вы хотите заменить, не перечислена под function_name
. Задайте указатель на функцию или строку, относящуюся к указателю на функцию функции, которую вы хотите заменить. Можно задать функцию в файле или как анонимная функция.
Если вы не задаете функцию кандидата, то функция, вы приняли решение заменить использование свойства Function
, установлена как CandidateFunction
.
Пример: 'CandidateFunction', @(x) (1./(1+x))
Типы данных: function_handle
| char
'ErrorThreshold'
— Значение порога ошибок раньше вычисляло оптимальный размер интерполяционной таблицыЗначение порога ошибок раньше вычисляло оптимальный размер интерполяционной таблицы, заданный как пара, разделенная запятой, состоящая из 'ErrorThreshold'
и неотрицательного скаляра. Если 'OptimizeLUTSize'
является true
, этот аргумент требуется.
функция
Имя функции, чтобы заменить на приближение интерполяционной таблицыfunction_name
Имя функции, чтобы заменить на приближение интерполяционной таблицы, заданное как пара, разделенная запятой, состоящая из 'Function'
и строки. Функция должна быть непрерывной и не сохраняющей состояние. Если вы задаете одну из функций, которая перечислена под function_name
, процесс преобразования автоматически обеспечивает заменяющую функцию. В противном случае необходимо также задать аргумент 'CandidateFunction'
для функции, которую вы хотите заменить.
Пример: 'Function'
, 'log'
Пример: 'Function'
, 'my_log'
, 'CandidateFunction'
, @my_log
Типы данных: char
'FunctionNamePrefix'
— Префикс для сгенерированных имен функций фиксированной точкиПрефикс для сгенерированных имен функций фиксированной точки, заданных как пара, разделенная запятой, состоящая из 'FunctionNamePrefix'
и строки. Имя сгенерированной функции состоит из этого префикса, сопровождаемого исходным именем функции MATLAB.
Пример: ‘log_replace _’
'InputRange'
— Передвиньтесь, по которому можно заменить функцию[ ]
(значение по умолчанию) | 2x1 вектор - строка | 2xN матрица Передвиньтесь, по которому можно заменить функцию, заданную как пара, разделенная запятой, состоящая из 'InputRange'
и 2 1 вектора - строки или 2 N матрицей.
Пример: [-1 1]
'InterpolationDegree'
— Степень интерполяции1
(значение по умолчанию) | 0
| 2
| 3
Степень интерполяции, заданная как пара, разделенная запятой, состоящая из 'InterpolationDegree'
and1
(линейный), 0
(ни один), (квадратичный) 2
, или (кубический) 3
.
'NumberOfPoints'
— Число точек в интерполяционной таблице1000
(значение по умолчанию) | положительное целое числоЧисло точек в интерполяционной таблице, заданной как пара, разделенная запятой, состоящая из 'NumberOfPoints'
и положительного целого числа.
'OptimizeIterations'
— Количество итерацийКоличество итераций, чтобы запуститься при оптимизации размера интерполяционной таблицы, заданной как пара, разделенная запятой, состоящая из 'OptimizeIterations'
и положительного целого числа.
'OptimizeLUTSize'
— Оптимизируйте размер интерполяционной таблицыfalse
(значение по умолчанию) | true
Оптимизируйте размер интерполяционной таблицы, заданный как пара, разделенная запятой, состоящая из 'OptimizeLUTSize'
и логического значения. Установка это свойство к true
генерирует оптимальную областью интерполяционную таблицу, то есть, интерполяционную таблицу с минимальным возможным числом точек. Эта интерполяционная таблица оптимизирована для размера, но не может быть эффективной скоростью.
'PipelinedArchitecture'
— Опция, чтобы позволить конвейерно обработатьfalse
(значение по умолчанию) | true
Опция, чтобы позволить конвейерно обработать, заданный как пара, разделенная запятой, состоящая из 'PipelinedArchitecture'
и логического значения.
q
Функциональный заменяющий объект настройки, возвращенный как coder.mathfcngenerator.LookupTable
или объект настройки coder.mathfcngenerator.Flat
coder.mathfcngenerator.LookupTable
возражает | объект настройки coder.mathfcngenerator.Flat
Функциональный заменяющий объект настройки. Используйте метод объекта addApproximation
настройки coder.FixptConfig
, чтобы сопоставить этот объект настройки с объектом coder.FixptConfig
. Затем используйте функцию codegen
опция -float2fixed
с coder.FixptConfig
, чтобы преобразовать код MATLAB с плавающей точкой в фиксированную точку.
Свойство | Значение по умолчанию |
---|---|
|
|
|
|
|
|
|
|
| 1000 |
| 1 |
| 0.001 |
|
|
| 25 |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.