[opb super pi 淺談] part2: pi在數學上的算法概觀

狂少

Bulletproof Themer
已加入
9/18/03
訊息
14,397
互動分數
2
點數
0
這邊先慢慢將大家帶入pi的演算觀念,後面講的大家就會有所了解!!
在數學上pi是很迷人的一個符號,也有很多精巧的演算方式
可是我們測試是跟演算方法沒牽連嗎?...是沒
但是卻是以其演算的趨近法來歸納相似的圈數.
其實用來算pi的方法是非常基礎的微積分,但是效果卻非常棒
我們先來看看到底是用啥去算
在算之前,我們先回憶一下pi=3.141592653589793....的不定數循環

我們就來舉微分積分各一:

先說微分:
這應該是大一的數學課...lim (sin(x)/(x))=1
x-->0


假設 X=pi/y; 如果y是很大的數字, pi應該差不多等於 y·sin(pi/y).
那sin(pi/y)怎麼算? 簡單...公式記得吧? (Sqrt是開根號)

sin(x/2) = sqrt((1-cos(x))/2), cos(x/2) = sqrt((1+cos(x))/2),

ok重點來了哦...如果一般我們要採x大於或等於0;小於或等於pi;
那我們就要取正的根.
這樣的結果,如果我們知道sin(pi/y)及cos(pi/y),
我們就有可能可以導出sin(pi/2y) and cos(pi/2y),

而且最重要的是我們都知道
sin(pi/6) = 1/2 and cos(pi/6) = sqrt(3)/2
此處的pi應該是用角度180去算;不是rad
所以大家推推看 y=6,12, 24, 48, 96, 192, 384, 768, 1536, 3172....

這個y值...後來有被拿拿用在算super pi哦;)

ok, 所以我們看例子:


y sin(pi/y) cos(pi/y) n·sin(pi/y)
6 0.50000000 0.86602540 3.00000000
12 0.25881904 0.96592582 3.10582854
24 0.13052619 0.99144486 3.13262868
48 0.06540312 0.99785892 3.13935027
96 0.03271908 0.99946458 3.14103199
192 0.01636173 0.99986613 3.14145242
384 0.00818113 0.99996653 3.14155767

所以到y=384時; n·sin(pi/y) ,也就是3.14155767是最近pi的
所以大家懂這384..768....可以代表你電腦的啥設定吧...
**********************************************************************************
晚點再來談積分
 

hyde211

榮譽會員
已加入
11/14/06
訊息
2,282
互動分數
0
點數
0
年齡
39
YA! 又有更進一步的教學
先收下先:PPP:
 

阿南

高級會員
已加入
7/11/06
訊息
614
互動分數
0
點數
16
狂少數學真好
我都還老師去了
當初微積分八十幾分過也忘記是如何考到的
認真研究中
 

Ethan.CPA

榮譽會員
已加入
10/10/04
訊息
3,136
互動分數
0
點數
36
位置
台北
唔…
微積分,弟超差的 Orz
 

albertyin

nobody
已加入
7/30/04
訊息
1,602
互動分數
0
點數
0
年齡
43
;em42; 小弟大學根本沒有修過微積分這種東西

完全跨朧謀;oq;
 

horphi

初級會員
已加入
3/22/05
訊息
31
互動分數
0
點數
0
我只能说书到用时方恨少。。。。谁叫我读书时都在混日子。。。。

狂少。。。 一百万个佩服!!
 

AH.

進階會員
已加入
6/4/04
訊息
249
互動分數
0
點數
0
想當初高中微積分學得很爛說
原諒弟有看沒有懂;sorry;
 

george555

高級會員
已加入
5/14/05
訊息
769
互動分數
0
點數
16
喔~~~原來 SUPER PI 是計算工程上的圓周率呀~~~

真的不懂~~~只知道大家都是用1M或32M來表示CPU運算的快慢而已~

PS:那1M的用意是否用來表達計算至圓周率的第一百萬位數的時間呢???
 

cclong

一般般會員
已加入
3/9/04
訊息
75
互動分數
0
點數
0
嗯 原來如此
受教了 等狂少談積分:PPP:
 
▌延伸閱讀