exponenta event banner

Класс FuncureApproximation.Options

Пакет: Функциональная аппроксимация

Укажите дополнительные параметры для использования с FunctionApproximation.Problem объект

Описание

FunctionApproximation.Options содержит дополнительные опции для определения FunctionApproximation.Problem объект.

Строительство

options = FunctionApproximation.Options() создает FunctionApproximation.Options объект для использования в качестве входных данных FunctionApproximation.Problem объект. Выходные данные, options, использует значения свойств по умолчанию.

options = FunctionApproximation.Options(Name,Value) создает FunctionApproximation.Options объект со значениями свойств, заданными одним или несколькими Name,Value аргументы пары. Name должно отображаться внутри отдельных кавычек (''). Можно указать несколько аргументов пары имя-значение в любом порядке как Name1,Value1,...,NameN,ValueN.

Свойства

развернуть все

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

Разрешить ли обновление диаграммы модели в процессе аппроксимации, указанной как числовая или логическая 1 (true) или 0 (false). Это свойство релевантно только для FunctionApproximation.Problem объекты, определяющие блок таблицы подстановки или блок математической функции в качестве аппроксимируемого элемента.

Типы данных: logical

Является ли созданная таблица подстановки совместимой с AUTOSAR, указанной как числовая или логическая 1 (true) или 0 (false). Если для этого свойства установлено значение 1 (true), сформированная таблица подстановки является блоком «Кривая» или «Карта» из блока AUTOSAR. Если для этого свойства установлено значение 1 (true), тип данных таблицы должен быть равен типу выходных данных блока.

Установка для этого свойства значения 1 (true) извлекает лицензию AUTOSAR Blockset при использовании approximate или replaceWithApproximate методы.

Типы данных: logical

Интервал между данными точек останова, указанный как одно из следующих значений.

Спецификация точки остановаОписание
ExplicitValuesТочки останова таблицы подстановки указаны явно. Точки останова могут быть ближе друг к другу для одних входных диапазонов и дальше друг от друга в других.
EvenSpacingТочки останова таблицы подстановки расположены равномерно.
EvenPow2SpacingВ точках останова таблицы подстановки используется интервал «мощность два». Эта спецификация точки останова может похвастаться самой быстрой скоростью выполнения, потому что битовый сдвиг может заменить поиск позиции.

Дополнительные сведения о том, как спецификация точек останова может повлиять на производительность, см. в разделе Влияние интервала на скорость, ошибки и использование памяти.

Типы данных: char

Отображать ли подробные данные каждой итерации оптимизации, указанные как числовые или логические 1 (true) или 0 (false). Значение 1 (true) приводит к получению информации в окне команд при каждой итерации процесса аппроксимации. Значение 0 (false) не отображает информацию до завершения аппроксимации.

Типы данных: logical

Разрешить ли оптимизатору исследовать типы данных с полуточностью для табличных данных и точек останова, указанных как числовые или логические 1 (true) или 0 (false).

Типы данных: logical

Требуется ли генерировать аппроксимацию, оптимизированную для HDL, заданную как числовая или логическая 1 (true) или 0 (false). Значение 1 (true) приводит к тому, что аппроксимация представляет собой подсистему, состоящую из этапа предварительного подключения с последующей интерполяцией, которая функционирует как таблица поиска с явным конвейерированием для генерации эффективного кода HDL.

Для формирования аппроксимации, оптимизированной для HDL, аппроксимируемая функция должна быть одномерной и BreakpointSpecification необходимо установить значение EvenSpacing или EvenPow2Spacing.

Типы данных: logical

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

Метод интерполяцииОписание
LinearПомещает линию между соседними точками останова и возвращает точку на этой линии, соответствующую входу.
FlatВозвращает выходное значение, соответствующее значению точки останова, которое сразу же меньше входного значения. Если значение контрольной точки не находится ниже входного значения, возвращается значение контрольной точки, ближайшее к входному значению.
NearestВозвращает значение, соответствующее ближайшей к входу точке останова. Если вход равноудален от двух соседних точек останова, выбирается точка останова с более высоким индексом.
None

Создает блок таблицы прямого поиска (n-D), который выполняет поиск таблицы без интерполяции или экстраполяции.

Примечание

При формировании блока таблицы прямого поиска максимальное количество входов равно двум.

Типы данных: char

Максимальный объем памяти, используемый создаваемой таблицей подстановки, в битах, указанный как скалярное целое число. Единицы измерения опции можно изменить с помощью MemoryUnits собственность.

Типы данных: double

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

Типы данных: double

Единицы для MaxMemoryUsage свойство, указанное как 'bits', 'bytes'или один из других перечисленных параметров.

Типы данных: char

Следует ли ограничивать табличные значения квантованным выходом аппроксимируемой функции, задаваемым как числовой или логический 1 (true) или 0 (false). Задав для этого свойства значение 0 (false) и разрешая значения таблицы вне кривой, можно уменьшить объем памяти таблицы подстановки при сохранении тех же допусков ошибок или сохранить тот же объем памяти при уменьшении допусков ошибок.

Типы данных: logical

Максимальный допуск относительной разности между исходным выходным значением и выходным значением аппроксимации, определяемый как неотрицательный скаляр.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

Следует ли автоматически насыщать диапазон вывода функции до диапазона выходного типа данных, заданного как числовой или логический 1 (true) или 0 (false).

Пример: options.SaturateToOutputType = 1;

Типы данных: logical

Выполнять ли итерации оптимизации параллельно, указанные как числовые или логические 1 (true) или 0 (false). Для параллельного выполнения итераций требуется лицензия Parallel Computing Toolbox™. Если у вас нет лицензии Parallel Computing Toolbox, или если вы указали 0 (false), итерации выполняются в серийном формате.

Пример: options.UseParallel = true;

Типы данных: logical

Укажите длины слов в битах, которые могут использоваться в таблице поиска приблизительно в зависимости от предполагаемого оборудования. Например, если предполагается использовать встроенный процессор, можно ограничить типы данных в таблице подстановки собственными типами 8, 16 и 32. Длина слова должна быть от 1 до 128.

Пример: options.WordLengths = [8,16,32];

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

Копирование семантики

Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.

Ограничения

  • Объекты таблицы подстановки и объекты точек останова не поддерживаются в рабочей области маски модели.

Алгоритмы

При установке BreakpointSpecification кому 'ExplicitValues', во время процесса аппроксимации алгоритм также пытается найти решение, используя 'EvenSpacing' и 'EvenPow2Spacing'. Аналогично, при установке BreakpointSpecification кому 'EvenSpacing', алгоритм также пытается найти решение, используя 'EvenPow2Spacing'. Если свойство имеет значение 'EvenPow2Spacing'алгоритм пытается найти решение только с использованием этого интервала.

В случаях, когда BreakpointSpecification свойство имеет значение 'EvenSpacing', но InputUpperBounds или InputLowerBounds имущества FunctionApproximation.Problem объект равен диапазону InputTypes, алгоритм не пытается найти решение, используя 'EvenPow2Spacing'.

Представлен в R2018a