如何在lammps中用蒙特卡洛方法进行分子模拟?

如何在lammps中用蒙特卡洛方法进行分子模拟?,第1张

LAMMPS是专门做分子动力学(MD)模拟的程序。它跟蒙卡完全是两种截然不同的方法。简单的蒙卡code规模很小,你可以自己写 —— 需要一个随机数发生器,一个抽样算法(比如metropolis,接近临界时可用swendson-wang),一个构型空间(如离散化的模型)。针对专门的问题,一般会有专门优化过的程序甚至做好的构型供抽样。
“ LAMMPS is a classical molecular dynamics code that models an ensemble of particles in a liquid, solid, or gaseous state It can model atomic, polymeric, biological, metallic, granular, and coarse-grained systems using a variety of force fields and boundary conditions ”
当然LAMMPS也提供了蒙卡功能:
巨正则系综蒙卡:>简单的办法, 取两列全部输入 =randbetween(0,1000000)/1000000, 取得0-1之间的随机数, 模拟随机点坐标
第三列 =if((A1A1+B1B1)<=1, "A", "B"), 判断点是否落在圆内。 在这赋值A, 否则为B
第四列=countif(C:C, "A") 统计圆内点数
=countif(c:C, "B") 统计圆外点数
两者相除就得出Pi值。
数量有限,所以偏差较大, 我得到的是 3653244166。 而已。 如果用VBA,再加3个零估计会比较准确一点。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13070764.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存