分子动力学

按标签浏览

 
 

NAMD

NAMD于上世纪90年代末诞生于伊利诺伊大学香槟分校的理论与计算生物物理研究组,由Klaus Schulten带领的研究团队主导开发。NAMD诞生之时生物大分子的动力学模拟领域已有包括CHARMM和Amber在内的数个成熟软件,但多数尚未在逐渐流行的大规模并行硬件系统上取得良好的性能。NAMD的开发者将该软件的最重要特色定位为可扩展性,专门针对大规模高性能并行计算,从NAMD最初的名称来源Not Another Molecular Dynamics program也可见其初心。NAMD的开发很大程度上得益于伊利诺伊大学香槟分校强大的计算理论学术资源,从设计到实现和优化一直由Laxmikant Kale带领的并行编程实验室团队参与其中。计算机及应用数学领域专业人士的参与使得NAMD在算法实现的稳健性及代码结构的合理性上都具备明显的长处。该软件在设计上与大部分同类软件最大的区别在于基于Charm++的并行模式。Charm++是伊利诺伊大学并行编程实验室开发的并行编程框架,为NAMD及多个其他领域的科学计算软件提供了坚定的基石。NAMD开发者曾在公开报告中表示NAMD的开发是直接由计算科学研究驱动的。该软件于2002年获得戈登贝尔奖。

GROMACS

GROMACS于上世纪90年代初诞生于哥廷根大学Berendsen实验室,其开发初衷是发展一个并行的分子动力学软件,初版功能主要基于van Gunsteren和Berendsen开发的串行动力学软件GROMOS。虽然与GROMOS有很深的渊源,GROMACS诞生之后两个软件各自独立发展,分别由Berendsen实验室和van Gunsteren维护和开发,在功能和特性上也渐趋不同。van Gunsteren实验室侧重于与GROMOS同名的力场的开发,Berendsen实验室则在动力学软件本身的开发尤其是性能提升方面取得了很多进展。从2001年开始,GROMACS的开发维护工作由瑞典KTH皇家技术学院的Science for Life Laboratory主导。GROMACS主体代码使用C语言,近年来正逐步过渡到C++,代码开源。在发展历程中GROMACS一直强调性能优化,其运行效率尤其是单机计算效率在多个benchmark中明显优于几个主流同类软件。时至今日,高度优化的计算性能和代码的开放性为GROMACS赢得了众多的用户,使之成为目前生物系统分子动力学模拟领域中最常用的软件。当前版本为2016,代码量约百万行。

LAMMPS

LAMMPS ("Large-scale Atomic/Molecular Massively Parallel Simulator",大尺度原子/分子并行模拟工具)是由桑迪亚国家实验室开发的一套分子动力学模拟的开源程序包。LAMMPS最初为一美国政府与私人机构合作项目,由美国能源部与另外三所私有企业实验室合作开发。目前由桑迪亚国家实验室负责维护和发布。LAMMPS当前使用C++编写,早期版本使用Fortran77以及Fortran90。在材料体系的模拟中应用非常广泛,同时也支持生物分子模拟。

CHARMM

CHARMM于70年代末诞生于Martin Karplus小组,其前身正是历史上首次尝试基于蛋白质结构计算能量所使用的程序。该程序最初基于Lifson的consistent force field (CCF),其后由Bruce Gelin和Andy MacCammon等发展,成为从结构到相互作用再到动力学模拟的一套方法。1983年正式发表文章。正是由于与蛋白质的计算机模拟发展史息息相关,CHARMM同时也是领域内历史最悠久、使用最广泛的一种力场的名称。数十年来,CHARMM软件及力场与生物大分子的动力学模拟方法一直同步发展,参与的开发人员来自世界各地,而主要贡献者多半曾是Martin Karplus的学生或博士后合作者。软件主要使用Fortran开发,现有代码量约百万行。由于参与软件开发的人员大部分同时也是算法本身的开发者,该软件集成了生物大分子动力学模拟领域的各种前沿算法。也正是由于这种松散组合及各自相对独立的开发模式,软件体量和复杂程度不断增大,各模块之间关系复杂,为维护和性能优化带来一定的困难。目前的开发维护协调工作由Charles Brooks III group at Umich负责。基本上每年一个主版本,a为测试,b为稳定,最新稳定版本为c41b1。