Аппроксимируйте двумерную функцию
Интерполяционные таблицы (до R2010b)
Примечание
Блок Lookup Table (2D) является устаревшим. Этот блок был удален из библиотеки Lookup Tables в R2011a и заменен 2D версией блока n-D Lookup Table. Однако существующие модели, которые содержат блок Lookup Table (2D), продолжают работать на обратную совместимость.
Используйте блок 2-D Lookup Table в новых моделях. Рассмотреть использование upgradeadvisor заменять Интерполяционную таблицу (2D) на двумерную интерполяционную таблицу в существующих моделях. Среди других улучшений блок двумерной интерполяционной таблицы поддерживает следующие функции, которые не делает блок Lookup Table (2D):
Спецификация типов данных параметров, отличающихся от ввода или вывода, сигнализирует о типах
Уменьшаемое использование памяти и более быстрое выполнение кода для равномерно распределенных точек останова, которые являются ненастраиваемыми
Типы данных с фиксированной точкой с размерами слова до 128 битов
Спецификация метода поиска по индексу
Спецификация диагностики для входных параметров из области значений
Для получения дополнительной информации смотрите Блоки Интерполяционной таблицы Обновления к Новым Версиям.
Блок Lookup Table (2-D) вычисляет приближение к функциональному z = f(x,y) учитывая xYZ точки данных. Первый входной порт сопоставляет с первой табличной размерностью, x, и второй входной порт сопоставляет со второй табличной размерностью, y.
Вы задаете интерполяционную таблицу путем определения:
Row index input values как 1-by-m вектор из x точки данных
Column index input values как 1-by-n вектор из y точки данных
Table data как m-by-n матрица z точки данных
Чтобы избежать ошибок насыщения параметра, скрипт автоматического масштабирования Fixed-Point Designer™ использует специальное правило для блока Lookup Table (2-D). autofixexp (Fixed-Point Designer) изменяет масштабирование при помощи справочных значений параметра Table data в дополнение к регистрируемым минимальным и максимальным значениям симуляции. Эти табличные значения данных преобразованы в заданный тип выходных данных. Это действие предотвращает насыщение данных к различным значениям.
Оба векторы строки и столбца должны монотонно увеличиваться. Другими словами, значение следующего элемента в векторе больше или равно значению предыдущего элемента. Однако эти векторы должны строго монотонно увеличиваться (значение следующего элемента в векторе больше значения предыдущего элемента) в следующих случаях:
Типы входных и выходных данных являются оба фиксированной точкой.
Типы входных и выходных данных отличаются.
Методом поиска не является Interpolation-Extrapolation.
Матрица выходных значений является комплексной.
Минимум, максимум и логгирование переполнения включены.
Совет
Равномерно распределенные точки останова могут сделать сгенерированный код без делений. Для получения дополнительной информации смотрите fixpt_evenspace_cleanup и Идентифицируйте сомнительные операции фиксированной точки (Embedded Coder).
Для получения дополнительной информации о требованиях монотонности, смотрите Характеристики Данных об Интерполяционной таблице. Для получения информации о составлении таблицы с переходами шага смотрите Представление Разрывов в Интерполяционных таблицах.
Блок использует входные значения, чтобы сгенерировать выход с помощью метода, который вы выбираете для параметра Lookup method:
| Метод поиска | Действие блоком |
|---|---|
Interpolation-Extrapolation (значение по умолчанию) | Выполняет линейную интерполяцию и экстраполяцию входных параметров.
Примечание Если вы выбираете этот метод поиска, генерация кода может произойти для этого блока, только если сигналы ввода и вывода имеют тот же тип данных с плавающей точкой. |
Interpolation-Use End Values | Выполняет линейную интерполяцию, но не экстраполирует вне конечных точек |
Use Input Nearest | Находит элементы в |
Use Input Below | Находит элементы в |
Use Input Above | Находит элементы в |
Примечание
Use Input Nearest, Use Input Below, и Use Input Above методы выполняют то же действие когда вход x совпадает со значением точки останова.
Блок Lookup Table (2-D) поддерживает следующие типы данных:
Плавающая точка
Встроенное целое число
Фиксированная точка
Boolean
Для получения дополнительной информации смотрите Типы данных, Поддержанные Simulink.
Задайте значения строки для таблицы как вектор. Векторные значения должны увеличиться монотонно.
Параметр Row index input values преобразован оффлайн в тип данных соответствующего входного сигнала с помощью раунда-к-самому-близкому и насыщения.
Задайте значения столбцов для таблицы как вектор. Векторные значения должны увеличиться монотонно.
Параметр Column index input values преобразован оффлайн в тип данных соответствующего входного сигнала с помощью раунда-к-самому-близкому и насыщения.
Нажмите кнопку Edit, чтобы открыть Редактор Интерполяционной таблицы (см. Интерполяционные таблицы Редактирования).
Задайте таблицу выходных значений как матрица. Матричный размер должен совпадать с размерностями параметров Column и Row.
Параметр Table data преобразован оффлайн в Output data type с помощью раунда-к-самому-близкому и насыщения.
Задайте метод поиска. Смотрите, Как Блок Генерирует Выход для обсуждения опций для этого параметра.
Задайте временной интервал между выборками. Чтобы наследовать шаг расчета, установите этот параметр на -1. См. Настройку времени выборки для получения дополнительной информации.
Задайте минимальное значение, которое должен вывести блок. Значение по умолчанию, [], эквивалентно -Inf. Simulink® программное обеспечение использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала),
Автоматическое масштабирование типов данных с фиксированной точкой
Задайте максимальное значение, которое должен вывести блок. Значение по умолчанию, [], эквивалентно Inf. Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала),
Автоматическое масштабирование типов данных с фиксированной точкой
Выберите, чтобы потребовать, чтобы все входные параметры имели совпадающий тип данных.
Задайте тип выходных данных. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via back propagation
Имя встроенного типа данных, например, single
Имя объекта типа данных, например, Simulink.NumericType объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant
, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Output data type.
Смотрите Типы данных Управления Сигналов для получения дополнительной информации.
Выберите, чтобы заблокировать установку типа выходных данных этого блока против изменений Fixed-Point Tool и Советником Фиксированной точки. Для получения дополнительной информации смотрите Fixed-Point Tool (Fixed-Point Designer).
Выберите округляющийся режим для вычислений интерполяционной таблицы фиксированной точки, которые происходят в процессе моделирования или подписание кода, сгенерированного из модели. Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).
Параметры блоков, такие как Table data всегда вокруг к самому близкому представимому целочисленному значению. Чтобы управлять округлением параметров блоков, введите выражение с помощью MATLAB® функция округления в поле редактирования параметра на диалоговом окне блока.
Выбор, чтобы иметь переполнение насыщает. В противном случае они переносятся.
Когда вы устанавливаете этот флажок, насыщение применяется к каждой внутренней операции на блоке, не только выходу или результату. В общем случае процесс генерации кода может обнаружить, когда переполнение не возможно, в этом случае, никакой код насыщения не необходим.
В этом примере параметры блоков:
Row index input values: [1 2] Column index input values: [3 4] Table data: [10 20; 30 40]
Первый рисунок показывает блок, выводящий значение на пересечении входных параметров блока та строка и столбец соответствия значения. Первый вход равняется 1, и второй вход равняется 4. Эти значения выбирают табличное значение на пересечении первой строки (значение параметров строки 1) и второй столбец (значение параметров столбца 4).

На втором рисунке первый вход 1.7, и второе 3.4. Эти значения заставляют блок интерполировать между значениями строки и столбца, как показано в таблице слева. Значение на пересечении (28) является выходным значением.

Прямое сквозное соединение | Да |
Размер шага | Заданный в параметре Sample time |
Скалярное расширение | Да, одного входа, если другой вектор |
Определенный размерность | Да |
Обнаружение пересечения нулем | Нет |