百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

GROMACS中mdp文件注解小结1 gromacs中文教程

suiw9 2024-11-13 14:43 28 浏览 0 评论

一、预处理

title = OPLS Lysozyme MD

标题,可任意定义(最长64 个字,简单点好)


cpp = /lib/cpp

预处理器,与C/C++ 的预处理器一样,默认为(/lib/cpp )


include =

  • 引用文件,即拓扑文件中引用其他文件的路径,引用方式与C/C++
  • 引用一样:格式:-I/home/../include -L/home/../lib

define =

  • -DFLEXIBLE ; 预定义。默认无预定义。可以使用预定义方法控制模拟进程。
  • -DFLEXIBLE 会告诉grompp ,采用柔性的水代替刚性水到拓扑结构,这对于共轭梯度或采用柔性的水代替刚性水到拓扑结构,这对于共轭梯度或l-bfgs 是必要的,而且可以使最陡下降法效果更好。
  • -DPOSRES 会告诉grompp 包括posre.itp 到拓扑结构,用于位置限制动力学模拟。

二、模拟控制

integrator = md ; 动力学模拟方法,即整合牛顿力学定理的方法,根据模拟目的不同选择不同。选项:

动力学模拟方法,即整合牛顿力学定理的方法,根据模拟目的不同选择不同。选项:

  • md : 使用跳蛙算法(leap-frog) 整合牛顿定律。
  • sd : 另外一种跳蛙法统计整合(stochastic dynamics)。使用这个选项时,某个或者某些原子组。使用这个选项时,某个或者某些原子组(tc_grps) 的温度设定为某特定温度(ref_t[K]),这些组运动反方向的摩擦常数可以设定为某一个值,这些组运动反方向的摩擦常数可以设定为某一个值(tau_t[ps]) 。tcoupl 参数在这个选项中被忽略。这个参数的随机算子由ld_seed 设定。(NOTE: 这个方法中温度偏差的回原要比使用这个方法中温度偏差的回原要比使用Berendesen 热浴方法快一倍,即使使用相同的tau_t 值。)
  • bd : 使用Euler 整合方法处理Brownian 或者坐标Langevin动力学模拟,模拟中的粒子的速度为所受力除以摩擦因子动力学模拟,模拟中的粒子的速度为所受力除以摩擦因子(bd_fric[amu ps-1) ,加上一个随机的热力学噪音(bd_temp[K]) 。当bd_fric=0时,模拟粒子的摩擦因子为其质量除以tau_t ,这与sd 方法一致。随机算子由ld_seed 指定。
  • 以下几种算法不是integrators ,但是也在此处指定,主要用于能量最优化模拟等。
  • steep :使用最速下降法进行能量优化,能量优化最大位置移动用emstep[nm]设定,能量最大容忍度由设定,能量最大容忍度由emtol[kJ mol-1nm-1] 决定。
  • cg : 使用共轭梯度法进行能量优化,能量最大容忍度为emtol[kJ mol-1nm-1]决定。在进行最速下降法能量优化之后再进行一次共轭梯度法能量最优化是十分有效的能量最优化综合方法,可以使用nstcgsteep 设定。在要对能量优化进行常态分析时,最好使用双精度的GROMACS,以保证较高的精确度。
  • l-bfgs: 根据low-memory Broyden-Fletcher-Goldfarb-Shanno approach进行的准牛顿算法能量优化。实际中似乎比进行的准牛顿算法能量优化。实际中似乎比cg 收敛更快,但由于必须进行纠正步骤,还没有实现并行。
  • nm : 对tpr 文件中的系统结构进行常态分析。GROMACS 必须为双精度。
  • tpi : 插入测试粒子(Test particle insertion )。拓扑结构的最后一个原子为测试粒子。

Start time and timestep in ps

  • tinit = 0 ; 模拟开始时间。默认为0 ,单位为[ps] 。( 能量最小化用不用,只针对integrator 为md 、sd 和bd 的情况)
  • dt = 0.002 ;时间步长(2fs) 。默认为0.001 ,单位为[ps] 。( 能量最小化用不用,只针对integrator为md 、sd 和bd 的情况)
  • nsteps = 50000 ;最大模拟步数。默认为0 。

For exact run continuation or redoing part of a run

init_step = 0 ;开始步骤,默认为0 。第i 步的时间由下式计算:t = tinit + dt*(init_step + i)。自由能lambda 由此计算:lambda = init_lambda + delta_lambda*(init_step + i) 。非平衡模拟参数依赖于模拟步数。所以重启停止的模拟或重做某部分模拟时,必须设定init_step 为重启那一步。tpbconv自动完成此工作。


mode for center of mass motion removal--- 质心移动

comm_mode = Linear ; 对系统或者系统中各个组质心的操作,有三种选项:

  • Linear :移动质心的平动;
  • Angular :移动质心的转动和平动;
  • No :不对质心进行任何操作。

number of steps for center of mass motion removal

nstcomm = 10 ; 对质心进行操作的频率,默认为10 ,单位为[steps] 。


group(s) for center of mass motion removal

comm_grps = 对质心进行操作的组,可以是索引文件中的一个,或者多个组。默认为整个系统。

相关推荐

设置文件的默认打开方式(如何设定文件的默认打开方式)

在操作系统中,设置文件的默认打开方式可以让特定类型的文件始终使用你选择的程序打开。以下是Windows和macOS系统中设置默认打开方式的详细步骤:Windows系统方法1:通过文件属性设置右键点...

电脑怎么设置默认浏览器(电脑怎么设置默认浏览器?)

在电脑上设置默认浏览器的步骤因操作系统不同而有所差异。以下是Windows和Mac系统的设置方法:Windows系统方法1:通过系统设置打开“设置”:...

Java接口默认方法:灵活与约束并存

Java接口默认方法:灵活与约束并存在Java编程的世界里,接口作为定义行为规范的重要工具,一直扮演着举足轻重的角色。然而,在Java8引入了默认方法之后,接口的设计和使用方式发生了微妙的变化。今天...

Java8新特性之默认方法:为接口注入灵魂

Java8新特性之默认方法:为接口注入灵魂Java8发布时,它带来的最大创新之一就是接口的默认方法。这就像给一个传统的木偶注入了生命,让它不仅能动还能说话了。今天我们就来聊聊这个让Java开发者欢呼雀...

CentOS系统在不重启的情况下为虚拟机添加新硬盘

一、概述用过虚拟机的都知道,如果在系统运行的时候去给虚拟机添加一块新设备,比如说硬盘,系统是读取不到这个新硬盘的,因为系统在启动的时候会去检测硬件设备。但是我们也可能会遇到这样的情况,比如正在运行比较...

[常用工具] 基于psutil和GPUtil获取系统状态信息

本文主要介绍在Python3中利用psutil库获取系统状态,利用GPUtil获取gpu状态。psutil(processandsystemutilities)(进程和系统实用程序)是一个跨平...

Docker容器内执行宿主机指令(docker执行宿主机shell)

一背景最近项目有个需求,需要程序配置服务器IP并且可以重启服务器。如果程序直接部署在服务器,相信大家都会操作。但是程序是用docker运行的,在docker中执行指令就很麻烦了。...

容器网络调试怎么办?一条命令就搞定!

nsenter命令是一个可以在指定进程的命令空间下运行指定程序的命令。它位于util-linux包中。用途...

linux自动化巡检脚本集(linux服务器巡检内容以及标准)

以下是一个自动化巡检脚本集的制作方案,包含常见系统检查项和可扩展框架,使用Python和Shell脚本实现:...

麒麟KOS|统信UOS系统添加新数据盘
麒麟KOS|统信UOS系统添加新数据盘

原文链接:麒麟KOS|统信UOS系统添加新数据盘...

2025-03-26 16:57 suiw9

Linux CentOS 7 根目录扩容(linux扩展根目录磁盘空间)

一、现状描述现有一台CentOS7的虚拟机,硬盘容量为30GB通过lsblk命令查看分区容量,当前根目录容量为27.5GB左右二、扩容需求...

从Linux底层分析Docker原理(linux docker-compose)

写在前面如果你觉得本人对你有帮助,请你记得评论,点赞,关注;如果你觉得文章还不错请记得收藏,点赞。如果你觉得文章非常的好可以私信我,我会在第一时间回复你。...

CentOS新增硬盘的使用步骤(centos扩展硬盘)

一、查看机器所挂硬盘个数及分区情况,新增硬盘为/dev/sdb...

Python之psutil库简介(python3 pil库)

psutil(pythonsystemandprocessutilities)是一个跨平台的第三方库,能够轻松实现获取系统运行的进程和系统利用率(包扩CPU、内存、磁盘、网络等)信息。它主...

运维,你还不会查看Linux系统cpu信息?

CPU也称为微处理器或简称为处理器。就像大脑如何控制人体一样,CPU控制着计算机的所有部分。因此CPU被认为是计算机的大脑。那我们怎么在Linux系统中查看如IntelCorei3、i5、AM...

取消回复欢迎 发表评论: