Interpolate Matrix(x,y)

Возвратите интерполированную матрицу для данных входных параметров

  • Библиотека:
  • Aerospace Blockset / GNC / Управление

  • Interpolate Matrix(x,y) block

Описание

Блок Interpolate Matrix(x,y) интерполирует двумерный массив матриц. В двумерных случаях интерполяция выполняется сначала на x и затем y. Для получения дополнительной информации см. Алгоритмы.

Матрица, которая будет интерполирована, должна быть четырехмерной, первые две размерности, соответствующие матрице в каждом значении x и y. Например, если у вас есть четыре матрицы A, B, C и D, заданный в     (x = 0.0,y = 1.0),     (x = 0.0,y = 3.0),     (x = 1.0,y = 1.0) и     (x = 1.0,y = 3.0), затем входной матрицей дают

matrix(:,:,1,1) = A;

matrix(:,:,1,2) = B;

matrix(:,:,2,1) = C;

matrix(:,:,2,2) = D;

Ограничения

Этот блок должен управляться от блока Prelookup.

Порты

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

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

Первый индекс интерполяции i в виде скаляра и вектора.

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

Первая часть интерполяции λ x в виде скаляра

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

Второй индекс интерполяции j в виде скаляра.

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

Вторая часть интерполяции λ y в виде скаляра.

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

Вывод

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

Интерполированная матрица в виде матрицы.

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

Параметры

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

Матрица, которая будет интерполирована с четырьмя индексами и третьими и четвертыми индексами, маркирующими значения интерполяции x и y.

Программируемое использование

Параметры блоков: matrix
Ввод: символьный вектор
Значения: матрица
Значение по умолчанию: 'matrix'

Алгоритмы

Этот двумерный случай принимает, что матрица задана в зависимости от двух независимых переменных, x = [x 1x2x3... x ixi+1... x n] и y = [y 1y2y3... y jyj+1... y m]. Для данных значений X и Y интерполированы четыре матрицы. Затем для x i < x <x i+1 и y j <y <y j+1, выходной матрицей дают

(1λy)[(1λx)M(xi,yj)+λxM(xi+1,yj)]+λy[(1λx)M(xi,yj+1)+λxM(xi+1,yj+1)]

где две части интерполяции обозначаются

λx=(xxi)/(xi+1xi)

и

λy=(yyj)/(yj+1yj)

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представлено до R2006a