I am frequently asked how to include an extra set of basis functions in a calculation or how to use an entirely external basis set. Sometimes this question also implies the explicit declaration of an external pseudopotential or Effective Core Potential (ECP).
New basis sets and ECPs are published continuously in specialized journals all the time. The same happens with functionals for DFT calculations. The format in which they are published is free and usually only a list of coefficients and exponents are shown and one has to figure out how to introduce it in ones calculation. The EMSL Basis Set Exchange site helps you get it right! It has a clickable periodic table and a list of many (not all) different basis sets at the left side. Below the periodic table there is a menu from which one can select which program we want our basis set for; finally we click on “get basis set” and a pop-up window shows the result in the selected format along with the corresponding references for citation. A multiple query can be performed by selecting more than one element on the table, which generates a list that almost sure can be used as input without further manipulations. Dr. David Feller is to be thanked for leading the creation of this repository. More on the history and mission of the EMSL can be found on their About page. Because of my experience, the rest of the post addresses the inclusion of external basis sets in Gaussian, other programs such as NwChem will be addressed in a different post soon.
The correct format for inclusion of an external basis set is exemplified below with the inclusion of the 3-21G basis set for Carbon as obtained from the EMSL Basis Set Exchange site (blank lines are marked explicitly just to emphasize their location:
spin multiplicity
Molecular coordinates
- blank line -
C 0
S 3 1.00
172.2560000 0.0617669
25.9109000 0.3587940
5.5333500 0.7007130
SP 2 1.00
3.6649800 -0.3958970 0.2364600
0.7705450 1.2158400 0.8606190
SP 1 1.00
0.1958570 1.0000000 1.0000000
****
- blank line -
The use of four stars ‘****’ is mandatory to indicate the end of the basis set specification for any given atom. If a basis set is to be declared for a second atom, it should be included after the **** line without any blank line in between.
WARNING! Sometimes we can find more than one basis set in a single file this is due to different representations, spherical or cartesian basis sets. Gaussian by default uses cartesian (5D,7F) functions. Pure gaussian use 6 functions for d-type orbitals and 10 for f-type orbitals (6D, 10F). Calculations must be consistent throughout, hence all basis functions should be either cartesian or pure.
Inclusion of a pseudopotential allows for more computational resources to be used for calculation of the electronic structure of the valence shell by replacing the inner electrons for a set of functions which simulate the presence of these and their effect (such as shielding) on the valence electrons. There are full core pseudopotentialas, which replace the entire core (kernel). There are also medium core pseudopotentials which only replace the previous kernel to the full one, allowing for the outermost core electrons to be explicitly calculated. The correct inclusion of a pseudopotential is shown below exemplified by the LANL2DZ ECP by Hay and Wadt for the Chlorine atom.
spin multiplicity
Molecular coordinates
- blank line -
basis set for atom1
****
basis set for atom2 (if there is any)
****
- blank line -
CL 0
CL-ECP 2 10
d potential
5
1 94.8130000 -10.0000000
2 165.6440000 66.2729170
2 30.8317000 -28.9685950
2 10.5841000 -12.8663370
2 3.7704000 -1.7102170
s-d potential
5
0 128.8391000 3.0000000
1 120.3786000 12.8528510
2 63.5622000 275.6723980
2 18.0695000 115.6777120
2 3.8142000 35.0606090
p-d potential
6
0 216.5263000 5.0000000
1 46.5723000 7.4794860
2 147.4685000 613.0320000
2 48.9869000 280.8006850
2 13.2096000 107.8788240
2 3.1831000 15.3439560
If a second ECP is to be introduced, it should be placed right after the first one without any blank line! If a blank line is detected then the program will assume it’s done reading all ECPs and Basis Sets.
Finally, here is an example of a combination of both keywords. If a second ECP was needed then we’d place it at the end of the first one without a blank line. The molecule is any given chlorinated hydrocarbon (H, C and Cl atoms exclusively)
#P B3LYP/gen pseudo=read ADDITIONAL-KEYWORDS
- blank line -
0 1
Molecular Coordinates
- blank line -
H 0
S 3 1.00
19.2384000 0.0328280
2.8987000 0.2312040
0.6535000 0.8172260
S 1 1.00
0.1776000 1.0000000
****
C 0
S 7 1.00
4233.0000000 0.0012200
634.9000000 0.0093420
146.1000000 0.0454520
42.5000000 0.1546570
14.1900000 0.3588660
5.1480000 0.4386320
1.9670000 0.1459180
S 2 1.00
5.1480000 -0.1683670
0.4962000 1.0600910
S 1 1.00
0.1533000 1.0000000
P 4 1.00
18.1600000 0.0185390
3.9860000 0.1154360
1.1430000 0.3861880
0.3594000 0.6401140
P 1 1.00
0.1146000 1.0000000
****
Cl 0
S 2 1.00
2.2310000 -0.4900589
0.4720000 1.2542684
S 1 1.00
0.1631000 1.0000000
P 2 1.00
6.2960000 -0.0635641
0.6333000 1.0141355
P 1 1.00
0.1819000 1.0000000
****
- blank line -
CL 0
CL-ECP 2 10
d potential
5
1 94.8130000 -10.0000000
2 165.6440000 66.2729170
2 30.8317000 -28.9685950
2 10.5841000 -12.8663370
2 3.7704000 -1.7102170
s-d potential
5
0 128.8391000 3.0000000
1 120.3786000 12.8528510
2 63.5622000 275.6723980
2 18.0695000 115.6777120
2 3.8142000 35.0606090
p-d potential
6
0 216.5263000 5.0000000
1 46.5723000 7.4794860
2 147.4685000 613.0320000
2 48.9869000 280.8006850
2 13.2096000 107.8788240
2 3.1831000 15.3439560
- blank line -
If you like this post or found it useful please leave a comment, share it or just give it a like. It is as much fun to find out people is reading as it is finding the answer to ones questions in someone else’s blog
Peace out!
In case you wanna share this:
Like this:
Be the first to like this post.