The issue is that there are several different definitions, and that even if a paper is kind enough to provide the Becke 1993 communication as a reference, this is rarely the actual form of b3lyp used. In fact, the LYP part would speak directly against it. As someone whom isn't wellversed in the computational and theoretical arts I do think it would be nice if we could get to the point where we can get useful information by doing pointandclick computations, but as exchangecorrelation functionals essentially are fudgefactors, this probably won't happen for some time. In other words, 631G/B3LYP may be a winning combination for the computation of electronic energies of a limited range of (mostly organic) small molecules in the gas phase, it doesn't always yield anything useful about realworld systems.
NOTE: I wrote the original text as I was trying to figure out what WAH was  and I thought at that point that it was a simple form of B3PW91 with tweaked prefactors. It isn't  it's requires changes in the way the GIAOs are computed (I think). So don't focus on the WAH discussion.
Anyway, here's the story as a bench chemist (i.e. not a computational or theoretical chemist) understands it, in the context of trying to understand what the WAH exchangecorrelation functional looks like.
The WAH functional is a hybrid exchange correlation functional which was developed to provide accurate NMR shift calculations.
Note that the WAH functional is correctly implemented in PQS  see the manual.
But the story is really about B3LYP...
1. Definition of the WAH exchangecorrelation functional:
The definition[1] consists of
We found that by using hybrid KohnSham orbitals and eigenvalues with an adjusted 'exactexchange' coefficient C_{x}, the NMR shielding parameters gave an accuracy approaching the best coupledcluster calculations for molecules containing first and second row atoms. For B3LYP[2] we find C_{x}=0.05[..] give(s) best values (note that the coefficient of Local Density Exchange is (1C_{x}) in the amended B3LYP. We name the resulting NMR values B3LYP_{GGA}^{0.05}[..].This is the paper which is cited by the PQS manual. The definition is brief, but not unreasonable.
2 Definition of B3LYP
[The firstperson account of the background to B3LYP is found here: http://www.ccl.net/chemistry/resources/messages/2002/05/22.008dir/]
In the paper which is cited as a source of B3LYP, Becke defined[2] a functional as
E_{XC}=E_{XC}^{LSDA}+a_{0} (E_{x}^{HF}E_{x}^{LSDA} )+a_{x}Δ E_{x}^{Becke88}+a_{c}Δ E_{c}^{PW91} (eq 1)where E_{XC} denotes exchangecorrelation functional, E_{x} denotes exchange functional, E_{c} denotes correlation functional, Δ denotes nonlocal contribution, LSDA is the local spindensity approximation, Becke88[3] is the gradientcorrected LDA and PW91 is the PerdewWang 1991 gradient correction.[4]. The B3 in B3LYP refers to the three parameters it involves: a_{0}=0.2, a_{x}=0.72 and a_{c}=0.81. Note that a_{0} is the same as C_{x} above. We'll refer to equation 1 as B3PW91.
LSDA is poorly defined but is normally taken to be the SVWN of the form
E_{XC}^{LSDA}=E_{X}^{LSDA}+E_{C}^{LSDA} (eq 2)although there's a slew of VoskoWilkNusair (VWN) functionals  most sources suggest that Becke referred to VWN5, while my reading of the literature is a bit different (Becke states he uses the electrongas parametrization in [4]). Either way, equation 1 now becomes
=E_{x}^{Slater}+E_{c}^{VWN} (eq 3)
E_{XC}=a_{0} E_{x}^{HF}+(1a_{0} )E_{x}^{Slater}+E_{c}^{VWN} +a_{x}Δ E_{x}^{Becke88}+a_{c}Δ E_{c}^{PW91} (eq 4)This is implemented as the hybrid exchangecorrelation functional acm in NWChem (the adibatic connection method) using VWN5. A very brief summary of Becke '93 vs Gaussian '92 (don't ask me about the chronology) is also available by Stephens et al. in J. Phys. Chem. 1994, 98(45), p. 11624.
2.1 Gaussian '92
You may at this point be forgiven for asking yourself why it is called B3LYP and not B3PW91. In 1991 Gaussian hadn't yet implemented PW91 (fair enough) and substituted it with the LeeYangParr (LYP) correlation functional (ΔE_{c}^{LYP}). Since it's difficult to separate the local component (and we want the nonlocal component as indicated by Δ), they wrote
Δ E_{c}^{LYP}=E_{c}^{LYP}E_{c}^{VWN} (eq 5)which turns equation 4 into
E_{XC}=a_{0} E_{x}^{HF}+(1a_{0})E_{x}^{Slater}+a_{x}Δ E_{x}^{Becke88}+a_{c}E_{c}^{LYP} +(1a_{c})E_{c}^{VWN} (eq 6)In addition, in the original Gaussian implementation VWN_1_RPA was used, which sources tell me is 100\% wrong when taking Becke's intentions into account.
E_{XC}=a_{0} E_{x}^{HF}+(1a_{0})E_{x}^{Slater} +a_{x}Δ E_{x}^{Becke88}+a_{c}E_{c}^{LYP} +(1a_{c})E_{c}^{VWN_1_RPA} (eq 7)To make matters worse, today Gaussian uses VWN_3 and it seems they know how to get the nonlocal component of LYP directly (see below). Equation 7 is what you use if you use B3LYP in most software packages (though not all  e.g. Gamess US uses VWN5 instead of VWN_1_RPA) So in G09 it's now
E_{XC}=a_{0} E_{x}^{HF}+(1a_{0})E_{x}^{Slater}+a_{x}Δ E_{x}^{Becke88}+E_{c}^{VWN_3}+a_{c}E_{c}^{LYP} (eq 8)
2.2 PQS
PQS uses the old gaussian version (eq. 7) as the b3lyp functional, but it doesn't explicitly state which form  b3lyp or b3pw91  is used for the WAH functional.
3 So what definition did WAH use?
All we really care about is reproducing the original paper by Handy et al.  not whether Becke would approve or not. But here's where the problem of citing papers you may not have read becomes an issue.
Wilson, Amos and Handy cite the 1993 paper by Becke which defines the canonical version of B3LYP (i.e. B3PW91), which should settle it in favour of WAH being defined as shown in equation 4.
However, they used CADPACK, which implements it as in equation 7. Reading the CADPACK manual I can see what Handy et al. probably did: the way you define custom parameters for hybrid functionals in CADPACK is by doing
hybrid a0 ax acso that they during the development of their functional most likely typed in
b3lyp 0.05 0.72 0.81which meant they probably used
E_{XC}=0.05 E_{x}^{HF}+0.95 E_{x}^{Slater}+ +0.72 Δ E_{x}^{Becke88}+0.81 E_{c}^{LYP} +0.19 E_{c}^{VWN_1_RPA} (eq 9)
4 Implementing it in your package of choice
[NOTE: this will NOT set up WAH correctly  I'm leaving it as it shows how to set up custom XCs in nwchem, G09 and Dalton]
4.1 NWCHEM
The canonical version of Becke's functional, B3PW91, is implemented as acm in NWChem and which is manually entered as
xc HFexch 0.2 slater 0.8 becke88 nonlocal 0.72 vwn_5 1 Perdew91 0.81while the Gaussian '92 form is manually entered as
xc HFexch 0.2 slater 0.8 becke88 nonlocal 0.72 vwn_1_rpa 0.19 lyp 0.81This means that the two possible forms of WAH are:
xc HFexch 0.05 slater 0.95 becke88 nonlocal 0.72 vwn_5 1 Perdew91 0.81and
xc HFexch 0.05 slater 0.95 becke88 nonlocal 0.72 vwn_1_rpa 0.19 lyp 0.81We'll refer to them as B3PW91_{0.05} and B3LYP_{0.05}, respectively.
4.2 Gaussian 09
Gaussian is a lot less elegant. The canonical version of Becke's functional, B3PW91, is implemented as acm in Gaussian as B3PW91, which is manually entered as
BPW91 IOp(3/76=1000002000) IOp(3/77=0720008000) IOp(3/78=0810010000)while the old Gaussian form is manually entered as
BLYP IOp(3/76=1000002000) IOp(3/77=0720008000) IOp(3/78=0810001900This means that the two forms of WAH are:
BPW91 IOp(3/76=1000000500) IOp(3/77=0720009500) IOp(3/78=0810010000)and
BLYP IOp(3/76=1000000500) IOp(3/77=0720009500) IOp(3/78=0810001900)We'll refer to them as B3PW91_{0.05} and B3LYP_{0.05}, respectively.
4.3 Dalton
The notations are (more or less)
Combine HF=0.20 Slater=0.80 Becke=0.72 PW91c=0.81 VWN5=1As an aside, I don't think anyone at this point would be surprised to learn that B3PW91 in Dalton and Gaussian are two completely different exchangecorrelation functionals...
Combine HF=0.20 Slater=0.80 Becke=0.72 LYP=0.81 VWN=0.19
Combine HF=0.05 Slater=0.95 Becke=0.72 PW91c=0.81 VWN5=1
Combine HF=0.05 Slater=0.95 Becke=0.72 LYP=0.81 VWN=0.19
Performance
NOTE: the results don't quite make any sense to me anymore  using the same XCs and basis sets and structures one would expect to get the exact same results for all three packages. I don't know why that wasn't the case, assuming that I implemented the XCs correctly, and assuming that the basis sets really are the same (which often they actually aren't...). So keep that in mind.
Original:
I used the same equilibrium structures as Handy (i.e. those of Cybulski), and used the augccpVTZ basis set with a fine DFT grid (not the same as Handy  but should be as good. Also, I've done this with def2qzvp and 631+g* as well). All calculations are for the gas phase. Handy's values are for the Huzinaga IV basis set in their GIAO paper[5], but it doesn't really matter much which basis set is chosen. The results are tabulated in table 1.
Note that Handy also saw chemical shifts for the oxygen in carbon monoxide which were around 80 ppm. Basically, I can reproduce everything except for his B3LYP^{0.05}_{gga}. I did a few testruns with HuzIV in Dalton and it was just as bad as the other methods.

References:
[1] P. J. Wilson, R. D. Amos, H. N. C., Chem. Phys. Letters 1999, 321, 475484.
[2] A. D. Becke, J. Chem. Phys. 1993, 98, 56485652.
[3] A. D. Becke, Phys. Rev. A 1988, 38, 30983100.
[4] J. P. Perdew, Y. Wang, Phys. Rev. B 1991, 45, 1324413249.
[5] T. Helgaker, P. J. Wilson, R. D. Amos, N. C. Handy, J. Chem. Phys. 2000, 113, 29832989.
Do you happen to know exactly when Gaussian changed from VWN1 to VWN3?
ReplyDeleteG98 I think:
Deletehttp://www.ccl.net/chemistry/resources/messages/2001/08/22.004dir/
"(3) LDA3 = the LDA functional implemented in Gaussian
LDA5 = the LDA functional used by the rest of us (i.e. SVWN5 in G98)
(4) B3LYP contains LDA3 (I guess this is the right choice, since B3LYP was
'invented' by the Gaussian developers)."