计算化学公社
标题:
求助 请问gromacs top的[atoms]里哪些是必须项?
[打印本页]
作者Author:
lqhenwunai
时间:
2020-8-31 11:28
标题:
求助 请问gromacs top的[atoms]里哪些是必须项?
本帖最后由 lqhenwunai 于 2020-8-31 15:56 编辑
大家好,请问一下在gromacs的top文件里的[atoms]里,哪些是必须的?
我在尝试修改添加力场,其中在修改[atoms]部分时,一个测试是如下所示:
[ atoms ]
; nr type resnr residue atom cgnr charge mass
1 OD2C1D 1 LIG O 1 0 15.5994
2 CD2O1D 1 LIG C 1 0 11.611
3 OD305A 1 LIG O 1 0 15.5994
另一个测试是删除其中的residue那一列。我原本以为删除residue那列后,会报错,结果在grompp时竟然没有报错。
所以请问一下哪些项是必须的?
从代码看,
/* Fixed parameters */
if (sscanf(line, "%s%s%s%s%s%d",
id, ctype, resnumberic, resname, name, &cgnumber
) != 6)
{
too_few(wi);
return;
}
sscanf(id, "%d", &atomnr);
if ((type = get_atomtype_type(ctype, atype)) == NOTSET)
{
gmx_fatal(FARGS, "Atomtype %s not found", ctype);
}
ptype = get_atomtype_ptype(type, atype);
/* Set default from type */
q0 = get_atomtype_qA(type, atype);
m0 = get_atomtype_massA(type, atype);
typeB = type;
qB = q0;
mB = m0;
似乎这几项是必须的:id , ctype, resnumberic, resname, name, &cgnumber。如果这样的话,那ctype指的是OD2C1D这样的原子类型么?
另外感觉很困惑的是,怎么知道哪一列属于哪个类别呢?比如如果包括residue那一列,那第6列读入的就是charge group number。但如果不包括residue那一列,那读第6列就是charge那一列。这样的话在赋值的时候就有歧义了。我相信在其它地方肯定有验证,但是想不出是怎么验证的。
作者Author:
sobereva
时间:
2020-8-31 17:48
就照标准格式写就完了,[atoms]字段在手册里都有说明,探究当前这个问题没什么意义。实在不放心的话可以gmx dump把最终得到的tpr里的信息打印出来看
欢迎光临 计算化学公社 (http://bbs.keinsci.com/)
Powered by Discuz! X3.3