




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
17.
蒙特卡羅(MonteCarlo)模擬蒙特卡羅方法,或稱計算機隨機模擬方法,是一種基于“隨機數”的計算方法。該方法源于美國在WWI后研制原子彈的“曼哈頓計劃”。S.M.Ulam(1908-1984)和該計劃的主持人之一、數學家馮·諾伊曼(J.vonNeumann)用馳名世界的賭城—摩納哥的MonteCarlo—來命名這種方法。蒙特卡羅模擬其基本思想很早以前就被人們所發現和利用:17世紀,用事件發生的“頻率”來決定事件的“概率”;19世紀人們用投針試驗的方法來決定π。高速計算機:用數學方法在計算機上大量模擬這樣的試驗必要性科技計算及社會中的問題比計算π要復雜得多。比如金融衍生產品(期權、期貨、掉期等)的定價及交易風險估算,問題的維數(即變量的個數)可能高達數百甚至數千。對這類問題,難度隨維數的增加呈指數增長,這就是所謂的“維數的災難”(CurseofDimensionality),傳統的數值方法難以對付(即使使用速度最快的計算機)。MonteCarlo方法能很好地用來對付維數的災難,因為該方法的計算復雜性不再依賴于維數。以前那些本來是無法計算的問題現在也能夠計算量。為提高方法的效率,科學家們提出了許多所謂的“方差縮減”技巧。另一類形式與MonteCarlo方法相似,但理論基礎不同的方法—“擬蒙特卡羅方法”(Quasi-MonteCarlo方法)—近年來也獲得迅速發展。我國數學家華羅庚、王元提出的“華—王”方法即是其中的一例。這種方法的基本思想是“用確定性的超均勻分布序列(數學上稱為LowDiscrepancySequences)代替MonteCarlo方法中的隨機數序列。對某些問題該方法的實際速度一般可比MonteCarlo方法提出高數百倍,并可計算精確度。/gkjqy/rkx/rd2.htm擬蒙特卡羅模擬許多計算機系統都有隨機數生成函數F90:callrandom_seedcallrandom_number(a)計算程序產生的隨機數不是真正的隨機數,它們是確定的,但看上去是隨機的,且能通過一些隨機性的檢驗,故常稱為偽隨機數若采用當前時刻作隨機數種子,則也是不可重復的隨機數如對32位字長的計算機realprocedurerandom((xi))integerarray(li)nrealarray
(xi)nl0anyintegerthat1<l0<231-1fori=1tondoli=(231-1)除以16807li-1的余數xi
=li/(231-1)endfor其它算法1.取初值x0(0,1),letxi
bethefractionalpartof(π+xi-1)52.Letu0=1.Fori=1,2,3,…,letui
betheremainderof(8t-3)ui-1dividedby28,andxi
=ui/2i.Heretcanbeanylargeinteger注意:上述隨機數序列均具周期性,如上頁random子程序的周期約230。Maplehasacollectionofrandomnumbergenerators.如:With(stats)x
:=uniform(0..1):seq(x(),i=1..10);Matlab:x=rand(10,1)產生10個隨機數
x=rand(N)產生元素在(0,1)間隨機分布的N*N矩陣
s=rand(‘state’,0)重設該生成函數到初始狀態如(b-a)r+a
x
(a,b)integer((n+1)r)x
{0,1,2,……n}試產生1000個在橢圓x2+4y2=4內均勻分布的隨機點:方法:在中均勻產生足夠多隨機點,當位于橢圓內的點數為1000時停止??捎呻S機數序列r
(0,1)構造一系列隨機數序列有時隨機數產生函數通不過嚴格的隨機性測試。而在一些計算(如MC積分)中隨機性非常重要。故使用更長字節的計算機更好。應用之一估計面積和體積Numericalintegration選取(0,1)中隨機數序列x1,x2,x3,……
xn。則誤差約,它并不能和一些高級的數值積分算法比擬,但對多維情況,MC方法卻很有吸引力。我們可產生一系列隨機數可簡單取3個隨機數構成一個隨機點,即相應地,一般地,例如:求其中在該區域中取5000個點,可得該積分約0.57.計算體積Pseudo-codeProgramvolume_regionIntegerparametern5000,iprt1000Realarrayintegeri,mRealvol,x,y,zCallrandom((rij))ForI=1tondoxri1yri2zri3Ifthenmm+1Ifmod(I,iprt)=0thenVolreal(m)/real(I)OutputI,volEndifEndforEndprogram計算體積之作業:冰淇淋的體積應用之二MC模擬生日問題假設有n個人在一起,各自的生日為365天之一,根據概率理論,與很多人的直覺相反,只需23個人便有大于50%的幾率人群中至少有2個人生日相同。n理論幾率模擬幾率0.1170.1100.4110.4120.5070.5200.7060.6920.9410.936500.9860.987Realfunctionprob(n,npts)Integeri,nptsLogicalbirthRealsumSum=0ForI=1tonptsdoIfbirth(n)thensumsum+1EndforProbsum/real(npts)EndfunctionLogicalfunctionbirth(n)……蒲豐的投針問題Buffon’sNeedleproblem蒲豐證明在相距d的一系列平行線上投長為l針。針與線的交點數除以投的次數等于2l/(πd)。Realfunctionprob(n,npts)Integeri,nptsLogicalbirthRealsumSum=0ForI=1tonptsdoIfbirth(n)thensumsum+1EndforProbsum/real(npts)Endfunction不妨取d=l。產生隨機數u和,其中u為針中心距最近的線的距離,故u小于等于0.5,為夾角,根據對稱性,可取0到π/2。算時需要用上是否不自洽(姜冰)作業中子屏蔽問題NeutronShieldingproblem假設鉛墻長為5,中子在鉛中的平均自由程為1,中子與鉛原子碰撞后各向同性散射。令碰撞8次后中子能量耗盡,試求穿透鉛墻的中子的比例。暫不考慮垂直紙面的運動,則中子的水平位移是。入口鉛墻(長為5)21點問題Blackjack21problem牛刀小試參數擬合問題Parameterfittingproblem輻射轉移問題Radiativetransferproblem[1]Ahn,S.-H.,Lee,H.-W.&Lee,H.-M.2000,JKAS,33,p29.[2]
ZhengZheng&JordiMiralda-Escude.2002,ApJ,578,p33.[3]Watson,A.M.&Henney,W.J.2001,RMxAA,37,p221.[4]LorneW.Avery&LewisL.H.,1968,ApJ,152,p493.[5]LawrenceJ.C.,PeterD.N.&JefferyD.S.1972,ApJ,176,439.[6]DavidA.Neufeld,1990,ApJ,350,p216.輻射轉移問題對三維輻射轉移問題,蒙特卡羅模擬幾乎是必須的計算方法將空間劃分為Nx*Ny*Nz個網格選取空間中的隨機點產生光子包(photonpackage),并此向隨機方向傳播考慮光子與粒子的隨機碰撞產生具有某種分布的隨機數試驗粒子數值模擬研究粒子在電磁場中的運動研究粒子加速等全粒子試驗粒子研究微觀
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中俄外貿合同樣本
- 2025年廣州市合同范本
- 冷物流運輸合同標準文本
- 公司窗外保潔服務合同標準文本
- 幼兒園教育公平性的探索與實踐計劃
- 舉升機租賃合同樣本
- 農村工程維護合同樣本
- 學校教學任務分配方案計劃
- 農戶馬鈴薯訂單合同樣本
- 兼職招商顧問合同樣本
- 《法律職業倫理》課件-第二講 法官職業倫理
- 《專業咖啡制作技術》課件
- 印刷行業售后服務質量保障措施
- 2025年扎賚諾爾煤業有限責任公司招聘筆試參考題庫含答案解析
- 《急性闌尾炎幻燈》課件
- 舞蹈工作室前臺接待聘用合同
- 酒店物業租賃合同樣本3篇
- 《編制說明-變電站監控系統防止電氣誤操作技術規范》
- 《論教育》主要篇目課件
- 河南省勞動關系協調員職業技能大賽技術工作文件
- 血管外科常見病
評論
0/150
提交評論