计算化学公社
标题:
长链聚合物建模小工具
[打印本页]
作者Author:
wawdtam123
时间:
4 hour ago
标题:
长链聚合物建模小工具
分享一个做聚合物动力学模拟的简单小工具,这个小工具内容是python建聚合物模型+sobtop生成itp文件。
[url=]polytop.tar.gz[/url]
工具的参数设置步骤如下:
输入文件:输入一个聚合物的重复单元结构,pdb文件——input参数
重原子定义:指定头原子和尾部两个原子名称,其中TA是尾原子,TA2是尾原子的上一个重原子(蓝色圈)——HA,TA,TA2参数
取代氢定义:指定要删去的氢原子名称(红色圈)——HH,TH参数
设置重复单元数量——DIM参数
设置聚合物链数——CHAIN参数
电荷类型设置,CHARGE写custom就会读CHG1、2、3的内容给聚合物头中尾分配电荷,这时需要提供电荷值txt文件;写MMFF94就直接用sobtop+obabel计算MMFF94电荷,不需要提供CHG1、2、3——CHG1,CHG2,CHG3,CHARGE参数
工具处理流程:
读重复单元的pdb文件,得到三个重原子的坐标,将HA坐标移到原点,TA2坐标移到Y轴上,得到平移距离和旋转角度,对其他原子也进行相同的旋转和平移操作。然后将新坐标下的结构复制一份,沿Y轴平移,移动到下一个单元的HA和上一个单元TA的距离为1.54埃米(因为做的是C骨架,距离就写了1.54,如果是别的对应着改就行),重复到一条链构建完毕,然后沿着Z轴间隔1nm复制一个份。最后将一条链的结构给sobtop生成top文件,得到的聚合物结构和top就可以直接用gromacs跑模拟了。
运行方式
bash poly_top.sh config.txt
(config.txt里面就是以上参数)
注意:
给的重复单元骨架最好是直的。如果建出来不是直的,在GaussView里面clean一下。
默认是用sobtop的GAFF力场。
如果要想多条链不是平行放置而是随机放置,我建议用一条链的结构给packmol建多条链。
运行之前准备一个conda环境,因为需要numpy和openbabel进行计算。
在Linux下运行
更多内容详见README。
作者Author:
pal
时间:
halfhour ago
“移动到下一个单元的HA和上一个单元TA的距离为1.54埃米”,上一个单元的TA应该是要被删除的吧?
平移的时候直接把复制的1号原子移到原本的18号原子处,然后根据复制的1号原子和原本的16号原子的类型适当调整距离,得到原本1号原子到复制后的1号原子位置的向量,把复制的原子集体位移会不会更方便。
欢迎光临 计算化学公社 (http://bbs.keinsci.com/)
Powered by Discuz! X3.3