CHARMM力场提供了很多生物分子的力场参数,如蛋白质、脂质、核酸等,Gromacs中自带了CHARMM27力场,当然也可在Gromacs官网上下载到已转换成Gromacs支持的CHARMM36力场。不过使用Gromacs做MD模拟的朋友如果想模拟一个Gromacs中没有定义力场参数的分子,如糖,就需要手动为Gromacs添加相关力场参数了。这些力场参数多数从文献中得到,并且一般都是CHARMM格式的,即.prm和.rtf格式,如何将它们转换成Gromacs支持的格式呢?这篇文章会详细讲解转换过程,并且给出python脚本以供参考。

首先分别讲解一下CHARMM软件和Gromacs软件如何完整定义一个分子的力场。在CHARMM软件中,主要通过2个文件来实现:.rtf和.prm。

.rtf文件定义了原子类型、各类型原子的质量、原子偏电荷、分子的键连接以及氢键等,它的格式如图1。MASS是用来定义原子类型的,每一行都定义了一种原子类型。

图1. TIP3水分子的.rtf文件,CHARMM中“!”后面的内容是注释

MASS后面跟着原子编号、原子类型名、原子质量和元素符号。GROUP语句用来定义一个残基(也可以是单独的分子):ATOM定义了残基中各原子的名字、所属的原子类型和该原子所带的偏电荷;BOND定义残基中原子的键连接情况,以原子对形式列出,如图1中的水分子定义了3个键OH2-H1、OH2-H2和H1-H2(最后一个键是SHAKE限制算法用到的);ANGLE定义键角;DONOR和ACCEPTOR分别用来定义氢键供体和受体。

.prm文件中定义了与能量相关的参数,如键伸缩能,键角、二面角的力常数以及范德华参数,图2给出了TIP3水分子的.prm文件。

BONDS数据块是用来定义键伸缩振动能量的,用简谐振动来近似:

BONDS数据块每行有4个字段,前两个是成键原子的类型,后两个分别是公式中的Kb(kcal/Å2/mol)和b0(Å)。

ANGLES数据块用来定义键角振动,同样是用简谐振动来近似:

ANGLES数据每行有5或7个字段,后者是加了Urey-Bradley项的。前3项是形成键角的原子的类型,后面4项分别对

charmm在Linux中的使用方法,科学网—Gromacs中添加CHARMM力场 - 贾壮的博文相关推荐

  1. matlab中syms怎么替代,科学网—Matlab中的syms与conj - 孔令才的博文

    Matlab提供了强大的符号计算功能,主要利用syms函数创建符号变量,例: >> syms x a b; >> diff(a^(b*x)+exp(a*x^2+b*x),x) ...

  2. linux卸载netcdf,科学网-Ubuntu中安装netcdf4以上方法-伍志元的博文

    netcdf4以上(印象中应该是4.1.3以上)的版本将c和Fortran分开,也就是要先装netcdf-c才能装netcdf-fortran. 电脑出现故障,近期将zlib,hdf5,curl,ne ...

  3. Linux中autoduck批量对接,科学网—用AutoDock进行分子对接教程——半柔性对接 - 杜文义的博文...

    以下所有内容均属于个人学习过程中的总结,如有错误,欢迎批评指正! Autodock分子对接教程 First release:2017-12-20  Last update: 2018-07-24 Au ...

  4. linux中硬链接文件,科学网—Linux:文件的符号链接和硬链接 - 刘洋洋的博文

    参考:中国大学MOOC课程<Linux系统管理>,授课教师:颜晨阳. 推荐阅读: t.cn/RLXkhpc 1 符号(symbolic)链接 与Windows的快捷方式很像,这些文件很小, ...

  5. matlab trapz二重积分函数_科学网—MATLAB中的数值积分方法 - 王福昌的博文

    实际应用中在MATLAB里面都有开发好的命令可以使用,如  quad(), quadl(),quad2d(),triplequad() .需要掌握这些命令的用法. 1. 定积分 trapz(),qua ...

  6. matlab中的mkdir函数_科学网—Matlab中计算函数运行时间的三种方法及判断新建文件夹 - 张伟的博文...

    (一)运行时间 1.tic和toc组合 计算daotic和toc之间那专段程序之间的属运行时间,它的经典格式为 : tic 函数 toc 复制函数代码,当代码遇到tic时Matlab自动开始计时,运行 ...

  7. linux中常用名词解释,科学网—linux中常见名词解释 - 武海丹的博文

    Shell:是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核.(当用户发出 ...

  8. linux中怎么卸载gamit,科学网—Windows下自带Linux使用GAMIT问题 - 陈超的博文

    1.安装略微变化 sudo apt-get update sudo apt-get install gcc sudo apt-get install gfortran sudo apt-get ins ...

  9. python中几种读取文件的方法_科学网—python中几类文件的读写 - 郗强的博文

    所使用python模块为json.csv等. 一.json文件读写 1.JSON简介:其全名为JavaScript Object Notation是一种轻量级的数据交换格式.Json最广泛的应用是作为 ...

最新文章

  1. [二十五]JavaIO之RandomAccessFile
  2. [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十三:在DetailsView控件中使用TemplateField...
  3. docker查看容器创建命令
  4. p,v原语解决和尚挑水问题
  5. unity热更新json_Unity3D热更新 CSHotFix入门教程之HelloWorld
  6. linux下面使用cpdf合并pdf
  7. rediscli shell_redis shell
  8. PAT乙级(1022 D进制的A+B )
  9. WORD单元格底部内容不见了怎么办?
  10. Linux打包压缩.md
  11. topaz全家桶中文_apache 开源项目全家桶 2020年12月中文介绍
  12. win10+anaconda3+python3.7+pytorch-cpu安装
  13. RSA算法生成2048位公私钥
  14. 离散信号的希尔伯特变换的计算公式_离散信号的hilbert 变换.ppt
  15. Android中动态调整ImageView的宽高比
  16. Web3 来临前的准备工作
  17. spring-context.xml
  18. 状态方程的离散化仿真
  19. html常用语义化元素和全局属性整理
  20. win11蓝牙无法连接怎么办?win11蓝牙无法连接的解决方法

热门文章

  1. 深入理解BRep_Curve3d
  2. MT2601原厂datasheet资料下载
  3. Mac 允许安装任何来源软件命令
  4. ios睡眠分析 卧床 睡眠_你知道iOS 时钟里藏了这么一个睡眠小管家? (iOS)
  5. windows清理_Windows自带超强工具,集检测、清理、修复一体!实用收藏
  6. java计算机毕业设计网上蛋糕订购系统源码+数据库+系统+lw文档+mybatis+运行部署
  7. 图像处理之图像特征及提取
  8. 如何运用舆情检测平台进行舆情信息搜集的方法
  9. android serviceconnection 码源分析,Android 7.0以上Accessibility Service DispatchGesture调用流程...
  10. 2_一、Linux中的网络配置