用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(:,1)-1;    %确定随机点的x坐标范围[-1,3),即矩形宽为4.
y=5*sj_point(:,2)-2;     %确定随机点的y坐标范围[-2,3),即矩形长为5.
love=find(x.^2+y.^2<=(x.^2+y.^2).^0.5+x);    %找到落在心形图案里的点
point_number=length(love);      %计算心里的点数
S=20*point_number/100000000     %矩形面积乘以落在心里的概率
plot(x(love),y(love),'r.')      %显示红心

执行代码得到下图:

若随机数组只有一万个,则

也就是说,随即点数目越多,结果也就越精确。当然,这对计算机的要求也更高。
举一反三,求其它图案的面积也可以用类似的方法。

用Matlab实现蒙特卡洛法求心形线面积相关推荐

  1. MATLAB绘制笛卡尔心形线---by CSDN ChitGPT AI大模型

    以下是MATLAB代码,用于绘制笛卡尔心形线: t = linspace(0, 2*pi); x = 16.*sin(t).^3; y = 13.*cos(t)-5.*cos(2*t)-2.*cos( ...

  2. 用随机投点法计算pi值matlab,用蒙特卡洛法求圆周率PI的近似值,其算法如下:使用随机函数Rnd,随机生成两个[0,1)之间的随机数,由此构成一个投点坐标(x,y),然后根据x...

    (2) 实现上述功能的VB程序如下,请在划线处填入合适代码. Private Sub Command1_Click() Dim m1 As String, m2 As String, sum As S ...

  3. python心形线代码_python实现心形线-女性时尚流行美容健康娱乐mv-ida网

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 python 实现 录音小程序 ...

  4. matlab 折线束的包络,用matlab绘制图1中右图的圆、折线束及其包络线(心形线),请给出步骤及其实现原理,...

    一:请给出绘制图1中右图的圆.折线束及其包络线(心形线)的步骤及其实现原理.给出绘制该图的MATLAB程序及其运行结果(图形). 题目帮助: 例如,画图的初略步骤可以是这样 a) 画一个基圆C,并在C ...

  5. python turtle笛卡尔心形线_用MATLAB实现心形线

    背景 众所周知,笛卡尔是一位超越时代的数学家.物理学家和思想家.他在数学领域所创造的成就影响着自他之后所有的数学研究,他可以被称为解析几何之父.在哲学和心理学方面,笛卡尔也获得了非凡的成就,他是二元论 ...

  6. matlab画极坐标心形线,matlab画心形线

    matlab画心形线 clear ; close all; clc h1=figure('name','爱的表达'); axis([-1.5 1.5 -2 0.5]); axis off; set(g ...

  7. 如何用matlab绘制心形线,心形线的matlab程序

    cosθ的心形线图像 图 2 ρ = 0.5 + cosθ的心形线图像 图 5 ρ = 1 ? cosθ的心形线图像 Matlab 绘制,附代码: theta=0:0.1:2*pi; rho1=1-. ...

  8. matlab画平面心型线,如何用matlab画出心形线

    心形线,是一个圆上的固定一点在它绕着与其相切且半径相同的另外一个圆周滚动时所形成的轨迹线.下面就简单讲解一下如何用matlab画出心形线. 1.心形线的数学定义 2.编制的绘制心形线的matlab程序 ...

  9. 数学建模 MATLAB绘制心形线

    最近开始接触数学建模,短期目标为的是完成51校赛选拔,长期目标瞄准了全国大学生数学建模竞赛.本人负责算法分析,模型建立以及最终的优化处理.刚接手MATLAB,闲暇之余,绘制了心形线. t=0:pi/1 ...

最新文章

  1. MYSQL注入天书之服务器(两层)架构
  2. Ubuntu/Debian 系统切换Java(JVM),修改Java版本,JAVA_HOME
  3. selenium - 下拉框操作
  4. P16对member进行代码生成时,访问端口出现This application has no explicit mapping for /error, so you are seeing this
  5. DL for Vision:A Tutorial with Caffe 报告笔记
  6. 干支纪年法简便算法_民间玄学:那些年我理解的何谓“天干”,“地支”,“干支”...
  7. 车辆行人识别训练与部署,EasyDL-Jetson Nano 端边云协作专场公开课
  8. [数据库]oracle导出数据库
  9. 20201023:力扣第37场双周赛(上)
  10. c语言php环境搭建,c语言从入门到放弃 php从入门到放弃系列-01php环境的搭建
  11. 印象笔记中可以使用html语言吗,印象笔记支持markdown啦
  12. 3dmax学习6——扫描命令
  13. pop3邮箱服务器地址,常用邮箱服务器(smtp,pop3)地址,端口(示例代码)
  14. Cydia怎样添加威锋源
  15. 如何获取多屏幕显示器工作区域
  16. 分享几个去图片水印好用的软件给你
  17. 详解JVM之双亲委派机制
  18. 13. 利用 条件运算符 的嵌套来完成此题: 学习成绩>=90分的同学A表示, 60-89分之间的用B表示, 60分以下的用C表示
  19. 免疫荧光实验相关的注意事项汇总
  20. 2022年9月11日:人生第一次相亲记录

热门文章

  1. layer.photos 查看本地图片,并实现缩放和旋转功能
  2. 美容院前台收银软件用什么好?
  3. 不懂java,这篇文章带你入门起飞
  4. 关于100层楼,扔两个鸡蛋,求摔碎鸡蛋的临界层的问题
  5. 计算机毕业设计(38)java毕设作品之餐厅座位预订系统
  6. 转载一篇ps更换背景色
  7. TweenMax.js大熊猫吃面条动画
  8. 关于中台的深度思考和中台实战
  9. 多项式的 加法 与 乘法(C语言 单链表)
  10. 阿里云服务器ECS基本组件、使用场景及选购、升降配和部署建议