theochem / horton

HORTON: Helpful Open-source Research TOol for N-fermion systems
http://theochem.github.io/horton/
GNU General Public License v3.0
92 stars 40 forks source link

Add condition number checking of overlap #226

Open matt-chan opened 7 years ago

matt-chan commented 7 years ago

The PySCF code checks for the condition number of the overlap matrix, just as a pre-warning for bad convergence. It'd probably be a nice feature to have in HORTON as well.

matt-chan commented 7 years ago

The MinAO initial guess might also be something of interest to us.

tovrstra commented 6 years ago

Just checking the condition number is not sufficient. Most QC programs define a transformation of the AO basis before starting the SCF cycle. In this transformation, redundant degrees of freedom are removed and the conditioning is fixed.

PaulWAyers commented 6 years ago

We should be sure to have some options here. For checking results against other codes it is sometimes essential to be able to control the "throw-away" for highly-overlapping basis functions. At the simplest, one would define a new basis set of the (nonsingular) values but that isn't an "AO basis set." So I think in practice people start tossing away diffuse functions (which are the most problematic) according to the highest (in magnitude) contribution to the singular vectors. That is an OK approach....still, having the ability to reproduce other codes is desirable here. Also, sometimes you get crazy results for population analysis/properties even when the energy is OK; so different "discard threshholds" maybe needed depending on the purpose of a calculation.