算法與圓周率計算
圓周率一般用π來表示,是一個在數(shù)學及物理學中普遍存在的數(shù)學常數(shù)。其定義為圓的周長與直徑之比。常用圓周率的十進制近似值為3.141 592 6,另外還有由祖沖之給出的約率:22/7,及密率:355/113。圓周率計算算法 根據(jù)馬克勞林(Colin Maclaurin)公式有: 在式子兩邊令x=1,得 這個問題可以使用算法來實現(xiàn)(見下圖)。 下面介紹歷史上兩個有名的公式... 更多
圓周率是圓的周長與直徑的比值,一般用希臘字母π表示,是一個在數(shù)學及物理學中普遍存在的數(shù)學常數(shù)。π也等于圓形之面積與半徑平方之比。即π=周長C/直徑d。圓周率公式——幾何算法
憑直觀推測或實物度量來計算,實驗階段得到圓周率值的結果是相當粗略的,在眾多數(shù)學家的努力下,圓周率值的計算進入了科學的階段——幾何算法階段。
1、圓內接、外切多邊形
阿基米德是科學地研究圓周率這一常數(shù)的第一個人,開創(chuàng)了幾何計算圓周率的階段,真正使圓周率計算建立在科學的基礎上,他提出了一種能夠借助數(shù)學過程,把圓周率的值精確到任意精度的方法。
由上圖知,圓周長大于內接正四邊形而小于外切正四邊形,因此2√2 圓周率 4,據(jù)說阿基米德用到了正96邊形才算出這個值域,這個例子雖然可行性不強,但它至少邁出了科學探索圓周率的第一步。
阿基米德求圓周率的更精確近似值的方法,體現(xiàn)在他的一篇論文《圓的測定》之中。在這一書中,阿基米德第一次使用上、下界來確定圓周率的近似值,他用幾何方法證明了“圓周長與圓直徑之比小于3+1/7而大于3+10/71”,而且提供了誤差的估計方法及計算。重要的是,這種方法從理論上而言,能夠求得圓周率的更準確的值。
到公元150年左右,希臘天文學家托勒密得出圓周率=3.1416,這是自阿基米德以來取得的巨大進步。
2、割圓術的應用
割圓術(下圖)是我國的數(shù)學家劉徽提出的,他是我國最早運用科學方法計算圓周率值的人,在公元263年前后,他就用此方法得出π=3.14,后人稱之為“徽率”,他指出這是不足近似值。雖然他提出割圓術的時間比阿基米德晚一些,但其方法確有著更美妙之處。
割圓術僅用內接正多邊形就確定出了圓周率的上、下界,比阿基米德同時用內接和外切正多邊形的方法簡捷得多。另外,有人認為在割圓術中劉徽提供了一種絕妙的精加工方法,以致于他將割到192邊形的幾個粗糙的近似值通過簡單的加權平均,竟然獲得具有4位有效數(shù)字的圓周率π=3927/1250=3.1416。而這一結果,正如劉徽本人指出的,如果通過割圓計算得出這個結果,需要割到3072邊形,這種精加工方法的效果是奇妙的,也是割圓術中最為精彩的部分。
令人遺憾的是,由于人們對它缺乏理解而被長期遺忘了。大家更加熟悉的是祖沖之的兩大貢獻:其一是求得圓周率3.1415926 π 3.1415927,其二是,得到圓周率的兩個近似分數(shù),即約率為22/7,密率為355/133。他算出的圓周率的8位可靠數(shù)字,不但在當時是最精密的圓周率,而且保持世界記錄九百多年,以致于有數(shù)學史家提議將這一結果命名為“祖率”。
在這一時期,數(shù)學家們對圓周率精確值的探索頗有成就,涌現(xiàn)出了大量的偉人,阿基米德、祖沖之、魯?shù)婪虻?,他們都為圓周率的計算做出了卓越的貢獻。但是,用幾何方法求其值,計算量很大,這樣算下去,窮數(shù)學家的一生也改進不了多少。
古典方法已引導數(shù)學家們走了很遠,到魯?shù)婪蚩梢哉f已經登峰造極,再向前推進,必須在方法上有所突破。圓周率公式——分析算法
17世紀出現(xiàn)了數(shù)學分析這一銳利的工具,使得許多初等數(shù)學束手無策的問題迎刃而解,圓周率的計算歷史也隨之進入一個新的階段。
1、圓周率公式與解析表達式
1579年法國數(shù)學家韋達在(《數(shù)學定律,應用于三角形》中)通過計算圓的正6×216=393216邊形,得出3.1415926535 π 3.1415926537,同時他利用分析式和級數(shù)乘積來刻畫圓周率。
這個式子給科學家們指出了一個嶄新的計算圓周率的思路,這是分析法計算圓周率時代的第一個解析表達式。這個公式的優(yōu)美至今令我們贊嘆不已,它僅僅借助數(shù)2,通過一系列的加、乘、除和開平方就可算出圓周率值,且將圓周率計算到了第九位。
這一時期,是幾何算法與分析算法“共同繁榮”的時期,在1621年德國-荷蘭物理學家、數(shù)學家斯涅耳對原來古典方法作出了一些三角上的改進,利用這一改進,只需算到230邊形,就可得到34位圓周率值。1630年,意大利羅馬數(shù)學家格林貝格(利用斯涅耳的方法得到40位。這也是利用多邊形周長算圓周率的最后的重要結果。
2、圓周率公式與反正切函數(shù)表達式
1669年,牛頓在在他的《分析學》中提出后,蘇格蘭數(shù)學家詹姆斯·格雷戈里公開了牛頓的arctanx的級數(shù)展開式。
只可惜,沒有發(fā)現(xiàn)只需令式x=1中,就可以得到π/4=1-1/3+1/5-1/7+…,致使他就此裹足不前。這個公式后來由萊布尼茲發(fā)現(xiàn),這個級數(shù)被稱為萊布尼茲級數(shù)。從此,數(shù)學家們以反正切函數(shù)計算值擺開了強大的陣容。在1706年英國數(shù)學家、天文學家梅欽發(fā)現(xiàn)了Machin公式
利用此公式將圓周率的值計算到了100位。1734至1735年,在前人的基礎上,歐拉經過不懈地努力和探索終于得出著名的歐拉公式
到了1737年,歐拉利用反正切函數(shù)arctan1=π/4,根據(jù)格雷戈里的展開式將右邊展開,得到了著名的歐拉級數(shù),
1841年,英國威廉·盧瑟福利用格雷戈里的級數(shù)和公式計算到π的208位,后來發(fā)現(xiàn)其中的152位是正確的。1844年,僅花了兩個月時間,德國漢堡的數(shù)學家斯特拉斯尼茨基和達什使用施瓦茲公式計算到小數(shù)點后205位,但只有200位正確。1877年,歷史上另一位類似于魯?shù)婪虻挠鴶?shù)學家尚克斯利用梅欽公式并借助臺式機械計算機花了30年時間將圓周率計算到707位。
但在1945年,福格森出于篤信圓周率是簡單正態(tài)數(shù),用手工計算機對尚克斯的的結果進行了核實,發(fā)現(xiàn)從528位起是錯的。“可憐的尚克斯”,不僅幾十年的心血大多打了“水漂”,最主要的是,他至死都不知道,他已經出錯了。在尚克斯的結果發(fā)表之后不久,中國著名的數(shù)學家李善蘭在用尖錐術求圓面積的時候得到了式子
這個式子的發(fā)現(xiàn),足以證明我國在繼祖沖之之后對圓周率的探索仍然大有作為。1848年1月,福格森和雷恩奇聯(lián)合發(fā)表了經過檢驗的正確的圓周率的808位。1949年,英國數(shù)學家列維·史密斯和雷恩奇算出圓周率的1121位,是人工算圓周率的最高記錄。
這一時期,人們對圓周率的計算可以說是有相當大的進展,學會使用解析表達式來計算圓周率的值,而且,有了計算方法的最大突破——圓周率的反正切函數(shù)表達式的發(fā)現(xiàn),這個公式層出不窮,為計算圓周率的更精確的值提供了有力的科學依據(jù)。
隨著人們對圓周率探索的發(fā)展,計算工具也在不斷的改進,最開始自制的不精確的工具逐漸被淘汰,手盤和算盤成了大多人計算的工具,計算量不斷增大,這兩種計算工具已經不能滿足數(shù)學家們的計算要求。此時,臺式機械計算機出現(xiàn)了,它為數(shù)學家們的計算提供了方便。但人們并沒有停止對計算工具的研究和更新,腳步依然在前進。
3、圓周率公式與概率方法
關于圓周率的值,歷史上還有一種幾何與分析思想之外的方法,那就是18世紀法國科學家蒲豐創(chuàng)造的“投針求的概率論方法”。
問題:將長為l的勻質細針隨機地擲于畫了等距平行線族的平面上,相鄰兩平行線距離為a,a l,求針與平行線相交的概率。
具體解法:設x為針中點到平行線的距離,則x∈[0,a/2],設θ為針與平行線的夾角,則θ∈[0,π]。
由上圖知,當且僅當0≤x≤1/2·sinθ,θ∈[0,π]時針與平行線相交,于是所求概率:
p=陰影面積矩形OABC面積-2l/π,于是π=2l/ap。
1901年,意大利數(shù)學家拉澤里尼投針3408次,他用壓線的頻率代替概率p,即取p=m/3408,求得π=3.141592。當投針次數(shù)愈多,求得π值將愈精確。在用概率方法計算圓周率值中,值得我們特別關注的是1904年,R·查特發(fā)現(xiàn)的“兩個隨意寫出的數(shù)互素的概率為6/π2”。英國伯明翰市阿斯頓大學計算機科學與應用數(shù)學系的羅伯特·馬修斯,利用夜空中亮星的分布來計算圓周率,他從100顆最亮的星星中隨意選取一對又一對進行分析,計算它們位置之間的角距且檢查了100萬對因子,據(jù)此求得π的值約為3.12772,這個值與真值相對誤差不超過5%。
概率方法的出現(xiàn),使圓周率的計算又一次靠近了精確值,而數(shù)學家們并沒有為此沾沾自喜,探索還在繼續(xù)……圓周率公式與電子計算機
眾所周知,電子計算機的產生及應用給人們的生活和工作帶來了很大的方便,同時,它不僅為數(shù)學家們計算圓周率值帶來前所未有的突破,也使圓周率的計算進入了一個新的時代。1949年,人類第一次在美國馬里蘭州阿伯丁的軍隊彈道研究實驗室里用電子計算機算圓周率,包括馮·諾伊曼在內,用ENIAC和梅欽公式計算圓周率值到2048位,突破了千位數(shù)。1959年,美國國際商業(yè)機器公司(IBM)制成第二代電子計算機——世界上的一臺晶體管電子計算IBM-7090。
1961年,丹尼爾·尚克斯和華盛頓的雷恩奇用IBM-7090分別使用挪威斯托默公式:
和高斯公式:
將圓周率計算到小數(shù)點后100256位,終于登上110萬位高峰。1985年,喬納森·波爾文和彼得·波爾文發(fā)表波爾文算法:
初值:a0=6-4√2,y0=√2-1,
重復計算:
和
最后得到π=1/an,它四次收斂于圓周率π。
屢創(chuàng)紀錄的出生在蘇聯(lián)的美國哥倫比亞大學的戴維德·丘德諾夫斯基和格雷戈里·丘德諾夫斯基兄弟,丘德諾夫斯基兄弟將LM公式改良為式子
這個公式稱為丘德諾夫斯基公式,簡記“QD”,每計算一項可以得到圓周率的15位十進制精度,他的另一個更方便于計算機編程的形式是,
丘德諾夫斯基兄弟利用此公式,在96年的時候得到80億位圓周率的值。
計算機的產生,使圓周率的計算達到了驚人的程度,圓周率的值達到難以想象的精度,再繼續(xù)研究計算圓周率的精度已經變得意義不大。