И другие программы этой серии
Если A – матрица, cumsum(A) возвра
щает матрицу того же размера, что и A, содержащую суммирование с накоп
лением для каждого столбца матрицы A;
204
Операции с векторами и матрицами
Операции с матрицами
205
• cumsum(A,dim) – выполняет суммирование с накоплением элементов по
размерности, определенной скаляром dim. Например, cumsum(A,1) вы
полняет суммирование по столбцам.
Пример:
>> A=magic(4)
A=
16
2
5
11
9
7
4
14
>> B = cumsum(A)
B=
16
2
21
13
30
20
34
34
• reshape(A,siz) – возвращает N мерный массив с элементами из A, но
перестроенный к размеру, заданному с помощью вектора siz.
Пример:
>> F=[3,2,7,4;4,3,3,2;2,2,5,5]
F=
3
2
7
4
4
3
3
2
2
2
5
5
>> reshape(F,2,6)
ans =
3
2
3
7
4
2
2
3
3
10
6
15
13
8
12
1
5
4
2
5
3
13
19
34
13
21
33
34
4.2.7. Поворот матриц
Следующая функция обеспечивает поворот матрицы (по расположению эле
ментов):
• rot90(A) – осуществляет поворот матрицы A на 90° против часовой стрелки;
• rot90(A,k) – осуществляет поворот матрицы A на величину 90*k граду
сов, где k – целое число.
Пример:
>> M=[3,2,7;3,3,2;1,1,1]
M=
3
2
7
3
3
2
1
1
1
>> rot90(M)
ans =
7
2
1
2
3
1
3
3
1
4.2.6. Функции формирования матриц
Для создания матриц, состоящих из других матриц, служат следующие функции:
• repmat(A,m,n) – возвращает матрицу A, состоящую из m?n копий матрицы
A (то есть в матрице m?n каждый элемент заменяется на копию матрицы A);
• repmat(A,n) – формирует матрицу, состоящую из n?n копий матрицы A;
• repmat(A,[m n]) – дает тот же результат, что и repmat(A,m,n);
• repmat(A,[m n p…]) – возвращает многомерный массив (m?n?p…), состо
ящий из копий многомерного массива или матрицы A;
• repmat(A,m,n) – когда A – скаляр, возвращает матрицу размера m?n со
значениями элементов, заданных A. Это делается намного быстрее, чем
A*ones(m,n).
Пример:
F=
3
2
43
32
>> repmat(F,2,3)
ans =
3
2
43
32
3
2
43
32
3
43
3
43
2
32
2
32
3
43
3
43
2
32
2
32
4.2.8.