FunctionApproximation.compressLookupTables

Сжатие всех блоков интерполяционной таблицы в системе

Описание

пример

CompressionResult = FunctionApproximation.compressLookupTables(system) сжимает все блоки n-D Lookup Table в указанной системе. Сжатые блоки Lookup Table выводят те же числовые результаты, что и исходные блоки Lookup Table в границах точек останова.

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

пример

CompressionResult = FunctionApproximation.compressLookupTables(system, Name,Value) сжимает все блоки n-D Lookup Table в указанной системе с дополнительными свойствами, заданными аргументами в виде пар имен и значений.

Примеры

свернуть все

В этом примере показано, как сжать все блоки интерполяционной таблицы в системе.

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

system = 'sldemo_fuelsys';
open_system(system)

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

compressionResult = FunctionApproximation.compressLookupTables(system)
- Found 5 supported lookup tables
- Percent reduction in memory for compressed solution
	-  2.37% for sldemo_fuelsys/fuel_rate_control/airflow_calc/Pumping Constant
	-  2.37% for sldemo_fuelsys/fuel_rate_control/control_logic/Throttle.throttle_estimate/Throttle Estimation
	-  3.55% for sldemo_fuelsys/fuel_rate_control/control_logic/Speed.speed_estimate/Speed Estimation
	-  6.38% for sldemo_fuelsys/fuel_rate_control/control_logic/Pressure.map_estimate/Pressure Estimation
	-  9.38% for sldemo_fuelsys/fuel_rate_control/airflow_calc/Ramp Rate Ki

compressionResult = 

  LUTCompressionResult with properties:

                  MemoryUnits: bytes
             MemoryUsageTable: [5x5 table]
                 NumLUTsFound: 5
              NumImprovements: 5
              TotalMemoryUsed: 6024
           TotalMemoryUsedNew: 5796
           TotalMemorySavings: 228
    TotalMemorySavingsPercent: 3.7849
                          SUD: 'sldemo_fuelsys'
                  WordLengths: [8 16 32]
                  FindOptions: [1x1 Simulink.internal.FindOptions]
                      Display: 1

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

replace(compressionResult);

Можно вернуть интерполяционные таблицы в их исходное состояние с помощью revert функция.

revert(compressionResult);

Входные параметры

свернуть все

Имя модели или подсистемы, в которой можно сжать все блоки n-D Lookup Table, заданное как вектор символов.

Пример: compressionResult = FunctionApproximation.compressLookupTables('sldemo_fuelsys');

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

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: CompressionResult = FunctionApproximation.compressLookupTables('sldemo_fuelsys', 'WordLengths', [8,16,32])

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

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

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

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

Simulink.FindOptions объект, задающий опции для поиска интерполяционных таблиц в системе.

Выходные аргументы

свернуть все

Объект результата сжатия, созданный во время сжатия блоков Lookup Table в модели, возвращенный как LUTCompressionResult объект.

См. также

Классы

Функции

Введенный в R2020a