Понятие о многомерных массивах. Применение оператора в многомерных массивах.
В этом уроке мы коснемся вопросов, связанных с более сложными типами данных, к которым относятся многомерные массивы.
В MATLAB двумерный массив является частным случаем многомерного массива. Многомерные массивы характеризуются размерностью более двух. Таким массивам можно дать наглядную интерпретацию. Так, матрицу (двумерный массив) можно записать на одном листе бумаги в виде строк и столбцов, состоящих из элементов матрицы. Тогда блокнот с такими листками можно считать трехмерным массивом, полку в шкафу с блокнотами – четырехмерным массивом, шкаф со множеством полок – пятимерным массивом и т. д. В этой книге практически нигде, кроме этого раздела, мы не будем иметь дело с массивами, размерность которых выше двух, но знать о возможностях MATLAB в части задания и применения многомерных массивов все же полезно.
В нашей литературе понятия "размер" и "размерность" массивов являются почти синонимами. Однако они имеют явно разный смысл в данной книге, как и в документации и литературе по системе MATLAB. Под размерностью массивов понимается число измерений в пространственном представлении массивов, а под размером – число строк и столбцов (mxn) в каждой размерности массива.
Применение оператора: в многомерных массивах
При обычном задании массивов (с помощью символа точки с запятой ";") число рядов (строк) массива получается на 1 больше, чем число символов ":", но массив остается двумерным. Оператор ":" (двоеточие) позволяет легко выполнять операции по увеличению размерности массивов. Приведем пример формирования трехмерного массива путем добавления новой страницы. Пусть у нас задан исходный двумерный массив М размером 3x3:
>> M=[1 2 3; 4 5 6; 7 8 9] M =1 2 34 5 67 8 9Для добавления новой страницы с тем же размером можно расширить М следующим образом:
>> M(:.:.2)=[10 11 12; 13 14 15; 16 17 18] M(:.:.1) =1 2 34 5 67 8 9M(:.:.2) =10 11 1213 14 1516 17 18Посмотрим, что теперь содержит массив М при явном его указании:
>> M M(:,:.1)=1 2 34 5 67 8 9M(:.:.2) =10 11 1213 14 1516 17 18Как можно заметить, числа в выражениях М(:.:, 1) и М(:,:,2) означают номер страницы.
