MATLAB中exp和expm各自的用法是什么?有什么区别?

 我来答
风行江山
推荐于2019-08-20 · TA获得超过5056个赞
知道小有建树答主
回答量:42
采纳率:100%
帮助的人:1.2万
展开全部

exp(x): 求的是矩阵x中的每个元素的e指数。这个矩阵x可以是任意矩阵;

expm(x):求的是矩阵x的指数。这个矩阵x只能是方阵;在matlab内部,采用的是pade近似算法来计算的。

在matlab中举个例子,你看一下:

x=[1 2 3; 4 5 6]; %计算2行3列矩阵的exp, 得到的是每个元素的exp

>> exp(x)

ans =

2.7183    7.3891   20.0855

54.5982  148.4132  403.4288

>> expm(x)  %用这个函数就出错,原因是此时x不是方阵

??? Error using ==> mtimes

Inner matrix dimensions must agree.

Error in ==> expm>PadeApproximantOfDegree at 118

A2 = A*A; A4 = A2*A2; A6 = A2*A4;

Error in ==> expm at 39

F = PadeApproximantOfDegree(m_vals(end));

>> expm([1 2 3; 4 5 6 ; 7 8 9]) %此时expm()内部是一个3行3列方阵,可见结果正确

ans =

1.0e+006 *

1.1189    1.3748    1.6307

2.5339    3.1134    3.6929

3.9489    4.8520    5.7552

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式