所以,我正在尝试将gmp用于我正在做的一些计算,并且在某些时候我需要从正态分布生成一个伪随机数(prn)。
由于 gmp 有一个统一的随机变量,这已经很有帮助了。但是,我发现很难选择应该使用哪种方法从均匀分布中生成正态分布。在实践中,我的问题是 gmp 只有简单的操作,因此例如我不能使用 cos 或 erf 评估,因为我必须自己实现所有这些。
我的问题是,我可以在多大程度上从 gmp 上的正态分布生成 prn,如果非常困难,是否有任何已经实现正态分布的任意精度库。
作为不起作用的方法的两个示例(从此问题中检索):
Ziggurat 算法使用 f 的评估,在这种情况下是非整数指数,因此 gmp 不支持。
Box–Muller 变换使用 gmp 不支持的 cos 和 sin。