Dependency (basis set, fit set)

Conceivably, the sizes of basis and/or fit sets may be so large that the function sets become almost linearly dependent. Numerical problems arise when this happens and results can be seriously affected (a strong indication that something is wrong is that the core orbital energies are shifted significantly from their values in normal basis sets). Although a few (incomplete) tests are carried out for the fit set, the program will generally not check such aspects and carry on without noticing that results may be unreliable.

A new feature has been implemented to take care of this. For reasons of compatibility with previous versions and also because our experience with it is limited so far, we have chosen not to make it the default.

You have to activate it explicitly. Our experience so far suggests that real problems only arise in case of large basis sets with very diffuse functions (i.e.: not with the normal basis sets provided in the standard package). Starting from ADF2022, it is automatically activated in case of (any variant of) GW.

The DEPENDENCY block turns internal checks on and invokes countermeasures by the program when the situation is suspect. A few technical (threshold-type) parameters can be set as well, but this is not necessary, assuming that the defaults are adequate.

DEPENDENCY
   {bas tolbas}
   {eig BigEig}
   {fit tolfit}
End
tolbas

A criterion applied to the overlap matrix of unoccupied normalized SFOs. Eigenvectors corresponding to smaller eigenvalues are eliminated from the valence space. Default value: 1e-4. Note: if you choose a very coarse value, you’ll remove too many degrees of freedom in the basis set, while if you choose it too strict, the numerical problems may not be countered adequately. Starting from AMS2022, ADF will use a rather large value 5e-3 in case of (any variant of) GW if it is not specified on input.

BigEig

Merely a technical parameter. When the DEPENDENCY key is activated, any rejected basis functions (i.e.: linear combinations that correspond with small eigenvalues in the virtual SFOs overlap matrix) are normally processed until diagonalization of the Fock matrix takes place. At that point, all matrix elements corresponding to rejected functions are set to zero (off-diagonal) and BigEig on the diagonal. Default: 1e8.

tolfit

Similar to tolbas. The criterion is now applied to the overlap matrix of fit functions. The fit coefficients, which give the approximate expansion of the charge density in terms of the fit functions (for the evaluation of the Coulomb potential) are set to zero for fit functions (i.e.: combinations of) corresponding to small-eigenvalue eigenvectors of the fit overlap matrix. Default: 1e-10.

Notes:

  • Application/adjustment of tolfit is not recommended: it can seriously increase the CPU usage while the dependency problems with the fit set are usually not so serious anyway.

  • Application of the dependency/tolbas feature should not be done in an automatic way: you should test and compare results obtained with different values; some systems look much more sensitive than others. We have, so far, not been able to understand an unambiguous pattern in these experiences. Of course, when things become clearer in this respect, we will implement corresponding logic into the program.

  • When the dependency key is used, the number of functions that are effectively deleted is printed in the output file, in the SCF part (cycle 1) of the computation section.

  • The adf.rkf (TAPE21) result file of a calculation that used the DEPENDENCY key contains information about the omitted functions and these will also be omitted from the fragment basis when the adf.rkf is used as a fragment file.