Функции формирования матриц. Поворот матриц.
Для создания матриц, состоящих из других матриц, используются следующие функции:
- repmat (А, m, n) – возвращает матрицу В, состоящую из mxn копий матрицы А (т. е. в матрице mxn каждый элемент заменяется на копию матрицы А);
- repmat(А,n) – формирует матрицу, состоящую из nхn копий матрицы А;
- repmat(A,[m n]) – дает тот же результат, что и repmat(A,m,n);
- repmat(A,[m n р…]) – возвращает многомерный массив (mxnxp…), состоящий из копий многомерного массива или матрицы А;
- repmat (A, m, n) – когда А – скаляр, возвращает матрицу размера mxn со значениями элементов, заданных А, Это делается намного быстрее, чем A*ones(m,n).
- reshape(A,m,n) – возвращает матрицу В размерностью mxn, сформированную из А путем последовательной выборки по столбцам. Если число элементов А не равно mxn, то выдается сообщение об ошибке;
- reshape(A,m,n,p,…) или В = reshape(A.[m n р…]) – возвращает N-мерный массив с элементами из А, но имеющий размер mxnxp…. Произведение mxnxp… должно быть равно значению prod(size(A)).
- reshape(A, slz) – возвращает N-мерный массив с элементами из А, но перестроенный к размеру, заданному с помощью вектора 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
5
2
4
2
2
3
4
5
Поворот матриц
Следующая функция обеспечивает поворот матрицы (по расположению элементов):
- rot90(A) – осуществляет поворот матрицы А на 90° против часовой стрелки;
- rot90(A,k) – осуществляет поворот матрицы А на величину 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