基于python的分子动力学模拟程序编写及应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

0 引言
所谓分子动力学(MD)模拟,是指对于原子核和电子所构 成的多体系统,每一原子核被视为在其它原子核和电子所提 供的经验势场下作牛顿运动,通过计算机模拟该过程,用数 值求解分子体系经典力学运动方程及统计体系的结构特征 与性质的一种技术。[1]
分 子 动 力 学 的 早 期 模 拟 起 源 于 1957 年。Alder 和 Wainwright[2] 通过计算机,利用硬球模型开创了分子动力学 模拟的先河。但由于受计算机速度及内存的限制,早期模拟 的空间和时间尺度都受到很大的约束。后来,人们将分子动 力学模拟方法不断推广完善,如引入更复杂的方肼势、多体 势,提出 Verlet[3]、Leap-frog[1]、Beeman[4]、Gear[5] 等各种 算法,并形成了以微正则系综为代表的各种系综,得到与状 态方程有关的性质、径向分布函数、速度自相关函数 [6]。21 世纪后,计算机的快速发展使得利用内存大、速度快的计算 机模拟更复杂,更符合实际的分子体系成为可能。
分子动力学模拟可以获得纯理论计算和实际实验无法 获得的性质,而且模拟精度高,计算量小,发展潜力巨大。[1]
52
1 研究目的与意义
当今已存在的分子动力学模拟程序,如 lammps 等往往 需要大型计算机等资源,且依赖于 linux 等系统平台,移植性 与通用性不高。本文利用 python3 来编写一套可移植程度高, 代码规模比较小的分子动力学程序模拟二维 He 分子体系 [7] [8] 的变化,进行有关物理量的提取与研究,并通过改变边界 条件、初始条件、截断点位置、时间步长、势函数等来进行有 关性质的进一步研究,进而获得分子动力学的初步结论。
Programming and application of molecular dynamics simulation program based on Python
Ying Shuchang (Hangzhou No. 2 Middle School,Hangzhou Zhejiang, 310053)
2 程序计算过程概述
本文中的程序用 NVE 系综 [1] 来模拟氦气分子体系的 变化。由于设备所ห้องสมุดไป่ตู้,为了方便计算与观察,本文统计的是二 维平面分子体系的情况。如图 1 即为程序的流程图。
第一步,先导入 python 包库,并定义常量和有关物理函数。 其中,分子受到的作用力 (F r)可由 Lennard-Jones 势能 [1][2] 的 负一阶微分导出。Lennard-Jones 势能常用于惰性气体分子。
Abstract:In this paper, a molecular dynamics simulation program is written in python, and the molecular system of He is studied in detail with this program.Different initial conditions, different boundary conditions and truncation points are studied respectively. Under the initial condition that the molecular number is 500 and the initial molecular velocity is 500, the system finally develops into a maxwell equilibrium system after 2.25e-11s.The influence of periodic boundary conditions and rigid boundary conditions on the development of the system is studied respectively.After studying the truncation point, it is found that it must be more than 1.1*sigma (sigma is a constant in l-j potential energy, which can be measured by experiments) as the truncation. If it is less than this value, the system will deviate from the physical reality due to numerical error. It is also found that the potential function has important influence on the development of the system. Key words:molecular dynamics;Lennard-Jonespotential energy;boundary condition;Verlet algorithm;He Molecular System
理论算法
2019.07
基于 python 的分子动力学模拟程序编写及应用
应舒畅 (浙江省杭州第二中学,浙江杭州,310053)
摘要 :本文利用 python 编写了分子动力学模拟程序,并利用该程序对 He 分子体系进行了详细研究。分别研究了不 同初始条件,不同边界条件,截断点位置等的研究。在分子数为 500,分子初速度为 500 的初始条件下,体系最终经过 2.25e-11s 发展成为麦克斯韦平衡体系。分别研究周期性边界条件与刚性边界对系统发展的影响,研究发现周期性边界 条件与刚性边界条件最终对系统的发展没有明显影响。对截断点进行研究后发现,必须选取大于 1.1*sigma(sigma 为 L-J 势能中的常数,由实验可测定)作为截断,如果小于该值,体系由于数值误差将偏离物理实际。同时研究发现势函数 对于体系的发展也具有重要影响。 关键词 :分子动力学 ;Lennard-Jones 势能 ;边界条件 ;Verlet 算法 ;He 分子体系
相关文档
最新文档