摘要 通过案例揭示,在 Julia 的高精度计算中,不同的精度,可能导致不一致的结果。
昨天发了《调用 MPFR 时,精度不同可能结果不一致》后,一同学来信,问,那 Julia也存在该问题?答,是的。
请看下面案例。
例1. 在 Julia 中计算 sin(1234e300),结果保留100位有效数字。
代码执行过程如下:

上面代码的精度设为 400(请看红线上面)。若改 400为 600,则有下图(同样红线上面):
这时,两个结果不一致。一个输出是正数 0.996...,一个输出是负数 -0.999...。而正确答案是 0.94...(ISRealsoft 提供)。
因此,若 Julia 的精度设置不同,则结果也可能不一致。
还有,似乎计算精度越高,结果的误差越大,或结果越不准确。

3131

被折叠的 条评论
为什么被折叠?



