Hi everyone, I have a (hopefully) quick question about polarization functions. The topic has been well covered in this list (as well as in the tutorials), but I wasn't able to find the answer to a minor point. One can add polarization functions as well as adjust the number of zeta components for said polarization functions through the PAO.Basis block. (A good description of this that I found on the archives is pasted below). In the explanation below, another zeta is added to the 2p orbitals of carbon. My question is this: if I, for example, wanted to make a "TZDP" basis set for carbon, do I have to change the polarization setting on the line defining the 's' orbitals, or just the zeta? Basically, I want to make sure that when I am making basis sets and referring to them with a name like 'DZDP', 'TZP', etc., that they correspond to the types of basis sets used in publications. I am mainly confused by the use of the term 'channel' in referring to orbital types (see below). If I had something like:
C n=2 0 3 0.000 0.000 0.000 1.000 1.000 1.000 n=2 1 3 P 1 0.000 0.000 0.000 1.000 1.000 1.000 Is this describing a TZP basis set for carbon, or just a TZP basis for the (n=2, l=1) 'channel'? Thanks very much for your time, Mike -- Michael R. C. Williams | | Ph.D. Candidate Yale University | | Department of Chemistry > It's difficult to give you more specific advice without knowing exactly > which is your atomic species, but here goes a short example for TZP, TZ2P, > QZP and higher. > > If you specify your basis as DZP for Carbon (as an example) with 2s and 2p > electrons, here is the output of the basis set siesta determines from a > certain EnergyShift: > > %block PAO.Basis # Define Basis set > C 2 # Species label, number of l-shells > n=2 0 2 # n, l, Nzeta > 4.994 3.563 > 1.000 1.000 > n=2 1 2 P 1 # n, l, Nzeta, Polarization, NzetaPol > 6.254 3.889 > 1.000 1.000 > %endblock PAO.Basis > > Suppose now that you want to make TZP for the 2p channel. You should, > then, modify the line saying " n=2 1 2 P 1" and the other two lines > following it to: > > n=2 1 3 P 1 > 0.000 0.000 0.000 > 1.000 1.000 1.000 > > That means that you will have, for n=2, l=1 (the 2p channel), three zetas > + 1 polarization function. The 0.000's appearing in the second line tell > siesta to determine the rc's from the EnergyShift, whether user-specified > or default. If you want to go to TZ2p (TZ + 2 polarization functions), you > should write > > n=2 1 3 P 2 > > instead. The other channels can be changed in the same way (but sometimes > siesta may complain about setting rc's with energy shift and then you will > have to set them by hand). By doing so, you can not only increase the > number of zetas, but include also unoccupied orbitals in the basis set, > which may give you better results, but will render your calculation > heavier. I have tested the effect of TZP in bulk moduli of diamond, and it > is definitely better, but the calculation gets definitely heavier, as > well. So, for large systems, this might be a computational effort not > really worthy.
