Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
basis_input [2025/09/12 09:08] – missing words, compare with old pdf version of manual dollbasis_input [2026/05/30 09:11] (current) – [Primitive set definition] werner
Line 253: Line 253:
 If a basis is not specified at all for any unique atom group, then the program assumes VDZ. If a basis is not specified at all for any unique atom group, then the program assumes VDZ.
  
-If the setname is ''JKFIT'', this basis used automatically in DF-HF or DF-KS unless specified differently using BASIS or DF_BASIS options. Note, however, that this is not the case if different name (e.g. JK) is used. In this case one would need to give+If the setnames are ''JFIT'', ''JKFIT'', ''MP2FIT'', ''CCSDFIT'', ''OPTRI'' and/or ''CABS'' , these basis are used automatically all programs where needed (unless different basis sets are defined in the input for these programs). Note, however, that this is not the case if  different names (e.g. JK) are used. In this case one would need to give, for example,
  
 ''%%DF-HF,BASIS=JK%%'' ''%%DF-HF,BASIS=JK%%''
Line 263: Line 263:
 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 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
  
-''SET'',//name//,[''CONTEXT=''//context//] where //name// is an arbitrary name that can be used later to choose the basis set using options like ''df_basis=''//name//, ''ri_basis=''//name// etc. ''CONTEXT'' can optionally be specified to select the basis types ''JFIT'', ''JKFIT'', ''MP2FIT'', ''CCSDFIT'', or ''OPTRI''. This affects the choice of default basis sets. For example+''SET'',//name//,[''CONTEXT=''//context//] where //name// is an arbitrary name that can be used later to choose the basis set using options like ''df_basis=''//name//, ''ri_basis=''//name// etc. ''CONTEXT'' can optionally be specified to select the basis types ''JFIT'', ''JKFIT'', ''MP2FIT'', ''CCSDFIT'', ''OPTRI'', or ''CABS''. This affects the choice of default basis sets. For example
  
 <code> <code>
Line 286: Line 286:
 } }
 </code> </code>
-If the setname begins with ''JFIT'', ''JKFIT'', ''MP2FIT'', ''CCSDFIT'', or ''OPTRI'', these strings define the default context.+If the setname begins with ''JFIT'', ''JKFIT'', ''MP2FIT'', ''CCSDFIT'', ''OPTRI'', or ''CABS'', these strings define the default context. If the setnames correspond exactly to the context name, the corresponding sets are used automatically where needed (e.g. ''JKFIT'' in DF-HF and ''MP2FIT'' in DF-MP2).  
  
 Optionally, the basis function type ''CARTESIAN'' (6d, 10f etc) or ''SPHERICAL'' (5d, 7f etc) can be chosen using ''ATTRIBUTE''. By default, the same type as for the orbital basis is used. Normally, ''SPHERICAL'' is used and recommended. Density fitting with CARTESIAN is limited to g-functions in the orbital basis. Furthermore, density fitting with CARTESIAN is much slower than with SPHERICAL. Optionally, the basis function type ''CARTESIAN'' (6d, 10f etc) or ''SPHERICAL'' (5d, 7f etc) can be chosen using ''ATTRIBUTE''. By default, the same type as for the orbital basis is used. Normally, ''SPHERICAL'' is used and recommended. Density fitting with CARTESIAN is limited to g-functions in the orbital basis. Furthermore, density fitting with CARTESIAN is much slower than with SPHERICAL.
Line 303: Line 303:
  
 In all four cases //type// defines the angular symmetry (''%%S, P, D, F, G, H,%%'' or ''I''). //type// can include several types, e.g., ''SPD'' or ''DF'' (this usually makes sense only with default library contractions or no contractions). The basis is loaded for all atoms with tag name //atom// in the geometry input. If //atom// is an integer, it refers to a z-matrix row. In all four cases //type// defines the angular symmetry (''%%S, P, D, F, G, H,%%'' or ''I''). //type// can include several types, e.g., ''SPD'' or ''DF'' (this usually makes sense only with default library contractions or no contractions). The basis is loaded for all atoms with tag name //atom// in the geometry input. If //atom// is an integer, it refers to a z-matrix row.
 +
 +If individual basis functions are specified, and "+" is given before the type (e.g. ''%%+S%%'', ''%%+P%%'') these functions are added to an existing default basis (only with molpro2026.1 or later).
 +
  
 a) Library basis sets: a) Library basis sets:
Line 314: Line 317:
 Load basis named //name// from the library. Load basis named //name// from the library.
  
-If //scale// or //scale2// is present, all exponents are scaled by //scale// or //scale%%**%%2//, respectively. If //nprim// is specified, the first //nprim// exponents only are taken from the library. If //nprim// is negative or //ndel// is given, the last $|nprim|$ ($ndel$) basis functions from the library set are deleted. Associated with the library basis may be a set of default contraction coefficients which may be accessed in subsequent contraction cards. //type// can include several types, e.g., ''SPD'' or ''DF''. This usually makes sense only with default contractions, i.e., such cards should be followed only by “''%% C%%''” without any other specifications for contractions.+If ''SCALE'' or ''SCALE2'' is present, all exponents are scaled by //scale// or //scale%%**%%2//, respectively. If ''NPRIM'' is specified, the first //nprim// exponents only are taken from the library. If //nprim// is negative or ''DELETE=''//ndel// is given, the last $|nprim|$ ($ndel$) basis functions from the library set are deleted. In these cases only a single angular momentum (e.g. //s// or //p//) is allowed in //type//. Associated with the library basis may be a set of default contraction coefficients which may be accessed in subsequent contraction cards. //type// can include several types, e.g., ''SPD'' or ''DF''. This usually makes sense only with default contractions, i.e., such cards should be followed only by “''%% C%%''” without any other specifications for contractions.
  
 b) Explicit basis input: b) Explicit basis input:
Line 323: Line 326:
  
 The exponents (and other numerical parameters described below such as numbers of functions, and contraction coefficients) can be given as general input expressions, possibly involving variables. It is important to note, however, that these expressions are evaluated typically just once, at the same time as the complete basis set is parsed. This generally happens the first time that the basis set is required, perhaps before the first SCF calculation can be done. If the variables on which the basis depends are altered, this will not be noticed by the program, and the new basis set will not be used for subsequent stages of the computation. If, however, a new basis block is presented in the input, then the program marks as outdated any quantities such as integrals that have been calculated with the old basis set; subsequent job steps will then use the new basis. The exponents (and other numerical parameters described below such as numbers of functions, and contraction coefficients) can be given as general input expressions, possibly involving variables. It is important to note, however, that these expressions are evaluated typically just once, at the same time as the complete basis set is parsed. This generally happens the first time that the basis set is required, perhaps before the first SCF calculation can be done. If the variables on which the basis depends are altered, this will not be noticed by the program, and the new basis set will not be used for subsequent stages of the computation. If, however, a new basis block is presented in the input, then the program marks as outdated any quantities such as integrals that have been calculated with the old basis set; subsequent job steps will then use the new basis.
 +
 +If "+" is given before the type (e.g. +s, +p) these functions are added to a previously defined default basis.
  
 c) Even tempered basis sets: c) Even tempered basis sets:
Line 332: Line 337:
 //type,atom//,''EVEN'',''NPRIM=''//nprim//,[''RATIO=''//ratio//],[''CENTRE=''//centre//],[''DRATIO=''//dratio//] //type,atom//,''EVEN'',''NPRIM=''//nprim//,[''RATIO=''//ratio//],[''CENTRE=''//centre//],[''DRATIO=''//dratio//]
  
-Generates a generalized even tempered set of functions. The number of functions $n$ is specified by //nprim//, their geometric mean $c$ by //centre//, the mean ratio of successive exponents $r$ by //ratio//, and the variation of this ratio, $d$, by //dratio//. 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 =+Generates a generalized even tempered set of functions. The number of functions $n$ is specified by //nprim//, their geometric mean $c$ by //centre//, the mean ratio of successive exponents $r$ by //ratio//, and the variation of this ratio, $d$, by //dratio//. If //centre// is not given, the previous basis of the same type is extended by diffuse functions. This also holds if a default basis has been specified (only with molpro2026.1 or later). 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 \log c
 + ((n+1)/2-i) \,\log r + ((n+1)/2-i) \,\log r