Interface to the DFTB+ program implementing self consistenct charges density functional tight binding (SCC-DFTB) methods.[1] The program requires also parameters available separately at www.dftb.org. Open source software.
Feb 2, 2016: two important changes were made in the input. Firstly, the built-in DFTB-D dispersion is now switched off by default. Warning is printed when the keyword is not set for a transition period. Secondly, the dftb_hubbard_derivs behaves differently and the default setup was changed to the values used in DFTB3.
Empirical dispersion coorrection was developed for SCC-DFTB with the MIO parameters set.[2] It is available in DFTB+ and it can be activated by the dftb_dispersion keyword.
Since DFTB+ version 17.1, the D3 correction is available in the program. It is activated using the keyword dftb_d3. The damping is controlled by several keywords borrowed from the dispersion3 interface.
The acronym DFTB3 is used for a third-order SCC-DFTB with the 3OB parameter set and gamma function damping exponent of 4.0.[3] The folowing input reproduces the DFTB3 setup in cuby:
method: scc-dftb3
dftb_slko_set: 3ob
dftb_xh_damping: yes
dftb_xh_damping_exp: 4.0
The D3 dispersion was parameterized for DFTB3 by Grimme[4], in Cuby it can be applied using the following setup:
modifiers: dispersion3
modifier_dispersion3:
d3_damping: bj
d3_a1: 0.746
d3_a2: 4.191
d3_s8: 3.209
In the latest release of DFTB+, the built-in D3 dispersion correction can be used; the results should be identical. The input is slightly different, the dispersion setup is passed directly to the dftb interface. The example abowe would change into:
method: scc-dftb3
dftb_slko_set: 3ob
dftb_xh_damping: yes
dftb_xh_damping_exp: 4.0
dftb_d3: yes
d3_damping: bj
d3_a1: 0.746
d3_a2: 4.191
d3_s8: 3.209
The latest version of the standalone D3H4 corrections[5] was recently reparameterized for DFTB3, making the DFTB3-D3H4 method.[6] Here, a different parameterization of the D3 dispersion is used which contains also a repulsive correction between hydrogens. The DFTB3-D3H4 calculation can be called using the following input:
method: scc-dftb3
dftb_slko_set: 3ob-3-1
modifiers: dispersion3, h_bonds4
# Dispersion3 setup
modifier_dispersion3:
d3_damping: :zero
d3_sr6: 1.25
d3_alpha6: 29.61
d3_s8: 0.49
# Hydrogen-hydrogen repulsion:
d3_hh_fix: yes
d3_hh_para:
:k: 0.30
:e: 14.31
:r0: 2.35
# H4 correction setup, including the additional
# scaling for charged systems
modifier_h_bonds4:
h_bonds4_parameters:
oh_o: 1.28
oh_n: 3.84
nh_o: 0.88
nh_n: 2.83
multiplier_wh_o: 1.00
multiplier_coo: 1.75
multiplier_nh4: 4.01
h_bonds4_extra_scaling:
"@N&:hip": 3.44
"@N&:gua": 2.68
The latest version of hydrogen bond correction is embedded in the DFTB calculation, and it is thus implemented direcly in the DFTB+ program. If it is compiled with the support of D3 dispersion (which is not included in the provided binaries), the complete DFTB3-D3H5 calculation can be preformed in DFTB+ using a following setup:
interface: dftb
method: scc-dftb3
dftb_slko_set: 3ob-3-1
dftb_h5: yes
dftb_d3: yes
dftb_d3_hhrep: yes
d3_damping: :zero
d3_sr6: 1.25
d3_alpha6: 29.61
d3_s8: 0.49
The interface now supports the COSMO solvent with default setup (optimized COSMO radii) and solvent selected by name using keyword solvent_name.
The following examples, along with all other files needed to run them, can be found in the directory cuby4/interfaces/dftb/examples
#===============================================================================
# DFTB example 1: energy calculation, configuration
#===============================================================================
# SCC-DFTB calculation
job: energy
interface: dftb
method: scc-dftb
# Water molecule, geometry taken from Cuby's internal database
geometry: A24:water
charge: 0
#-------------------------------------------------------------------------------
# Interface configuration
#-------------------------------------------------------------------------------
# DFTB+ executable
dftbplus_exe: /home/rezac/bin/DFTB+/dftb+1.2.1/dftb+
# Path to directory containing directories with sets of Slater-Koster files
dftb_slko_basepath: /home/rezac/bin/DFTB+/slko
# Default set of Slater-Koster files (directory name)
dftb_slko_set: mio-0-1
# In the following examples, it is assumed that this interface configuration
# is performed in the config file
#===============================================================================
# DFTB example 2: Third-order SCC-DFTB
#===============================================================================
# Third-order SCC-DFTB (also called DFTB3) calculation
job: energy
interface: dftb
method: scc-dftb3
# Parameter set for DFTB3 - the 3OB set. The following keyword selects the
# parameter set, the slater-koster files should be located in a directory
# "3ob" under the path specified by the keyword dftb_slko_basepath (assumed)
# to be set in the config file.
dftb_slko_set: 3ob
# Water molecule, geometry taken from Cuby's internal database
geometry: A24:water
charge: 0
#===============================================================================
# DFTB example 3: Use of external point charges
#===============================================================================
# Geometry optimization of a water molecule in external electric field created
# by two point charges along the x axis. In the optimization, the molecule
# aligns with the field.
job: optimize
opt_quality: 0.1
interface: dftb
method: scc-dftb
geometry: |
O 0.247000000 0.390000000 0.000000000
H -0.075000000 1.292000000 0.000000000
H 1.207000000 0.490000000 0.000000000
remove_translation: no
remove_rotation: no
# Allow rotation, by default both translational and rotational components of
# the gradient are removed.
point_charges: |
10.0 0.0 0.0 1.0
-10.0 0.0 0.0 -1.0
# A list of point charges, four numbers (x, y, z, charge) per line.