welcome: please sign in
location: Diff for "bdfeasyinput"
Differences between revisions 6 and 8 (spanning 2 versions)
Revision 6 as of 2019-11-07 11:52:50
Size: 4659
Editor: bsuo
Comment:
Revision 8 as of 2019-11-07 11:53:48
Size: 4678
Editor: bsuo
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
"#!bdf.sh
B3lyp/TDDFT/3-21G nroots=10
 #!bdf.sh
 B3lyp/TDDFT/3-21G nroots=10
Line 12: Line 12:
geometry
O 0.000000000 0.000000000 0.369372944
H 0.000000000 -0.783975899 -0.184686472
H 0.000000000 0.783975899 -0.184686472
end geometry
 geometry 
   O 0.000000000 0.000000000 0.369372944
   H 0.000000000 -0.783975899 -0.184686472
  H 0.000000000 0.783975899 -0.184686472
 end geometry
Line 18: Line 18:
$tddft
itda
  1
$tddft
 $tddft
   itda
    1
 $tddft

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

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

R1 = 0.9 A1 = 109. End geometry

#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 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)