welcome: please sign in
location: Diff for "bdfeasyinput"
Differences between revisions 10 and 11
Revision 10 as of 2019-11-07 11:59:56
Size: 4871
Editor: bsuo
Comment:
Revision 11 as of 2019-11-07 12:01:44
Size: 4988
Editor: bsuo
Comment:
Deletions are marked like this. Additions are marked like this.
Line 41: Line 41:
例: 1直角坐标形式输入几何结构 1: 直角坐标形式输入几何结构
{{{
Line 46: Line 47:
}}}
Line 47: Line 49:
2 内坐标形式输入 2: 内坐标形式输入
{{{
Line 53: Line 56:
}}}
Line 54: Line 58:
例3: 内坐标形式输入
{{{
Line 62: Line 68:
}}}
Line 63: Line 70:
#H2O的坐标输入,势能面扫描,键长从0.75 开始,按照0.05 step,计算20个点。 例4: 内坐标形式输入,势能面扫描
H2O的坐标输入,势能面扫描,键长从0.75 开始,按照0.05 step,计算20个点。
{{{
Line 71: Line 80:
}}}

BDF极简输入开发指南

BDF输入文件的结构

BDF极简输入有四个功能块组成,如下:

 #!bdf.sh
 B3lyp/TDDFT/3-21G nroots=10

 geometry 
   O  0.000000000   0.000000000    0.369372944
   H  0.000000000  -0.783975899   -0.184686472 
  H  0.000000000   0.783975899   -0.184686472 
 end geometry 

 $tddft
   itda
    1
 $tddft

第一输入块

只有一行,以 “#!” 开始,后面为输入脚本名字,例如 #!ch2.bdf

第二输入块

从第二行开始,至geometry行前一行结束。 这一输入块,可能由多行组成,是BDF的命令行控制行,用于指定BDF做什么计算任务,采用什么方法,命令行内容以空格作为间隔分开不同的关键词。

第三输入块

本块输入几何结构,从 geometry行起始,到end geometry结束。几何结构可以按照直角坐标,内坐标,或指定xyz文件的形式输入。 注意,geometry域可以指定 1 简单分子结构输入。 2 通过指定xyz文件定义分子结构 3 简单内坐标模式 4 内坐标模式,定义势能面扫描 5 内坐标模式,定义冗余内坐标进行结构优化 5 定义分子片,支持FLMO,Oninm等计算模式。

例1: 直角坐标形式输入几何结构

Geometry
H. 0.00. 0.00 0.00
H. 0.00. 0.00 0.00
End geometry

例2: 内坐标形式输入

Geometry
O
H  1   0.9
H. 1   0.9. 2. 109.0
End geometry

例3: 内坐标形式输入

Geometry
O
H  1   R1
H. 1   R1.  2  A1

R1 = 0.9
A1 = 109.
End geometry

例4: 内坐标形式输入,势能面扫描 H2O的坐标输入,势能面扫描,键长从0.75 开始,按照0.05 step,计算20个点。

Geometry
O
H  1   R1
H. 1   R1  2  109

R1. 0.75 0.05 20
End geometry

第四输入块

End geometry行后的所有行为第四个部分,与BDF的传统输入格式相同,用于精确控制各BDF计算模块的参数。这些参数将被加入BDF输入中,具有最高的控制优先级。

BDF 极简输入开发指南

BDF simplified input 处理流程

Bdftaskflow

  • |

read_bdf_simplified_input(inputfile)

  • |

bdfenergy, bdfopt, pdfts, bdfscan

  • |

Write input into a hide file named “.bdfinput” in BDF_TMPDIR directory

#

1 python函数 read_bdf_simplified,用于读输入文件,返回字典 bdfcontrol, userinput, geom bdfcotrol包含的键 pecmethod,energymethod, xcfun, basis, keywordlist pecmethod, pecmethod,energymethod, xcfun, basis, 允许的键值分别定义 在bdfdb.py中的相关列表中 另外的键 nuclearcharge,charge, spin 分别定义总原子核电荷,电荷和自旋多重度,其中charge和spin用于定波函数,spin=2S+1

userinput 中返回用户在第四个输入域中输入的BDF个计算模块的控制参数,将被直接插入BDF个模块输入,userinput的控制参数具有最高的优先级,可以覆盖程序默认的参数。

geom返回几何结构信息。

2 bdfenergy产生BDF能量计算任务的输入,并返回到列表inputli中,runlist返回BDF给定能量计算任务所调用的模块顺序,

bdfenergy(method,geom,basis,keywords,userinput) 参数method指定能量计算方法,SCF,TDDFT,MCSCF,MP2等 Geom 分子结构 basis 基组 keywords 用户在BDF输入中指定的关键词及其值,所许可的关键词定义在bdfdb.py中的bdfcontrlkeys中。这些关键词可能用于控制BDF计算模块的参数,也可控制计算流程。 Userinput 是用户定义的高级输入,将被直接插入BDF输入文件。

bdfenergy的处理流程 1 确定runlist 2 根据runlist产生最小输入文件,插入默认关键词及值 3 在compass中插入几何结构,基组 4 根据具体计算任务插入或删除默认关键词 5 根据BDF输入第二部分控制域关键词修改runlist中相应计算模块的关键词 6 根据userinput插入用户定义的控制关键词, 注意,userinput最后处理,所有有最高的控制优先级。

BDF输入类 class_bdfmoduleinp BDF的输入处理采用了面向对象的编程思想,类class class_bdfmoduleinp的数据段为字典input,字典input的键对应着BDF计算模块控制关键词,键值是关键词的值。

class_bdfmoduleinp的操作有: init_bdfmoduleinp操作,对每个BDF的计算模块,class_bdfmoduleinput在初始化时产生该模块的默认输入集合,默认关键词与值在bdfdb.py中的字典bdfinpdb中定义。

ResetKeywords操作,重新初始化本模块的输入 AddKeywords操作, 插入关键词及值,如果关键词已存在,用新值覆盖旧值,本操作通过调用SetKeywordValue操作实现。

DeleteKeyword 操作, 删除指定关键词

SetKeywordValue 操作, 设置关键词及值,注意:这个操作会根据已登记的BDF关键词检查输入数据是否合法。

bdfeasyinput (last edited 2020-08-16 04:59:35 by bsuo)