Добавьте свойства алгоритма для заменяющей записи таблицы кода
addAlgorithmProperty(hEntry
, name-value
)
hEntry
Обработайте к заменяющей записи таблицы кода, ранее возвращенной путем инстанцирования заменяющего класса записи кода, такого как
или hEntry
= RTW.TflCFunctionEntry
.hEntry
= RTW.TflCOperationEntry
name-value
Свойство Algorithm, заданное как разделенная запятой пара, состоящая из имени свойства алгоритма и одного или нескольких значений алгоритма. Задайте несколько значений как массив ячеек из символьных векторов.
Имя | Значения |
---|---|
'BPPower2Spacing' | 'off' |'on' |
'ExtrapMethod' | 'Clip' | 'Linear' |
'IndexSearchMethod' | 'Evenly spaced points' | 'Linear search' | 'Binary search' |
'InterpMethod' |
'Linear point-slope' | 'Linear Lagrange' | 'Flat' |'Nearest' |
'RemoveProtectionInput' | 'off' | 'on' |
'RndMeth' | 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
'SaturateOnIntegerOverflow' | 'off' | 'on' |
'SupportTunableTableSize' | 'off' | 'on' |
'UseLastTableValue' | 'off' | 'on' |
'UseRowMajorAlgorithm' | 'off' | 'on' |
addAlgorithmProperty
функция добавляет настройки свойства алгоритма в концептуальное представление заменяющей записи таблицы кода. Например, используйте эту функцию, чтобы настроить алгоритмы, примененные функциями интерполяционной таблицы.
В следующем примере, addAlgorithmProperty
функция конфигурирует генератор кода, чтобы применить следующие методы когда заменяющий код для lookup1D
функция:
Отсеките экстраполяцию
Линейная интерполяция
Бинарный или линейный поиск по индексу
hLib = RTW.TflTable; hEnt = RTW.TflCFunctionEntry; hEnt.setTflCFunctionEntryParameters( ... 'Key', 'lookup1D', ... 'Priority', 100, ... 'ImplementationName', 'my_Lookup1D_Repl', ... 'ImplementationHeaderFile', 'my_Lookup1D.h', ... 'ImplementationSourceFile', 'my_Lookup1D.c', ... 'GenCallback', 'RTW.copyFileToBuildDir'); arg = hEnt.getTflArgFromString('y1','double'); arg.IOType = 'RTW_IO_OUTPUT'; hEnt.addConceptualArg(arg); arg = hEnt.getTflArgFromString('u1','double'); hEnt.addConceptualArg(arg); arg = RTW.TflArgMatrix('u2','RTW_IO_INPUT','double'); arg.DimRange = [0 0; Inf Inf]; hEnt.addConceptualArg(arg); arg = RTW.TflArgMatrix('u3', 'RTW_IO_INPUT', 'double'); arg.DimRange = [0 0; Inf Inf]; hEnt.addConceptualArg(arg); hEnt.addAlgorithmProperty('ExtrapMethod', 'Clip'); hEnt.addAlgorithmProperty('InterpMethod', 'Linear point-slope'); hEnt.addAlgorithmProperty('IndexSearchMethod', 'Linear search');