矩阵开方sqrt()和sqrtm()的区别

要分清这两个函数的区别我们首先看乘方的区别。在Matlab中运行下列语句。

“两个大于号”后面是需要在Matlab中输入的命令,其他的是Matlab中的结果输出。

>> A=[1,2;3,4]
A =
     1     2
     3     4
>> R1=A*A
R1 =
     7    10
    15    22
>> R2=A^2
R2 =
     7    10
    15    22
>> R3=A.*A
R3 =
     1     4
     9    16
>> R4=A.^2
R4 =
     1     4
     9    16

这几句清晰地解释了矩阵乘法与矩阵乘方的关系、矩阵点乘(元素对元素)与矩阵点乘方的关系。下面我们来看开方。

先生出一个方便做开方运算的矩阵

>> B=A'*A
B =
    10    14
    14    20
我们看sqrt()与矩阵点乘(点乘方)之间的关系:
>> C=sqrt(B)
C =
       3.1623       3.7417
       3.7417       4.4721
>> R5=C.*C
R5 =
           10           14
           14           20
>> R6=C.^2
R6 =
           10           14
           14           20

即sqrt()得到的结果与点乘有关。

与矩阵乘法(乘方)有关的命令是sqrtm().

>> D=sqrtm(B)
D =
        2.058        2.401
        2.401        3.773
>> D*D
ans =
           10           14
           14           20
>> D^2
ans =
           10           14
           14           20

接下来讲的就是^.5, .^.5 与sqrt(),sqrtm()的关系了。他们的对应关系很简单,看下列代码就明白了。

>> sqrt(C)
ans =
       1.7783       1.9343
       1.9343       2.1147
>> C.^.5
ans =
       1.7783       1.9343
       1.9343       2.1147
>> sqrtm(C)
ans =
        1.222       1.2919
       1.2919       1.6743
>> C^.5
ans =
        1.222       1.2919
       1.2919       1.6743
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值