Интерполируйте матрицу (x, y)

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

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

Описание

Интерполировать Матрица (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)

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