Matlab或Octave怎么会这么快?

2024-06-09 11:01:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我真的很困惑Matlab或{a2}的计算速度。在

怎么可能立即给出5^5^5^52.351*10^87如果你想知道的话)的结果呢?在

我找到了一些关于the speed for matrix computationsthis article)的结果,但没有发现其他问题。而且this不是原因(我在Python中的(天真的)实现现在运行了大约5分钟)。在


Tags: thea2forarticle原因thismatrixspeed
1条回答
网友
1楼 · 发布于 2024-06-09 11:01:51

5^5^5^5毕竟不需要这么多操作。例如,在每一个幂阶,比如a^b,你可以计算exp(log(a)*b),得到相同的结果。在

我并不是说Matlab一定是这样做的,而且可能存在数值精度问题。但这说明多重幂运算并不像直接计算所显示的那样困难。在

至于数值精度:

>> format long
>> 5^5^5^5
ans =
    2.350988701644576e+087
>> exp(log(exp(log(exp(log(5)*5))*5))*5)
ans =
    2.350988701644561e+087

相对误差是

^{pr2}$

^{}不远。在

相关问题 更多 >