Once you can sincerely say, "I don't know," then it becomes possible to get at the truth.
(Robert A. Heinlein)
How to run the DSD-PBEP86-D3BJ double hybrid functional
Instructions are only given here for recent versions of various quantum chemical codes. For earlier versions, see the supporting information to Papers 238 and 251, or contact me. There are two slightly different parametrizations, one in Paper 238 (preliminary communication), another (together with dozens of DSD functionals, optimzied in a more consistent way) in Paper 251. The latter parametrization is given below
Gaussian 09 revision D.01
This Gaussian version includes an implementation of Grimme's DFT-D3 empirical dispersion correction. Unfortunately, custom parameters for it cannot be set via the command line or IOps: instead, the parameters can be set via environment variables. For example, if your command shell is csh or tcsh, then the prologue should execute the following commands:
setenv GAUSS_DFTD3_S6 480000
setenv GAUSS_DFTD3_SR6 0
setenv GAUSS_DFTD3_S8 0
setenv GAUSS_DFTD3_ABJ1 0
setenv GAUSS_DFTD3_ABJ2 5600000
Then for Gaussian itself (the example here is for water dimer):
$rungauss
%nproc=4
%mem=8gb
#p b2plyp(semidirect)/def2QZVP iop(3/125=0220005200,3/78=0440004400,3/76=0310006900,3/74=1004)
# empiricaldispersion=gd3bj maxdisk=400gb
example DSD-PBEP86-D3BJ calculation on carbon monoxide
0 1
C 0.0 0.0 0.0
O 0.0 0.0 1.1314
GAUSSIAN 16
Use the built-in keyword DSDPBEP86
Q-CHEM 5.1 and later
Use the built-in keyword DSD-PBEP86-D3
MOLPRO 2012
something like this ought to work:
gthresh,energy=1d-10
geomtyp=xyz
geom={
2
carbon monoxide
c 0.0 0.0 0.0
o 0.0 0.0 1.1314
}
r=1.1314 ang
basis,3-21g
hf
dispcorr3,version=4,s6=0.48,rs6=0.0000,s18=0.0000,rs18=5.6
ed3bjdispersion=edisp
percenthf=69.00
percentDFTc=44.0
percentPTab=52.0
percentPTss=22.0
dispersionS6=0.00
basis,avtz
{rks,pbex,p86
exchange,percenthf*0.01
dftfactor,1.00-percenthf*0.01,percentDFTc*0.01
}
ekohnsham=energy
mp2
eab=(EMP2_SING+EMP2_TRIP/3d0)*percentPTab*0.01
ess=2d0*EMP2_TRIP/3d0*percentPTss*0.01
ecorrmp2val=eab+ess
edsdpbep86val=ekohnsham+ecorrmp2val
edispersion=ed3bjdispersion
efinalenergy=edsdpbep86val+edisp
---
MOLPRO 2015 recent patch levels
the following much simpler input works now:
gthresh,energy=1d-10
geomtyp=xyz
geom={
2
carbon monoxide
c 0.0 0.0 0.0
o 0.0 0.0 1.1314
}
basis,avtz
{ks,pbex,p86;dh,0.69,1.00-0.44;}
mp2,scsfacs=0.52/0.56,scsfact=0.22/0.56;
dispcorr3,version=4,s6=0.48,rs6=0.0000,s18=0.0000,rs18=5.6
show,emp2_scs,edisp
energy=emp2_scs+edisp
---
ORCA (older versions)
The following ought to work:
%pal nprocs 2
end
%maxcore 1000
* xyz 0 1
C 0.0 0.0 0.0
O 0.0 0.0 1.1314
*
! DFT b2plyp noUseSym rijk def2-QZVP def2-QZVP/JK def2-QZVP/C tightscf nopop D3BJ
%method
FrozenCore FC_ELECTRONS
Exchange x_PBE
Correlation c_P86
LDAOpt C_PWLDA # default of VWN3 with P86 is completely asinine
ScalHFX 0.69
ScalDFX 0.31
ScalGGAC 0.44
ScalLDAC 0.44
ScalMP2C 1.00
grid 4
finalgrid 6
end
%method
D3S6 0.48
D3A1 0.0
D3S8 0.0
D3A2 5.6
end
%mp2
DoSCS True
Ps 0.52
Pt 0.22
end
ORCA (recent versions):
The keyword pair DSD-PBEP86 D3BJ should do what you want without further input
MRCC (recent versions):
The keyword DSDPBEP86 will do what you want without further input