CAFire_4

[游戏编程] Cellular Automata Forest Fire Model [元包自动机森林火灾模型]

元包自动机(Cellular Automata)这里就不介绍了,可以在我的其他博文中了解到,有兴趣的朋友也可以去百度一切。这里利用元包自动机进行森林火灾蔓延模拟,当然这肯定不是基于物理的模拟了。最简单的基于元包自动机的森林火灾模型(Cellular Automata Forest Fire Model)大家可以在这个网站 Cellular Automata Forest Fire Model 了解到,作者用Java写了小程序进行模拟。 森林火灾模型介绍(The rules of Cellular Automata Forest Fire Model): 燃烧的树(红色格子)会在下一步变成空地(白色格子)。A burning tree (red cell) becomes an empty site (white cell)。 如果一颗非燃烧的树(绿色格子)周围有树燃烧,那么它会在下一步变成燃烧的树(白色格子)。A tree (green cell) becomes …

[Game][游戏] CJD Core Ball [见缝插针游戏]

最近在微信上有一个很火的小游戏——Core Ball,又名见缝插针游戏。游戏有很多个不同的版本,不同人编写。游戏玩法很加单,就是用一个轮盘不断的转,轮盘上插满了球,然后点击鼠标,发射球(针头)到轮盘上,但是球不能和轮盘上已有的球发生碰撞,碰撞则重新玩该关卡。游戏难点是:寻找合适的时机发射球,考验你的耐性,考验你是否眼疾手快。趁着休息时间,我也来编写一个:CJD Core Ball。大家快来玩。

[数学][概率] Buffon’s Needle problem [蒲丰投针问题]

著名的几何概率问题 —— 蒲丰投针问题(Buffon’s Needle problem ),最初由数学家Georges-Louis Leclerc, Comte de Buffon于18世纪提出。问题可表述为:假定长度为L的的针,随机投到画满间距为T的平行线的纸上,求针和平行线相交的概率。同时有趣的是,该概率值和圆周率(PI)有关系,因此,我们可以利用投针试验来计算圆周率(PI)的值。实际上,这个试验有价值的地方在于:我们可以设计一个试验,它的概率与我们感兴趣的一个变量有关,然后通过大量试验来估算这个量,这其实就是目前使用得十分广泛的蒙塔卡罗法(Monte Carlo method)的主要思想。

MiniGetData [图数据提取]

做研究做论文经常要引用别人文章上的数据(曲线)图,一般情况都很难到找到原始数据,而直接截取图片放到自己的文章则显得太不专业了。这个时候,通常需要借助程序,从图片中提取数据生成矢量图。我以前常用GetData Graph Digitizer这款软件,其功能十分强大,基本满足了大部分需求。然而最近在使用GetData的时候,发现提示试用期过了,重新下载也无法使用。无奈之下,花了半天时间模仿GetData,写了个简易版的GetData,并命名为MiniGetData,满足了目前的研究需要。

漂亮的秀曲线图

在网上http://blog.csdn.net/hero82748274/article/details/5304386看到漂亮的秀曲线图。 基本原理很简单,就是沿着某几个方向划分等间距的点,然后将这些方向等间距的点连线。 图形可以有很多种不同的组合情况,比如不同的角度,不同的划分间距。

有趣的数学3D曲面

数学是个很好玩的东西。高等数学中,我们学过很多二次曲面,它们都有很漂亮的3D效果,如下图: 1.椭圆锥面 (公式:z^2=(x^2)/(a^2)+(y^2)/(b^2)) 2.双曲抛物面(传说中的马鞍面)真的很像马鞍,哈哈。(公式:z=(x^2)/(a^2)-(y^2)/(b^2)) 3.椭圆抛物面 (公式:z=(x^2)/(a^2)+(y^2)/(b^2)) 4.椭球面,有点像外星巨蛋,可爱,哈哈。(公式:(x^2)/(a^2)+(y^2)/(b^2)+(z^2)/(c^2)=1) 5.单叶双曲面 (公式:(x^2)/(a^2)+(y^2)/(b^2)-(z^2)/(c^2)=1) 6.双叶双曲面 (公式:(x^2)/(a^2)-(y^2)/(b^2)-(z^2)/(c^2)=1) 7.这个不知道怎么称呼,但是经常见到 (公式:(z^2)*sqrt(x^2+y^2)=a*sin(sqrt(x^2+y^2))^2) 8.不知道叫什么名称,网上找的。(公式:z=a*((Sin(x^2) + Sin(y^2))/Exp(x^2 + y^2)) 9.函数类似matlab中的peak函数,初学matlab的绘图一般都讲这个函数 (公式:z=a*x*exp(-(x^2+y^2))) 10.由sin(x)和cos(y)组成的函数,我想说很像章鱼小丸子。哈哈。 (公式:z=a*cos(x/b)*sin(y/c)) 小结: 1.数学很美。 2.上面的曲面可以很简单的在MATLAB中实现,如果你喜欢,不妨去试一试。