The program dboc computes Diagonal Born-Oppenheimer Correction (DBOC) using HF and CI wave functions.
"Cartesian" DBOC formula (aka Born-Handy-Pulay formula):
- N. C. Handy, J. Yamaguchi, and H. F. Schaefer, J. Chem. Phys. 84, 4481 (1986).
Justification for the "Cartesian" DBOC formula:
- W. Kutzelnigg, Mol. Phys. 90, 909 (1997).
Finite-difference formulation of DBOC at CI level
E. F. Valeev and C. D. Sherrill, J. Chem. Phys. 118, 3921 (2003).
The following keywords are valid:
- WFN = string
Specifies the type of wave function desired. The only valid entries
at the present are SCF and DETCI. There is no default.
- REFERENCE = string
Specifies the type of orbitals used for the single-determinant
reference function. Valid choices are RHF, ROHF, and UHF.
There is no default.
- PRINT = integer
Determines the verbosity of the output. A value of 0 (the default)
specifies minimal printing.
- :DBOC:DISPLACEMENT = real
Determines the finite difference step (in a.u.). The default is 0.0005 a.u.
- :DBOC:DISP_PER_COORD = integer
Determines the number of displacements for each coordinate. Set it to 2 to compute
DBOC with standard accuracy (enough significant digits for up to second derivatives;
DBOC accurate to square of displacement size),
and 4 to compute DBOC with improved accuracy (DBOC accurate to the fourth power of displacement size).
The default is 2.
- ISOTOPES = string_vector
Specifies which isotope to use for each atom. Each string should specify
an isotope label as defined in include/masses.h. By default,
most abundant isotopes are used for each element.
- :DBOC:COORDS = vector
This keyword should only be used by advanced users who are familiar with
how DBOC is evaluated by finite differences.
The keyword may be used to specify the cartesian nuclear coordinates
to use in the sum expression for DBOC, their respective coefficients,
and whether they are symmetric or nonsymmetric with respect displacements.
can use symmetry to minimize the number of wave function computations.
Hence this keyword need only be used for diagnostic purposes or when
displacements along different coordinates need to be run separately (e.g.
require different occupation vectors).
The value for this keyword is an array of 3 element vectors. The first
element of each vector is the index of the cartesian coordinate which to include
into the sum. The second element is a real coefficient for
the respective term in the DBOC expression. The third element is
a string that can take two values, symm and nonsymm,
which indicate that the coordinate is symmetric or nonsymmetric
with respect to displacements, respectively.
Indices are C-style, i.e. from 0 to 3*natom-1.