funm matlab,Matlab funm 函数

匿名用户

1级

2011-04-15 回答

FUNM(A,@EXP), FUNM(A,@LOG), FUNM(A,@COS), FUNM(A,@SIN),FUNM(A,@COSH), FUNM(A,@SINH).....

matlab中有以上用法,但没有funm(A,'log10'),如果做这个计算,估计得需要自己编个函数。

另外:log在matlab中表示基底e

log10(A)=log(A)/log(10),所以在运算中可先求log(A),再求log10(A)

追问:

这个变成求数组的对数了吧 这里A是矩阵

追答:

我的版本也有错,08b,也有可能是版本问题。

EXPM和FUNM是类似的矩阵函数,EXPM的具体算法如下:

[V,D] = EIG(X)

EXPM(X) = V*diag(exp(diag(D)))/V

所以仿照上式,

funm(A,'log10')

=V*diag(log10(diag(D)))/V

matlab运算过程如下:

A =

2 3 4

5 6 7

8 9 10

K>> [v,d]=eig(A)

v =

-0.2826 -0.7753 0.4082

-0.5383 -0.0740 -0.8165

-0.7939 0.6273 0.4082

d =

18.9499 0 0

0 -0.9499 0

0 0 -0.0000

K>> log10(diag(d))

ans =

1.2776

-0.0223 + 1.3644i

-15.6882 + 1.3644i

K>> v*diag(ans)/v

ans =

-2.4510 + 1.1730i 5.4386 - 0.2274i -2.3600 - 0.2634i

5.5693 - 0.3645i -10.0536 + 0.9313i 5.6999 - 0.5016i

-2.0987 - 0.5376i 5.8306 - 0.6388i -1.9284 + 0.6245i

和你给的结果实数部分比较接近,估计这个式子V*diag(log10(diag(D)))/V

还有些不对。我想我能提供的参考就这些了,若有错误或新发现,还望指出,望共同进步!~~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值