Иллюстрированный самоучитель по Matlab

         

Объединение малых матриц в большую


Описанный способ задания матриц позволяет выполнить операцию

конкатенации —

объединения малых матриц в большую. Например, создадим вначале магическую матрицу размера 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

Более того, для магической матрицы одинаковой является и сумма элементов по основным диагоналям (главной диагонали и главной антидиагонали).



Содержание раздела