这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
adf:creatsubstitutes [2018/02/23 22:08] – liu.jun | adf:creatsubstitutes [2020/11/27 19:43] (当前版本) – [取代基效应研究(批量建模)] liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
======取代基效应研究(批量建模)====== | ======取代基效应研究(批量建模)====== | ||
- | 参考英文教程:[[https:// | + | 本文基于AMS2020.101以上版本。 |
+ | =====准备取代基===== | ||
用户可以创建自己常用的取代基到图形界面中,便于平时使用,创建方法参考:[[adf: | 用户可以创建自己常用的取代基到图形界面中,便于平时使用,创建方法参考:[[adf: | ||
- | 假定用户使用上面介绍的方法,创建了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,来研究取代基效应,方式是类似的。 |
+ | {{ : | ||
+ | |||
+ | =====使用循环批量建模并优化结构===== | ||
进入工作目录,创建结构,例如苯,其中第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 | ||
- | + | ||
- | " | + | " |
- | + | ||
- | | + | sh " |
- | + | ||
- | " | + | " |
+ | |||
mv uff.rkf " | mv uff.rkf " | ||
done | done | ||
</ | </ | ||
+ | 完成。 | ||
- | 说明如下: | ||
- | 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> | + | 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结尾表示做循环,用户照抄即可。 |
- | "$ADFBIN/adfprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/ | + | 下面几行是循环的内容,也就是< |
+ | |||
+ | <code bash>"$AMSBIN/amsprep" -t UFF-GO -m Benzene.xyz -structure "12 Ligands/ | ||
* -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/ | * "12 Ligands/ | ||
- | * > " | + | * > " |
+ | |||
+ | <code bash>sh " | ||
- | sh "./ | + | <code bash>"$AMSBIN/adfreport" |
- | " | + | <code bash> |
- | mv uff.rkf " | + | 最后以done结尾和开头的for呼应,for和done之间的几行,表示循环执行的内容,遍历所有自由基后,循环结束。 |