蒙特卡洛法被譽為20世紀最偉大的十大算法之一,也稱統計模擬方法,是二十世紀四十年代中期由於科學技術的發展和電子計算機的發明,而被提出的一種以概率統計理論為指導的一類非常重要的數值計算方法。下面介紹該算法在matlab中求定積分,希望對大家有所幫助。
工具/原料
matlab
方法/步驟
下面以一個具體的例子來說明,所求積分如圖所示。
啟動matlab,新建一個函數文件。
在彈出的編輯窗口中輸入如下代碼。該代碼的目的是創建蒙特卡洛主函數。
保存該函數文件。
再建立一個函數文件,輸入代碼如下。該代碼的目的是構造積分函數。
保存上面的積分函數文件。
在命令行窗口中直接調用該函數,求得的結果如圖所示。
下面的命令主要是繪製出積分區域。
可以從下圖中看到積分區域如圖所示。
由於蒙特卡洛是通過抽樣來解決問題,可以看到沒次求解,結果都不一樣,但是差別並不大,最後一次還將抽樣數提高了一個數量級,結果相差還是並不大。