Matlab学习笔记(2)矩阵与魔方

来源:互联网 发布:cntv中国网络电视台apk 编辑:程序博客网 时间:2024/05/17 23:51

一、输入矩阵

开始学习Matlab最好就是先知道如何输入矩阵

你可以依照以下几种方法进行输入矩阵:

       1、直接输入矩阵的显式列表

       2、从外部数据文件导入矩阵

       3、利用方法来生成矩阵

       4、利用M文件中自己写的方法来生成矩阵

输入矩阵,你必须遵守以下几条规则:

       1、用空格或者逗号把同一行的数据分开

       2、用分号把每一行的最后数据标示出来

       3、用[ ]把整个数据围起来

比如

       A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]

Matlab会立即显示你刚输入的矩阵如下:

     A =
          16     3     2    13
           5    10    11     8
           9     6     7    12
           4    15    14     1

这其实就是一个魔方。

 

二、求和、转置矩阵、对角矩阵

你可能意识到了这个魔方的特征,那就是假如你对任意一行或一列、或者任意一个对角数据求和,其结果都是一样的。让我们用Matlab来表示这些。你所用到的第一个表达式就是

sum(A)

Matlab回应为:

ans=

      34   34   34   34

当我们没有指定输出变量时,Matlab就会使用ans(answer的缩写)变量来表示运算的结果。您计算了每一列向量的和值均为34。

那么行向量的和值呢?

Matlab优先对列向量进行运算。要求得行向量的值最简单的方法就是将原矩阵进行转置运算,计算其行向量的和值,再将结果进行转置。我们一般用省略号或一个引用 ' 来实现转置操作。

所以:

      A‘

将会生成:

            ans =
                   16     5     9     4
                    3    10     6    15
                    2    11     7    14
                    13     8    12     1

同时

      sum(A')'

将生成一个列向量来表示每个行向量的和值

       ans =
                  34
                  34

                  34

                  34

主对角线的数据和值主要用sum和diag方法来实现

     diag(A)

生成:

     ans =
           16
           10
            7
            1

同时

     sum(diag(A))

生成:

      ans=34

另外一对角数据,也称为反对角线。由于在数学领域并不重要,所以Matlab没有提供相关的实现方法。但在图形设计中的一个方法 fliplr可以把一个矩阵从左边反转到右边。

所以:

        sum(diag(fliplr(A)))

将生成:

         ans=34

 

通过本章学习到:

      一、矩阵的生成

     二、矩阵的求和方法sum(A)

     三、矩阵的转置:A'

     四、察看矩阵的对角元素:diag(A)

     五、察看矩阵的反对角元素fliplr(A)

 
原创粉丝点击