24小时热门版块排行榜    

查看: 790  |  回复: 7

高月smile

新虫 (初入文坛)

[交流] 模型 已有2人参与

大家好,由于课题需要,想做模拟计算,然而之前并未接触matlab的相关知识,因此请各位相助,看看如何使用matlab画出类似下图的随机分布图。为简化模型,只要两个不同半径的圆即可。谢谢了!!!

模型
模型.PNG
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

淘宝搜费老师

捐助贵宾 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
这个需要编程,第一步产生随机数生成大圆圆心,然后去除叠加的,画大圆;然后同样方法画小圆。对楼主估计这个很难,主要难点在于判断重叠。函数百度搜画圆、产生随机数即可

发自小木虫Android客户端
2楼2016-04-17 23:09:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

高月smile

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 淘宝搜费老师 at 2016-04-17 23:09:29
这个需要编程,第一步产生随机数生成大圆圆心,然后去除叠加的,画大圆;然后同样方法画小圆。对楼主估计这个很难,主要难点在于判断重叠。函数百度搜画圆、产生随机数即可
...

很感谢您提供了很好的思路,目前参照网上的matlab程序,已经画出了同一半径的不重叠的圆,然而还是不知道如何修正或重新写含有两个不同半径的圆的matlab程序。望您指导,谢谢您!
目前用的生成大圆的程序如下:
function xy_pos = gen(n,b,r)
c=0;
xy_pos=[];
while c<n
x=rand*(b-2*r)+r;
y=rand*(b-2*r)+r;
if c==0
xy_pos=[x y];
c=c+1;
continue;
end
for i=1:size(xy_pos,1)
  if (xy_pos(i,1)-x)^2+( xy_pos(i,2)-y)^2<(r+r(i))^4*r*r+0.2
  elseif i==size(f,1);
c=c+1;
f=[f;x y];
end
  end
end
3楼2016-04-18 08:52:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

淘宝搜费老师

捐助贵宾 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by 高月smile at 2016-04-18 08:52:27
很感谢您提供了很好的思路,目前参照网上的matlab程序,已经画出了同一半径的不重叠的圆,然而还是不知道如何修正或重新写含有两个不同半径的圆的matlab程序。望您指导,谢谢您!
目前用的生成大圆的程序如下:
...

你这个程序不长,研究下它是怎么判断大圆的,学会思路才能编,你这样只复制张贴永远完不成的,要学会自己编。

发自小木虫Android客户端
4楼2016-04-18 15:23:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

高月smile

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by 淘宝搜费老师 at 2016-04-18 15:23:37
你这个程序不长,研究下它是怎么判断大圆的,学会思路才能编,你这样只复制张贴永远完不成的,要学会自己编。
...

对于以上程序基本上已经熟悉理解了,然而初学还是感到吃力,能推荐一些与此相关的资料吗?我先学习学习。谢谢您!!!
5楼2016-04-18 19:20:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
这是小木虫上少数有一定技术含量的问题;

最好看英文文献,关键词: poisson disk generation

文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
6楼2016-04-18 20:16:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

淘宝搜费老师

捐助贵宾 (小有名气)


商家已经主动声明此回帖可能含有宣传内容

小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
5楼: Originally posted by 高月smile at 2016-04-18 19:20:15
对于以上程序基本上已经熟悉理解了,然而初学还是感到吃力,能推荐一些与此相关的资料吗?我先学习学习。谢谢您!!!...

http://zhidao.baidu.com/link?url ... _pWjy5qOBzEHeYTrZpS
这个最接近,你把里面的多种半径改成两种半径。资料就是matlab入门教程即可,其他的就是自己编了
7楼2016-04-18 20:41:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

高月smile

新虫 (初入文坛)

引用回帖:
7楼: Originally posted by 淘宝搜费老师 at 2016-04-18 20:41:22
http://zhidao.baidu.com/link?url=PlA7HnEYDw5pLvIEt99QnsGaGg2-t556D5j7mDi4nzfnMkXnY7aNh0lcp2zZUtszUcmi2H8lpKks6dYplWm9NJR5_pWjy5qOBzEHeYTrZpS
这个最接近,你把里面的多种半径改成两种半径。资料就是matl ...

真的非常感谢您。
8楼2016-04-19 08:18:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 高月smile 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见