如何在Maxima CAS中计算随机bfloat数

时间:2019-06-30 16:52:36

标签: random precision maxima

Maxima Cas random function作为输入浮点数,并给出浮点数作为输出。

我需要floating point number with more digits,所以我使用bfloat可以提高精度。

我已经尝试过:

random(1.0b0)
bfloat(random(1.0));

最好的结果是:

bfloat(%pi)/6.000000000000000000000000000000000000000000b0 5.235987755982988730771072305465838140328615665625176368291574320513027343810348331046724708903528447b-1

但这不是随机的。

1 个答案:

答案 0 :(得分:2)

生成随机bigfloat的一种方法是生成具有适当位数的整数,然后对其进行重新缩放以获取0到1范围内的数字。

请注意,当n为整数时,random(n)返回一个介于0到n-1之间的整数,因此:bfloat(random(10^fpprec) / 10^fpprec)