用Matlab实现蒙特卡洛法求心形线面积
思路:
1、生成一定数量的随机数,其大小在[0,1)之间;
2、用随机数确定一个长宽已知的矩形,并保证心形线在矩形中;
3、计算随机点落在心形线中的概率,然后乘以矩形的面积即可得到心形线的面积。
问题:用蒙特卡洛法计算心形线x^2 + y^2 =(x^2+ y^2 )^0.5 + x,其极坐标为ro=1+cos(theta)。
Matlab代码:
sj_point=rand(100000000,2); %生成一亿个随机二维随机数组
x=4*sj_point(</