【问题标题】:How do arbitrary-precision libraries like mpmath evaluate simple trigonometric functions?mpmath 等任意精度库如何评估简单的三角函数?
【发布时间】:2013-07-04 19:18:41
【问题描述】:

我要求简要说明,指出所涉及的各种加速方法。这只是为了好奇。

例如,mpmath website 告诉我们指数函数公式用于复平面中的运算,但现在我想将其保留为在普通实数上使用的运算。

或者,最好有一个指向在 mpmath 中执行实际计算的源代码部分的链接,我没有运气搜索可下载的源。

【问题讨论】:

    标签: trigonometry bignum arbitrary-precision mpmath


    【解决方案1】:

    精确到 1000 位十进制数字的基本函数通常由 Taylor series 计算,它们的收敛性非常好。如果您明确知道您需要什么精度,Chebyshev polynomials 以最少的努力获得最好的质量。

    您使用Arithmetic-geometric mean 来获得非凡的精度,它以二次方收敛到解并允许您快速计算 ln(x)。反函数 exp(x) 通过 Newton-Raphson 迭代计算。从那以后有一些算法可以计算 arctan,tan,sin,cos...

    有关算法的闲暇时间,请参阅 Jean-Michel Muller 的Elementary Functions: Algorithms and Implementation

    【讨论】:

      猜你喜欢
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-04
      • 2021-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多