zoukankan      html  css  js  c++  java
  • matlab新手入门(二)(翻译)

    矩阵和数组

    MATLAB是“矩阵实验室”的缩写。虽然其他编程语言大多数一次使用数字,但MATLAB®主要用于整个矩阵和数组。
    所有MATLAB变量都是多维数组,无论数据类型如何。矩阵是通常用于线性代数的二维数组。


    阵列创建
    要在单个行中创建具有四个元素的数组,请使用逗号(,)或空格分隔元素。

    a = [1 2 3 4]

    返回
    a =

         1 2 3 4
    这种类型的数组是行向量。
    要创建具有多行的矩阵,请使用分号分隔行。

    a = [1 2 3; 4 5 6; 7 8 10]

    a =

         1 2 3
         4 5 6
         7 8 10
    创建矩阵的另一种方法是使用一个函数,如ones,zeros或者rand。例如,创建一个5×1列的零向量。

    z = zeros(5,1)

    z =

         0
         0
         0
         0
         0


    矩阵和数组运算
    MATLAB允许您使用单个算术运算符或函数处理矩阵中的所有值。

    a + 10

    ans =

        11 12 13
        14 15 16
        17 18 20

    sin(a)

    ans =

        0.8415 0.9093 0.1411
       -0.7568 -0.9589 -0.2794
        0.6570 0.9894 -0.5440
    要转置矩阵,请使用单引号('):

    a'

    ans =

         1 4 7
         2 5 8
         3 6 10
    您可以使用*运算符执行标准矩阵乘法,该乘法运算行和列之间的内积。例如,确认矩阵乘以其逆返回单位矩阵:

    p = a * inv(a)

    p =

        1.0000  0           -0.0000
             0     1.0000   0
             0     0            1.0000
    请注意,p不是整数值的矩阵。 MATLAB将数字存储为浮点值,算术运算对实际值与浮点数表示之间的小差异敏感。您可以使用format命令显示更多的十进制数字:

    format long
    p = a*inv(a)

    p =

       1.000000000000000             0                                                 -0.000000000000000
                       0                            1.000000000000000                   0
                       0                            0                                                  0.999999999999998
    将显示重新设置为较短的格式

    format short

    格式仅影响数字的显示,而不是MATLAB计算或保存的方式。
    要执行元素乘法而不是矩阵乘法,请使用.*运算符:

    p = a.*a

    p =

         1 4 9
        16 25 36
        49 64 100
    用于乘法,除法和幂的矩阵运算符都具有以元素方式操作的相应的数组运算符。例如,将a的每个元素提升到第三个幂:

    a.^3

    ans =

               1 8 27
              64 125 216
             343 512 1000


    级联
    级联是连接数组以制作较大的数组的过程。事实上,你通过级联其各个元素来形成第一个数组。一对方括号[]是连接运算符。

    A = [a, a]

    A =

         1 2 3 1 2 3
         4 5 6 4 5 6
         7 8 10 7 8 10
    使用逗号将数组相互连接称为“水平级联”。每个数组必须具有相同的行数。类似地,当数组具有相同数量的列时,可以使用分号垂直连接。

    A = [a; a]

    A =

         1 2 3
         4 5 6
         7 8 10
         1 2 3
         4 5 6
         7 8 10


    复数
    复数具有实部和虚部。

    sqrt(-1)

    ans =

       0.0000 + 1.0000i
    要表示复数的虚部,请使用i或j。

    c = [3+4i, 4+3j; -i, 10j]

    c =

       3.0000 + 4.0000i 4.0000 + 3.0000i
       0.0000 - 1.0000i 0.0000 + 10.0000i

  • 相关阅读:
    轻重搭配
    EF的优缺点
    使用bootstrap-select有时显示“Nothing selected”
    IIS发布 HTTP 错误 500.21
    js添加的元素无法触发click事件
    sql server查看表是否死锁
    sql server把一个库表的某个字段更新到另一张表的相同字段
    SQLSERVER排查CPU占用高的情况
    SQL server中如何按照某一字段中的分割符将记录拆成多条
    LINQ to Entities does not recognize the method 'System.DateTime AddDays(Double)' method, and this method cannot be translated into a store expression.
  • 原文地址:https://www.cnblogs.com/bxyan/p/7243151.html
Copyright © 2011-2022 走看看