Posts
学习与思考
莫听穿林打叶声,何妨吟啸且徐行。竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生。
学习与思考
Gromacs中的角度,距离等分析工具的使用都涉及到特殊的分组方法,能不能以合适的格式分组是计算成功的关键。
选取分组主要有两种方法,一是直接在命令中使用Select语法进行分组,二是建立相应的索引文件。
第一种方法更加灵活并支持动态选区,可以在命令中直接用''
括起来放入其中。当然前提是整个体系中原子命名等信息不能有重复。例如在一条碳链中,每个碳最好分别命名为”C1”“C2”…而不能统一命名为”C”,这样将很难通过Select语法来甄别。例如,要是要计算一条碳链与z轴之间的夹角,则可以使用命令 gmx gangle -f ..xtc -s ..tpr -n ..ndx -g1 vector -group1 'name C1 C5 permute 1 2' -g2 z -oav -oall -oh
。此处的'name C1 C5 permute 1 2'
意为从名为C1的原子指向名为C5原子的向量,1 2
表明向量的方向从第一组指向第二组。有关Select详细的语法和使用实例在李老师的博文中有详细的介绍,感兴趣的可以访问这里GROMACS选区(selection)语法及用法。
若是没有明智地提前将原子名称区分好,或是即使用Select语法也无法选定特定的组,就只好通过建立相应的索引文件了。在distance与gangle等命令中所用的组往往需要选定两个位置,这两个位置应当在索引文件中成对出现。若是作为向量,则是从第一个向量指向第二个向量。同理,对于需要三个位置的组,则应三个为一行。下面是个简单的例子:
[ Vector1 ] 1 5 2 6 3 7 ... [ Plane1 ] 1 3...