Возвращаемая интерполированная матрица для заданных входов
Аэрокосмический блок/GNC/Контроль

Блок матрицы Интерполяции (x, y, z) интерполирует трехмерный массив матриц.
Этот трехмерный случай предполагает, что матрица определяется как функция трех независимых переменных:
x = [x 1 x 2 x 3 ... x я x i + 1... x n]
y = [y 1 y 2 y 3 ... y j y j + 1... y м]
z = [z 1 z 2 z 3 ... z k z k + 1... z p]
Для заданных значений x, y и z интерполируются восемь матриц. Затем для
x я < x < x i + 1
y j < y < y j + 1
z k < z < z k + 1
выходная матрица задается
где три интерполяционные дроби обозначаются
yj) λ z = (z − zk )/( zk + 1 − zk)
В трёхмерном случае интерполяция выполняется сначала на x, затем y, и, наконец, z.
Матрица, подлежащая интерполяции, должна быть пятимерной, причем первые два измерения соответствуют матрице при каждом значении x, y и z. Например, если имеется восемь матриц A, B, C, D, E, F, G и H, определенных при следующих значениях x, y и z, то соответствующая входная матрица задается как
(x = 0.0,y = 1.0,z = 0.1)
|
matrix(:,:,1,1,1) = A;
|
(x = 0.0,y = 1.0,z = 0.5)
|
matrix(:,:,1,1,2) = B;
|
(x = 0.0,y = 3.0,z = 0.1)
|
matrix(:,:,1,2,1) = C;
|
(x = 0.0,y = 3.0,z = 0.5)
|
matrix(:,:,1,2,2) = D;
|
(x = 1.0,y = 1.0,z = 0.1)
|
matrix(:,:,2,1,1) = E;
|
(x = 1.0,y = 1.0,z = 0.5)
|
matrix(:,:,2,1,2) = F;
|
(x = 1.0,y = 3.0,z = 0.1)
|
matrix(:,:,2,2,1) = G;
|
(x = 1.0,y = 3.0,z = 0.5)
|
matrix(:,:,2,2,2) = H;
|
Этот блок должен управляться из блока Prelookup.
3D Контроллер [A (v), B (v), C (v), D (v)] | 3D Форма наблюдателя [A v), B v), C v), F v), H v)] | 3D кондиционированные [A (v), B (v), C (v), D (v)] | Матрица интерполяции (x) | Матрица интерполяции (x, y) | Предварительный поиск