Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
basis_input [2022/12/01 05:11] – add VXZ-PP-F12 basis sets kirk | basis_input [2024/10/25 16:12] (current) – remove links to basis.php may | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Basis input ====== | ||
+ | |||
+ | ===== Overview: sets and the basis library ===== | ||
+ | |||
+ | Basis functions are used in Molpro not just for representing orbitals, but also for providing auxiliary sets for density fitting (see [[density fitting]]) and for simplifying integrals through approximate identity resolution in explicitly-correlated methods (see [[explicitly correlated methods]]). In order to accommodate this, the program maintains internally a number of different //sets//. The first of these always has the name '' | ||
+ | |||
+ | The basis sets may either be taken from the library, or may be specified explicitly, or any combination. Optionally, the basis function type can be chosen using the '' | ||
+ | |||
+ | ===== Cartesian and spherical harmonic basis functions ===== | ||
+ | |||
+ | [command: | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | If this command is encountered, | ||
+ | |||
+ | '' | ||
+ | |||
+ | It should be noted that there are the following disadvantages and limitations when using cartesian basis functions: | ||
+ | |||
+ | - the basis sets are larger and more linearly dependent; | ||
+ | - density fitting routines are much slower with cartesian basis functions than with spherical harmonics; | ||
+ | - some programs cannot use cartesian basis functions at all, e.g. the PNO programs, gradients with density fitting, or F12 calculations. | ||
+ | |||
+ | Since Molpro 2022.2 all auxiliary basis sets (e.g. for density fitting or RI) use spherical functions by default, independent of the '' | ||
+ | |||
+ | '' | ||
+ | .... | ||
+ | |||
+ | but this is not recommended since such sets become often linearly dependent. | ||
+ | ===== The basis set library ===== | ||
+ | |||
+ | The basis set library consists of a set of plain text files that constitute a database of commonly-used basis sets (primitive gaussians and associated contractions) and effective core potentials. These files can be found in the source tree as '' | ||
+ | |||
+ | Many of the basis sets are taken directly from the Basis Set Exchange | ||
+ | |||
+ | |||
+ | ===== Default basis sets ===== | ||
+ | |||
+ | If a basis is not specified at all for any unique atom group, then the program assumes a global default. Presently, this default is '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | or | ||
+ | |||
+ | '' | ||
+ | |||
+ | //basis// is looked up in the file '' | ||
+ | |||
+ | * All of the Dunning correlation consistent basis sets, through the use of either the standard name of the basis set ('' | ||
+ | * The correlation consistent basis sets for core correlation, | ||
+ | * Douglas-Kroll-Hess relativistic versions of the correlation consistent basis sets are available through use of the standard or abbreviated names with extension -DK, e.g., '' | ||
+ | * The F12 basis sets of Peterson and co-workers for explicitly correlated calculations, | ||
+ | * The Turbomole def2 family of basis sets, '' | ||
+ | * The older segmented Dunning/Hay double-zeta sets for the first row ('' | ||
+ | * The Roos ANO basis sets for H-Ar ('' | ||
+ | * The Stuttgart ECPs and associated basis sets (e.g., '' | ||
+ | * The Hay ECPs and corresponding basis sets ('' | ||
+ | * Other members of the Karlsruhe basis sets ('' | ||
+ | * The Binning/ | ||
+ | * Most of the Pople basis sets, using their standard names (e.g., '' | ||
+ | |||
+ | Short names for the available correlation-consistent default basis sets with '' | ||
+ | Augmented sets are as non-augmented and therefore not listed. | ||
+ | The short names of augmented sets have prefix '' | ||
+ | Note that not all cardinal numbers may be available for each Z. | ||
+ | |||
+ | Valence basis sets: | ||
+ | |||
+ | ^short name ^full name ^range Z ^ | ||
+ | |vxz |cc-pVXZ | ||
+ | |vxz-f12 | ||
+ | |||
+ | Core-valence basis sets: | ||
+ | |||
+ | ^short name ^full name ^range Z ^ | ||
+ | |cvxz | ||
+ | |wcvxz | ||
+ | |cvxz-f12 | ||
+ | |||
+ | Basis sets for relativistic calculations: | ||
+ | |||
+ | ^short name ^full name ^range Z ^ | ||
+ | |vxz-x2c | ||
+ | |cvxz-x2c | ||
+ | |||
+ | |vxz-dk | ||
+ | |wcvxz-dk | ||
+ | |wcvxz-dk3 | ||
+ | |wcvxz-x2c | ||
+ | |||
+ | Pseudo-potential basis sets. The number of core electrons contained in the pseudo-potential corresponds to the number in its name: | ||
+ | |||
+ | ^short name ^full name ^pseudo-pot. | ||
+ | |vxz-pp | ||
+ | |vxz-pp | ||
+ | |vxz-pp | ||
+ | |vxz-pp | ||
+ | |vxz-pp | ||
+ | |vxz-pp | ||
+ | |||
+ | |wcvxz-pp | ||
+ | |wcvxz-pp | ||
+ | |wcvxz-pp | ||
+ | |wcvxz-pp | ||
+ | |wcvxz-pp | ||
+ | |wcvxz-pp | ||
+ | |||
+ | |vxz-pp-f12 | ||
+ | |vxz-pp-f12 | ||
+ | |vxz-pp-f12 | ||
+ | |||
+ | |||
+ | Karlsruhe (Turbomole) basis sets (def2 and dhf). These are also available as augmented and doubly augmented basis sets: | ||
+ | |||
+ | ^short name ^full name ^pseudo-pot. ^range Z ^ | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |dhf-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |dhf-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |dhf-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |dhf-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |TZVPP |def2-TZVPP | ||
+ | |||
+ | Karlsruhe (Turbomole) basis sets with diffuse functions: | ||
+ | |||
+ | ^short name ^full name ^pseudo-pot. ^range Z ^ | ||
+ | |TZVPPD |def2-TZVPPD |all-electron | 1 - 36 | | ||
+ | | | ||
+ | | | ||
+ | |TZVPPD |def2-TZVPPD |ECP28MDF | ||
+ | | | ||
+ | |TZVPPD |def2-TZVPPD |ECP28MDF | ||
+ | | | ||
+ | |TZVPPD |def2-TZVPPD |ECP46MWB | ||
+ | | | ||
+ | |TZVPPD |def2-TZVPPD |ECP60MWB | ||
+ | |TZVPPD |def2-TZVPPD |ECP60MDF | ||
+ | |||
+ | |||
+ | In addition, many density fitting and resolution of the identity (RI) basis sets are available. For the correlation consistent basis sets of Dunning, the appropriate VXZ/JKFIT, VXZ/MP2FIT, AVXZ/MP2FIT sets of Weigend are chosen automatically in density fitted calculations (augmented versions AVXZ/JKFIT for Fock-matrix fitting are also available). For the def2 family of orbital basis sets, the appropriate auxiliary sets (e.g., TZVPP/JFIT, TZVPP/ | ||
+ | |||
+ | For explicitly correlated F12 calculations that use the cc-pVXZ-F12 or cc-pVXZ-PP-F12 orbital basis sets, the corresponding VXZ-F12/ | ||
+ | |||
+ | Example: | ||
+ | |||
+ | '' | ||
+ | |||
+ | generates valence triple zeta basis set for all atoms. Thus, the input | ||
+ | |||
+ | <code - examples/ | ||
+ | ***,h2o cc-pVTZ basis !A title | ||
+ | r=1.85, | ||
+ | geometry={O; | ||
+ | H1,O,r; | ||
+ | H2, | ||
+ | basis=VTZ | ||
+ | hf !closed-shell scf | ||
+ | </ | ||
+ | |||
+ | performs a Hartree-Fock calculation for H2O using the cc-pVTZ basis set. | ||
+ | |||
+ | Default basis sets can be defined anywhere in the input before the energy calculation to which it should apply using a single '' | ||
+ | |||
+ | The maximum angular momentum in the basis set can be reduced using syntax such as | ||
+ | |||
+ | '' | ||
+ | |||
+ | which would omit the f and g functions that would normally be present in the VQZ basis set. | ||
+ | |||
+ | '' | ||
+ | |||
+ | would specify additionally a maximum angular momentum of 1 on hydrogen, i.e. would omit d orbitals on hydrogen. | ||
+ | |||
+ | For generally contracted basis sets, an extended syntax can be used to explicitly give the number of contracted functions of each angular momentum. For example, | ||
+ | |||
+ | '' | ||
+ | |||
+ | generates a '' | ||
+ | |||
+ | Notes: //basis// must not be variable called BASIS. Furthermore, | ||
+ | |||
+ | '' | ||
+ | |||
+ | is not allowed, i.e. the keyword '' | ||
+ | |||
+ | < | ||
+ | |||
+ | $aobases=[AVDZ, | ||
+ | do ibas=1,# | ||
+ | basis=aobases(ibas) | ||
+ | ... | ||
+ | enddo | ||
+ | </ | ||
+ | ===== Default basis sets for individual atoms ===== | ||
+ | |||
+ | Different default basis sets for individual atoms can be specified with one-line '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | uses cc-pVTZ as a general default, but for hydrogen atoms cc-pVDZ is used. | ||
+ | |||
+ | '' | ||
+ | |||
+ | or | ||
+ | |||
+ | '' | ||
+ | |||
+ | are equivalent to the above. Note that the default basis has to be specified before any atom specific sets. | ||
+ | |||
+ | Since Molpro2024.2 one can also define basis sets for ranges of atoms. The range is given as atom1-atom2, | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | ===== Basis blocks ===== | ||
+ | |||
+ | More specific basis set definitions for individual atoms can be given in '' | ||
+ | |||
+ | < | ||
+ | BASIS | ||
+ | SET, | ||
+ | DEFAULT=name | ||
+ | atom1=name1 | ||
+ | atom2=name2 | ||
+ | primitive basis set specifications | ||
+ | SET, | ||
+ | ... | ||
+ | END | ||
+ | </ | ||
+ | Instead of the '' | ||
+ | |||
+ | Any number of basis sets can be be given in a basis block. The definition of each basis set is started by a '' | ||
+ | |||
+ | By default, the first set in a basis block is the orbital basis, and in this case the directive '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | Here the basis sets '' | ||
+ | |||
+ | The specifications '' | ||
+ | |||
+ | Several '' | ||
+ | |||
+ | If a basis is not specified at all for any unique atom group, then the program assumes VDZ. | ||
+ | |||
+ | If the setname is '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | in order to use the auxiliary basis in DF-HF. | ||
+ | |||
+ | ===== Auxiliary basis sets for density fitting or resolution of the identity ===== | ||
+ | |||
+ | As described in the previous section, several basis sets can be defined in a basis block. The definition of each basis starts with a line | ||
+ | |||
+ | '' | ||
+ | |||
+ | < | ||
+ | basis={ | ||
+ | default=avtz | ||
+ | set, | ||
+ | default, | ||
+ | set, | ||
+ | default, | ||
+ | } | ||
+ | </ | ||
+ | is equivalent to | ||
+ | |||
+ | < | ||
+ | basis={ | ||
+ | default=avtz | ||
+ | set,df | ||
+ | [attributes, | ||
+ | default, | ||
+ | set,jk | ||
+ | default, | ||
+ | } | ||
+ | </ | ||
+ | If the setname begins with '' | ||
+ | |||
+ | Optionally, the basis function type '' | ||
+ | |||
+ | Specific basis sets for individual atoms or explicit input of exponents and contraction coefficients can be given exactly in the same way as for orbital basis sets. | ||
+ | |||
+ | ===== Primitive set definition ===== | ||
+ | |||
+ | Default basis sets given using one-line '' | ||
+ | |||
+ | A group of basis functions is defined by a data card specifying a set of primitive gaussians, optionally followed by one or more cards specifying particular contractions of primitives to be included in the final basis (see section [[basis input# | ||
+ | |||
+ | If an individual basis function type (s, p, d, etc.) is specified for an atom, it is required that all other types are also defined, i.e., as soon as an explicit definition of a basis function for an atom is given, all defaults are erased for this atom. | ||
+ | |||
+ | There are four different input forms for basis functions, as explained below under a) to d). In case that options (e.g. '' | ||
+ | |||
+ | In all four cases //type// defines the angular symmetry ('' | ||
+ | |||
+ | a) Library basis sets: | ||
+ | |||
+ | // | ||
+ | |||
+ | or | ||
+ | |||
+ | // | ||
+ | |||
+ | Load basis named //name// from the library. | ||
+ | |||
+ | If //scale// or //scale2// is present, all exponents are scaled by //scale// or // | ||
+ | |||
+ | b) Explicit basis input: | ||
+ | |||
+ | // | ||
+ | |||
+ | General specification of exponents; continuation onto subsequent cards (separated by semicolon) is permitted as shown (the first card can hold up to 19 exponents, each following card 20 exponents). | ||
+ | |||
+ | The exponents (and other numerical parameters described below such as numbers of functions, and contraction coefficients) can be given as general input expressions, | ||
+ | |||
+ | c) Even tempered basis sets: | ||
+ | |||
+ | // | ||
+ | |||
+ | or | ||
+ | |||
+ | // | ||
+ | |||
+ | Generates a generalized even tempered set of functions. The number of functions n is specified by , their geometric mean c by , the mean ratio of successive exponents r by , and the variation of this ratio, d, by . If //centre// is not given, the previous basis of the same type is extended by diffuse functions. If in this case //ratio// is not given, r is determined from the exponents of the last two function of the previous basis. If this is not possible, the default r=2.5 is adopted. d=1 (the default) specifies a true even-tempered set, but otherwise the ratio between successive exponents changes linearly; the exponents are given explicitly by $$\log e_i = | ||
+ | \log c | ||
+ | + ((n+1)/2-i) \,\log r | ||
+ | + \frac12 ((n+1)/ | ||
+ | \quad | ||
+ | i=1, | ||
+ | |||
+ | * **Example 1** '' | ||
+ | generates the generally contracted s and p triple-zeta basis sets for atom 1 and extends these by one diffuse function. | ||
+ | * **Example 2** '' | ||
+ | generates the generally contracted s, p triple-zeta basis sets for atom 1. Two energy optimized d-functions of Dunning are included. The last s and p functions are deleted and replaced by two even tempered functions with ratio 2.5. | ||
+ | |||
+ | d) 3-term tempered basis sets: | ||
+ | |||
+ | // | ||
+ | |||
+ | Generates a 3-parameter set of //nprim// functions with exponents given by $$e_0 = \alpha ; \qquad e_i=e_{i-1} \,\beta \left(1+\frac{\gamma \cdot i^2}{( { {nprim}}+1)^2}\right) | ||
+ | , \quad i=1, | ||
+ | |||
+ | e) Regular even tempered basis sets: | ||
+ | |||
+ | // | ||
+ | |||
+ | Generates an even tempered set of //nprim// functions according to the “regular” prescription described in M W Schmidt and K Ruedenberg, [[https:// | ||
+ | |||
+ | f) Even tempered basis set with confined progression: | ||
+ | |||
+ | // | ||
+ | |||
+ | Generates an even tempered basis set with //nprim// functions and a maximal exponent given by // | ||
+ | |||
+ | // | ||
+ | \frac{5}{\pi}(\arctan(\beta-2.5)+\frac{\pi}{2})+\sqrt{2}$// | ||
+ | |||
+ | so that for β≪0:p→√2 and for β≫0:p→5+√2 which limits the progression factors in between these two values and enables unconstrained basis set optimisations. For β≈0 the progression has a factor of about 2. | ||
+ | |||
+ | // | ||
+ | |||
+ | Generalises confined progression tempered basis sets by a third parameter (now γ) which defines the progression as above in the centre. The ratio factors are then determined by interpolating between p(β)→p(γ) and p(γ)→p(δ). | ||
+ | |||
+ | ===== Contracted set definitions ===== | ||
+ | |||
+ | a) '' | ||
+ | |||
+ | General specification of a contracted function. // | ||
+ | |||
+ | b) '' | ||
+ | |||
+ | Use default contractions from the library. This applies to both the number of contracted primitives and also to the number of different contraction sets. | ||
+ | |||
+ | c) n'' | ||
+ | |||
+ | n contracted functions taken from library. // | ||
+ | |||
+ | d) n'' | ||
+ | |||
+ | n contracted functions taken from orbitals //orb//, orb+1, | ||
+ | |||
+ | '' | ||
+ | generates two contractions, | ||
+ | |||
+ | ===== Examples ===== | ||
+ | |||
+ | This shows the use of default basis sets for H2O: | ||
+ | |||
+ | <code - examples/ | ||
+ | ***,H2O | ||
+ | basis=VQZ(f/ | ||
+ | R=0.95 ANG, | ||
+ | geometry={O; | ||
+ | hf !do closed-shell SCF | ||
+ | </ | ||
+ | |||
+ | This is equivalent to the explicit input form | ||
+ | |||
+ | <code - examples/ | ||
+ | ***,H2O | ||
+ | R=0.95 ANG, | ||
+ | geometry={O; | ||
+ | basis={spdf, | ||
+ | hf !do closed-shell SCF | ||
+ | </ | ||
+ | |||
+ | The following example shows how to use two different basis sets for the same element: | ||
+ | |||
+ | <code - examples/ | ||
+ | gprint, | ||
+ | nosym | ||
+ | |||
+ | geometry={Angstrom, | ||
+ | O | ||
+ | H2 1 1.0 | ||
+ | H3 1 1.0 2 109 | ||
+ | } | ||
+ | |||
+ | basis={ | ||
+ | default=cc-pVDZ; | ||
+ | sp, | ||
+ | spd, | ||
+ | } | ||
+ | hf | ||
+ | </ | ||
+ | |||
+ | The following example shows how to code the vtz basis set explicitly (exponents + contraction): | ||
+ | |||
+ | <code - examples/ | ||
+ | gprint, | ||
+ | r=1.85, | ||
+ | geometry={O; | ||
+ | H1,O,r; | ||
+ | H2, | ||
+ | !use VTZ basis, explicitly give exponents and contraction coefficients | ||
+ | basis={ | ||
+ | s, | ||
+ | c, | ||
+ | c, | ||
+ | c,8.8,1.0 | ||
+ | c,10.10,1.0 | ||
+ | p, | ||
+ | c, | ||
+ | c,4.4,1.0 | ||
+ | c,5.5,1.0 | ||
+ | d, | ||
+ | f, | ||
+ | |||
+ | s, | ||
+ | c, | ||
+ | c,4.4,1.0 | ||
+ | c,5.5,1.0 | ||
+ | p, | ||
+ | d, | ||
+ | |||
+ | s, | ||
+ | c, | ||
+ | c,4.4,1.0 | ||
+ | c,5.5,1.0 | ||
+ | p, | ||
+ | d, | ||
+ | } | ||
+ | hf !closed-shell scf | ||
+ | </ | ||
+ | |||
+ | See [[explicitly_correlated_methods# | ||