From 88c47b1f73370cdad670b16807c32d6ff8d7c6d8 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Fri, 27 Nov 2015 10:30:50 +0100 Subject: [PATCH] Trap linear dependencies in basis set --- src/AO_Basis/ao_overlap.irp.f | 1 - src/MOGuess/guess_overlap.irp.f | 1 + src/Utils/LinearAlgebra.irp.f | 4 ++-- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/AO_Basis/ao_overlap.irp.f b/src/AO_Basis/ao_overlap.irp.f index 9b3fa7e9..4487ff77 100644 --- a/src/AO_Basis/ao_overlap.irp.f +++ b/src/AO_Basis/ao_overlap.irp.f @@ -60,7 +60,6 @@ enddo !$OMP END PARALLEL DO - ! Check for linear dependencies in the basis set END_PROVIDER diff --git a/src/MOGuess/guess_overlap.irp.f b/src/MOGuess/guess_overlap.irp.f index cf222507..c2f090e5 100644 --- a/src/MOGuess/guess_overlap.irp.f +++ b/src/MOGuess/guess_overlap.irp.f @@ -4,6 +4,7 @@ program guess_mimi END_DOC implicit none character*(64) :: label + mo_coef = ao_ortho_lowdin_coef TOUCH mo_coef label = "Guess" diff --git a/src/Utils/LinearAlgebra.irp.f b/src/Utils/LinearAlgebra.irp.f index c5e66006..dab9e921 100644 --- a/src/Utils/LinearAlgebra.irp.f +++ b/src/Utils/LinearAlgebra.irp.f @@ -82,8 +82,8 @@ subroutine ortho_lowdin(overlap,LDA,N,C,LDC,m) !$OMP DO do i=1,n - if ( D(i) < 1.d-6 ) then - D(i) = 0.d0 + if ( D(i) < 1.d-12 ) then + stop 'Linear dependence in basis set' else D(i) = 1.d0/dsqrt(D(i)) endif