我在 Matlab 中创建了一个随机双精度值
x = rand(1,1);
然后显示 x 的所有可能数字
vpa(x,100)
并获得:
0.2238119394911369 7971853298440692014992237091064453125
我将 x 保存到 .mat 文件中,然后将其导入 Mathematica,然后进行转换:
y = N[FromDigits[RealDigits[x]],100]
并获得:
0.2238119394911369 0000
然后回到 Matlab 并使用(将所有 Mathematica 数字复制并粘贴到 Matlab):
vpa(0.22381193949113690000,100)
并获得:
0.22381193949113689 64518061375201796181499958038330078125
为什么相同的双精度变量之间存在显着差异?
在 Mathematica 和 Matlab 之间交换数据时如何弥合差距?