zhongwei2284的个人博客分享 http://blog.sciencenet.cn/u/zhongwei2284

博文

球面上的布朗运动2--更简单的模拟方法 精选

已有 4452 次阅读 2017-5-14 17:38 |个人分类:那些贝壳们|系统分类:科研笔记| 布朗运动, 球面, 随机行走, 均方位移, 正常扩散

     之前博文介绍过一种通过切平面模拟球面上的布朗运动的办法(球面上的布朗运动 http://blog.sciencenet.cn/home.php?mod=space&uid=739225&do=blog&id=1052159  ) , 除了这种方法之外,还有其他可以在球面上产生随机运动的方法吗?当然,其中有一种方法饶有趣味 [1],我们都直到一维的圆可以通过一点与某固定点(圆心)组成的直线旋转360度得到,而二维球面可以利用某个圆旋转180度得到,那么球面也将是三维球体的赤道(三维的球到底会长成啥样??),赤道周围环绕着薄带(宽度为E),因而可以通过在三维球面上产生布朗粒子(已经有比较有效的办法),让产生的布朗粒子与薄带上的点对应起来,当取极限E-->0,则得到了二维球面上的布朗运动情况了。当然,这里需要介绍的并不是这个先跑到三维球面再跑回二维球面的办法。


Fig.1球坐标系示意图

  我们都知道,二维的球面可以用球坐标系建立其角度与球面上的点的关系,即:

x=rsinθcosφ

y=rsinθsinφ

z=rcosθ

  对于单位球,半径为1,此时,只需要选择角度thetafai随机变化,利用随机数,让thetafai和平面上的xy一样。当考虑二维平面的随机行走时,粒子有四种选择,分别是向上(0,1),向下(-0,-1),向左(-1,0),向右(1,0。此时的thetafai同样可以有类似的组合,即考虑粒子的下一步是向东走一步,或者向西,或者向北,或向南。

     每次的结果位置做为新的起点位置重复此上面的操作。最终可以得到球面上的布朗运动的轨迹如Fig.2所示:



Fig.2球面上的布朗运动。图中,1t=4000此的结果,2t=40000此的结果,3t=200000此的结果,t为布朗粒子运动的步数(或称之为时间)


  对于二维平面上的布朗运动,我们都知道在无其他干扰的情况下,是属于正常扩散的,即布朗粒子的均方位移(meansquare displacement)随着时间t的关系为

<r^2>~ t1  

其中<>是求平均。

  通过计算,可以得到此时的球面上布朗粒子的运动的均方位移与时间的关系见Fig.3,



Fig.3球面上的布朗粒子的均方位移与时间的关系

 啊哈,看来球面上的布朗粒子依然是正常扩散!

 那么问题来了,如果球面上的布朗运动可以通过这种方法产生,那切平面的办法还有必要吗?当然,切平面的方法可以对任意的曲面都适用呢!一般情况,曲面上的点总是可以得到切平面的,如果要考虑凹凸不平的曲面上的布朗粒子的运动,我们只能用类似于切平面方法的方法了。

注1:本文只是对上篇博文(球面上的布朗运动 http://blog.sciencenet.cn/home.php?mod=space&uid=739225&do=blog&id=1052159))  的一个补充。

注2:Fig. 1 来自网络

Reference:

[1]T. Carlsson, T. Ekholm, and C. Elvingson, “Algorithm for generating a Brownian motion on a sphere,” J. Phys. A: Math. Theor. 43 , 505001-1–10 (2010).




http://blog.sciencenet.cn/blog-739225-1054909.html

上一篇:主动布朗粒子

2 刘殊远 haipengzhangdr

该博文允许注册用户评论 请点击登录 评论 (1 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2020-9-27 22:16

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部