Source code for SPEC.EVC

"""A typical **MOMAP** control file momap.inp can be as follows:



.. code-block:: bash


    do_evc                 = 1
    do_spec_tvcf_ft        = 0
    do_spec_tvcf_spec      = 0
    do_ic_tvcf_ft          = 1
    do_ic_tvcf_spec        = 1
    do_isc_tvcf_ft         = 0
    do_isc_tvcf_spec       = 0
    do_spec_sums           = 0  

    &evc 
    ...
    /   

    &spec_tvcf
    ...
    /   

    &ic_tvcf 
    ...
    /   

    &isc_tvcf 
    ...
    /   

    &spec_sums
    ...
    /



The typical **evc** control with momap.inp can be as follows:


.. code-block:: bash

    do_evc          = 1                   #1 表示开启dushin计算,0 表示关闭

    &evc
      ffreq(1)      = "s0-freq.log"       #基态结果的日志文件
      ffreq(2)      = "s1-freq.log"       #激发态结果的日志文件
    /

or


.. code-block:: bash

    do_evc          = 1                   #1 表示开启dushin计算,0 表示关闭

    &evc
      ffreq(1)      = "s0-freq.log"       #基态结果的日志文件
      ffreq(2)      = "s1-freq.log"       #激发态结果的日志文件
      fnacme        = "nacme.log"         #nacme计算输出文件
      sort_mode     = 1                   #模式
    /

or


.. code-block:: bash

    do_evc          = 1                   #1 表示开启dushin计算,0 表示关闭

    &evc
      ffreq(1)      = "s0-freq.log"       #基态结果的日志文件
      ffreq(2)      = "s1-freq.log"       #激发态结果的日志文件
      ftdipd        = "numfreq-es.out"    #dip计算输出文件
      sort_mode     = 1                   #模式
    /


or


.. code-block:: bash

    do_evc              = 1               #1 表示开启dushin计算,0 表示关闭

    &evc
      ffreq(1)          = "s0-freq.log"   #基态结果的日志文件
      ffreq(2)          = "s1-freq.log"   #激发态结果的日志文件
      if_add_int_coord  = .t.             #是否增加化学键
      def_del_int_coord = 1 3 0 0         #定义 1 3 原子间成键
                        = 1 4 0 0         #定义 1 4 原子间成键

    /

or


.. code-block:: bash

    do_evc                = 1               #1 表示开启dushin计算,0 表示关闭

    &evc
      ffreq(1)            = "s0-freq.log"   #基态结果的日志文件
      ffreq(2)            = "s1-freq.log"   #激发态结果的日志文件
      if_add_int_coord    = .t.             #是否增加化学键
      def_del_int_coord_c = "a" 20 37 39 0  #定义原子 20 37 39 键角
                            "d" 21 20 37 39 #定义原子 21 20 37 39 二面角
    /



"""


[docs]def do_evc(int): """是否开启dushin计算, 1表示开启,0表示关闭 Args: 1 (Default): 0 Example: >>> do_evc = 1 """
[docs]def ffreq(str): """定义读取的基态或激发态结果的日志文件,可由Gaussian等软件计算得到 Args: “s0-freq.log” (Default) Example: >>> &evc >>> ffreq(1) = "s0-freq.log" >>> ffreq(2) = "s1-freq.log" """
[docs]def fnacme(str): """定义读取的非绝热耦合矩阵元文件,可由Gaussian等软件计算得到,用于内转换计算 Args: “nacme.log” (Default) Example: >>> &evc >>> fnacme = "nacme.log" """
[docs]def ftdipd(str): """定义读取的 DIP 输出文件,用于 Herzberg-Teller 效应的计算 Args: “numfreq-es.out” (Default) Example: >>> &evc >>> fnacme = "numfreq-es.out" """
[docs]def sort_mode(int): """用于Herzberg-Teller效应的计算 Args: 0 (Default): 1 Example: >>> &evc >>> sort_mode = 0 """
[docs]def same_hessian(int): """0, 1, and 2, defaut to 0. For example, if set to 1, then read hessian only from ffreq(1), similarly, if set to 2, then read hessian only from ffreq(2). Args: 0 (Default): 1 Example: >>> &evc >>> sort_mode = 0 """
[docs]def if_add_int_coord(logic): """If add user-defined internal coordinates, .t. or .f., default to .f. Args: .f. (Default): .t. Example: >>> &evc >>> if_add_int_coord = .f. """
[docs]def if_del_int_coord(logic): """If delete user-defined internal coordinates, .t. or .f., default to .f. Args: .f. (Default): .t. Example: >>> &evc >>> if_del_int_coord = .f. """
[docs]def def_add_int_coord(str): """add bonds。 This parameter can not distinguish linear bond, in that case use def_add_int_coord_c instead. Args: None (Default) Example: >>> &evc >>> def_add_int_coord = 1 3 0 0 >>> 1 4 0 0 """
[docs]def def_del_int_coord(str): """delete bonds。 This parameter can not distinguish linear bond, in that case use def_del_int_coord_c instead. Args: None (Default) Example: >>> &evc >>> def_del_int_coord = 1 3 0 0 >>> 1 4 0 0 """
[docs]def def_add_int_coord_c(str): """his parameter is an improved version of def_add_int_coord, the first letter can be: b, a, d, l, and t, corresponding to bond, angle, dihedral, linear bond (~180° angle), and starlike diheral respectively. Args: None (Default) Example: >>> &evc >>> def_add_int_coord_c = "a" 20 37 39 0 >>> "d" 21 20 37 39 >>> "d" 21 20 37 39 """
[docs]def def_del_int_coord_c(str): """his parameter is an improved version of def_del_int_coord, the first letter can be: b, a, d, l, and t, corresponding to bond, angle, dihedral, linear bond (~180° angle), and starlike diheral respectively. Args: None (Default) Example: >>> &evc >>> def_del_int_coord_c = "a" 20 37 39 0 >>> "d" 21 20 37 39 >>> "d" 21 20 37 39 """