编程语言
首页 > 编程语言> > Python:计算正弦/余弦,精度高达100万位

Python:计算正弦/余弦,精度高达100万位

作者:互联网

问题非常明显.我已经看过pi的几个例子,但没有看到trigo函数.也许有人可以使用泰勒系列as done here,但我不完全确定如何在python中实现它.特别是如何存储这么多数字.
我应该提一下:理想情况下,这将在香草Python上运行,即没有numpy等.

谢谢!

编辑:如上所述,我知道之前已经问过这个问题但它是在java中我正在寻找一个python实现:)

编辑2:哇我不知道这里的人可以这么自我吸收.我确实尝试了几种方法但没有一种方法可行.我认为这是一个你可以征求意见的地方,猜猜我错了

最后编辑:对于任何可能发现这个有用的人:许多角度可以计算为sqrt(2),sqrt(3)和Phi(1.61803 ..)的倍数.因为这些数字可以广泛使用,精度高达10十位数,将它们放在文件中并直接在程序中读取它们很有用

解决方法:

mpmath是这样的:

from mpmath import mp
precision = 1000000
mp.dps = precision
mp.cos(0.1)

如果无法安装mpmath或任何其他模块,您可以按照建议尝试多项式近似.

enter image description here

其中Rn是拉格朗日余数

enter image description here

注意,一旦x离开中心x0,Rn就会快速增长,因此在尝试计算任意x的sin(x)或cos(x)时,要小心使用Maclaurin系列(以0为中心的泰勒级数).

Bad idea: infinity does not exist in computers

Bad idea: infinity does not exist in computers

标签:python,sine
来源: https://codeday.me/bug/20190622/1264583.html