用户工具

站点工具


adf:creatsubstitutes

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
adf:creatsubstitutes [2018/02/23 22:09] liu.junadf:creatsubstitutes [2020/11/27 19:43] (当前版本) – [取代基效应研究(批量建模)] liu.jun
行 1: 行 1:
 ======取代基效应研究(批量建模)====== ======取代基效应研究(批量建模)======
-参考英教程:[[https://www.scm.com/doc/Scripting/Commandline_Tools/ADFprepTutorial.html#tutorial-generate-structures-for-substituent-effects-screening| Generate structures for substituent effects screening]] +基于AMS2020.101以上版本。 
 +=====准备取代基=====
 用户可以创建自己常用的取代基到图形界面中,便于平时使用,创建方法参考:[[adf:creatsubstitueintoGUI]] 用户可以创建自己常用的取代基到图形界面中,便于平时使用,创建方法参考:[[adf:creatsubstitueintoGUI]]
  
-假定用户使用上面介绍的方法,创建了N个自由基,或者直接使用现成的ligands(点击苯环形状的“结构”按钮 > Ligands)中的CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine,方式类似。+假定用户使用上面介绍的方法,创建了N个自由基,或者直接使用现成的ligands(点击苯环形状的“结构”按钮 > Ligands)中的CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine,来研究取代基效应,方式类似
  
 +{{ :adf:adfprep_title_picture.png?650 }}
 +
 +=====使用循环批量建模并优化结构=====
 进入工作目录,创建结构,例如苯,其中第12号原子是H。我们尝试将12号H原子替换成上述自由基,并使用UFF力场优化,生成新的一系列结构,步骤如下: 进入工作目录,创建结构,例如苯,其中第12号原子是H。我们尝试将12号H原子替换成上述自由基,并使用UFF力场优化,生成新的一系列结构,步骤如下:
  
 第一步:导出苯分子的结构(ADFinput > Export Coordinates,保存为*.xyz文件,例如这里命名为Benzene.xyz)到当前工作目录 第一步:导出苯分子的结构(ADFinput > Export Coordinates,保存为*.xyz文件,例如这里命名为Benzene.xyz)到当前工作目录
  
-第二步:使用如下脚本:+第二步:在该文件夹内运行脚本文件
 <code bash> <code bash>
 #! /bin/sh #! /bin/sh
 # #
- + 
 for ligand in CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine; do for ligand in CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine; do
- +  
-   "$ADFBIN/adfprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/$ligand.adf" > "benzene_$ligand.run" +   "$AMSBIN/amsprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/$ligand.ams" > "benzene_$ligand.run" 
- +  
-   sh "./benzene_$ligand.run" +    sh "./benzene_$ligand.run" 
- +  
-   "$ADFBIN/adfreport" uff.rkf SDF > "benzene_$ligand.mol" +   "$AMSBIN/amsreport" uff.rkf SDF > "benzene_$ligand.mol" 
 + 
    mv uff.rkf "benzene_$ligand.rkf"    mv uff.rkf "benzene_$ligand.rkf"
 done done
 </code> </code>
 +完成。
  
-说明如下: 
  
-for ligand in CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine; do  这一行,用户可以根据自己需要,修改ligand这个词,ligand是一个变量,用户可以随便改为其他名字,但不能包含中文、空格,在这里,ligand代表的是一系列自由基的名字,也就是:CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine,这些名字用一个(或者多个)空格隔开,以分号结尾,之后for开头、do结尾表示做循环,用户照抄即可。+====脚本解释====
  
-下面是循环内容也就<color gren>将$ligand替换成自由基的名字</color>,一个运行下面的内容+for ligand in CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine; do  这一行,用户可以根据自己需要修改ligand这个词,ligand一个变量,用户可以随便改为其他名字,但不能包含中文、空格,在这里,ligand代表的是一系列自由基的名字,也就是:CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine,这些名字用一个(或者多)空格隔开,以分号结尾。for开头、do结尾表示做循环,用户照抄即可
  
-<code bash>"$ADFBIN/adfprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/$ligand.adf" > "benzene_$ligand.run" </code>这一行中:+下面几行是循环的内容,也就是<color gren>将$ligand替换成自由基的名字</color>,一个一个运行下面的内容。 
 + 
 +<code bash>"$AMSBIN/amsprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/$ligand.adf" > "benzene_$ligand.run" </code>这一行中:
   * -t UFF-GO表示使用UFF力场优化结构,字母t是task的意思,GO是geometry optimization的意思;   * -t UFF-GO表示使用UFF力场优化结构,字母t是task的意思,GO是geometry optimization的意思;
   * -m Benzene.xyz字母m是molecule的意思,后面接的是我们一开始创建好的苯分子的xyz文件;   * -m Benzene.xyz字母m是molecule的意思,后面接的是我们一开始创建好的苯分子的xyz文件;
   * "12 Ligands/$ligand.adf"其中12是我们希望替换的原子的编号,也就是12号原子——H,<color gren>依次替换成Ligands里面的CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine</color>,<color gren>用户如果自建自由基,这里Ligands/换成自由基的完整路径即可</color>   * "12 Ligands/$ligand.adf"其中12是我们希望替换的原子的编号,也就是12号原子——H,<color gren>依次替换成Ligands里面的CN CO CO3 NC NH2 NH2CH3 NH3 OC OCH3 OH PH3 Pyridine</color>,<color gren>用户如果自建自由基,这里Ligands/换成自由基的完整路径即可</color>
-  * > "benzene_$ligand.run" 其中>表示替换后生成名为benzene_$ligand.run的文件,当然$ligand会被程序自动变成自由基的名字+  * > "benzene_$ligand.run" 其中“大于号”表示替换后生成名为*.run的文件 
 + 
 +<code bash>sh "./benzene_$ligand.run"</code>表示运行该*.run文件
  
-sh "./benzene_$ligand.run"表示运行该*.run文件,$ligand会被自动替换成自由基的名字+<code bash>"$AMSBIN/adfreport" uff.rkf SDF > "benzene_$ligand.mol"</code>表示将生成的结构导出为*.mol文件
  
-"$ADFBIN/adfreport" uff.rkf SDF > "benzene_$ligand.mol",表示将生成的结构导出为*.mol文件,$ligand会被自动替换成自由基的名字+<code bash>mv uff.rkf "benzene_$ligand.rkf"</code>将生成的rkf文件根据自由基的名字重新命名
  
-mv uff.rkf "benzene_$ligand.rkf"将生成rkf文件根据自由基名字重新命名$ligand会被自动替换成自由基的名字+最后以done结尾和开头的for呼应for和done之间几行,表示循环执行内容遍历所有自由基后,循环结束。
adf/creatsubstitutes.1519394951.txt.gz · 最后更改: 2018/02/23 22:09 由 liu.jun

© 2014-2022 费米科技(京ICP备14023855号