![]() |
![]() |
![]() |
Объединение малых матриц в большую
Описанный способ задания матриц позволяет выполнить операцию
конкатенации
—
объединения малых матриц в большую. Например, создадим вначале магическую
матрицу размера 3x3:
» A=magic(3)
А=
|
||||
|
8
|
1
|
6
|
|
|
3
|
5
|
7
|
|
|
4
|
9
|
2
|
|
|
Теперь можно
построить матрицу, содержащую четыре матрицы:
» В-[А А+16:А+32 А+16]
В =
|
8
|
1
|
6
|
24
|
17
|
22
|
|
|
3
|
5
|
7
|
19
|
21
|
23
|
|
|
4
|
9
|
2
|
20
|
25
|
18
|
|
|
40
|
33
|
38
|
24
|
17
|
22
|
|
|
35
|
37
|
39
|
19
|
21
|
23
|
|
|
36
|
41
|
34
|
20
|
25
|
18
|
|
Полученная
матрица имеет уже размер 6x6. Вычислим сумму ее столбцов:
» sum(B)
ans
=
126 126 126
126 126 126
Любопытно, что она одинакова для всех столбцов. А для вычисления суммы стро!
используем команду
» sum(B.')
ans =
78 78 78 174
174 174
Здесь запись В.' означает транспонирование матрицы В, т. е. замену строк столб
цами. На этот раз сумма оказалась разной. Это отвергает изначально возникши
предположение, что матрица В тоже является магической. Для истинно магической
матрицы суммы столбцов и строк должны быть одинаковыми:
» D=magic(6)
D=
|
35
|
1
|
6
|
26
|
19
|
24
|
|
|
3
|
32
|
7
|
21
|
23
|
25
|
|
|
31
|
9
|
2
|
22
|
27
|
20
|
|
|
8
|
28
|
33
|
17
|
10
|
15
|
|
|
30
|
5
|
34
|
12
|
14
|
16
|
|
|
4
|
36
|
29
|
13
|
18
|
11
|
|
|
»
sum(D)
ans=
111 111 111 111 111 111
» sum(D.')
ans=
111 111 111 111 111 111
Более того, для магической матрицы одинаковой является и сумма элементов по
основным диагоналям (главной диагонали и главной антидиагонали).
![]() |
![]() |
![]() |