裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

モンテカルロ法で,解析解のチェック

2024年06月24日 | ブログラミング

 一辺の長さが R の正方形の中に,半径 R の四分円 2 個と,半径 r の円を描く。

四分円と円の隙間(緑の点が散らばっている領域)の面積をモンテカルロ法により求める。

1000000 個の点を打って,領域内に入った点の割合から面積を推定すると,0.172231*R^2 となった。解析解は 0.17239838239331384*R^2 だったので,解析解を導いた式は間違っていなさそうだ。

using Random, Distributions, StatsBase
R = 1
r = 3R/8
n = 1000000
x = rand(Uniform(0.5, 1.0), n)
y = rand(Uniform(0, 1.0), n)
z = @. (x^2 + y^2 < R^2) && ((x - R/2)^2 + (y - r)^2 > r^2)
2*(R^2/2 * mean(z))

   0.172231


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 算額(その1090) | トップ | 算額(その1091) »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事