详细内容

ifdef 语句

GROMACS 有一个非常强大的功能,你可以在top文件中使用 #ifdef 语句。

通过使用这一语句以及与之相关的#define语句,像之前在 amber99.ff/forcefield.itp 文件中看到的那样,在同一个top文件可以为分子使用不同的参数。

下面给出 TFE 的一个例子,其中的一个选项控制了原子使用哪种电荷:De Loof 等人给出的电荷还是 Van Buuren 和 Berendsen 给出的电荷。

实际上,你可以使用 C 预处理器 cpp 的大部分功能,因为grompp包含了类似的预处理函数用以扫描文件。

使用 #ifdef 选项的方法如下:

• 在mdp文件(包含grompp的输入参数)中使用 define = -DDeLoof 选项,或者,在top或itp文件中提前使用 #define DeLoof 语句

• 将 #ifdef 语句放在top中,如下所示:


pdb2gmx使用同样的机制来实现是否使用位置限制(位置限制一节),具体作法是通过使用#include 来包含itp 文件,而此文件只有设置了特定的 #define (并且拼写正确!)时才会有意义。

image.png


上一篇限制下一篇文件布局说明
最新评论
请先登录才能进行回复登录
技术支持: CLOUD | 管理登录
seo seo