From f3f8186387941611ed1126b044c2443012329a11 Mon Sep 17 00:00:00 2001 From: Pierre-Francois Loos Date: Wed, 15 Jan 2020 09:22:54 +0100 Subject: [PATCH] fix huckel guess --- src/QuAcK/huckel_guess.f90 | 44 ++++++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/src/QuAcK/huckel_guess.f90 b/src/QuAcK/huckel_guess.f90 index 07fea2a..2bf1835 100644 --- a/src/QuAcK/huckel_guess.f90 +++ b/src/QuAcK/huckel_guess.f90 @@ -30,32 +30,44 @@ subroutine huckel_guess(nBas,nO,S,Hc,ERI,J,K,X,cp,Fp,e,c,P) a = 1.75d0 - Fp = matmul(transpose(X),matmul(Hc,X)) - cp(:,:) = Fp(:,:) - call diagonalize_matrix(nBas,cp,e) - c = matmul(X,cp) - P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO))) - - call Coulomb_matrix_AO_basis(nBas,P,ERI,J) - call exchange_matrix_AO_basis(nBas,P,ERI,K) + Fp(:,:) = Hc(:,:) do mu=1,nBas - - Fp(mu,mu) = Hc(mu,mu) + J(mu,mu) + 0.5d0*K(mu,mu) - do nu=mu+1,nBas Fp(mu,nu) = 0.5d0*a*S(mu,nu)*(Hc(mu,mu) + Hc(nu,nu)) Fp(nu,mu) = Fp(mu,nu) enddo - enddo + - Fp = matmul(transpose(X),matmul(Fp,X)) + Fp(:,:) = matmul(transpose(X(:,:)),matmul(Fp(:,:),X(:,:))) + cp(:,:) = Fp(:,:) + call diagonalize_matrix(nBas,cp,e) + c(:,:) = matmul(X(:,:),cp(:,:)) + P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO))) - cp(:,:) = Fp(:,:) - call diagonalize_matrix(nBas,cp,e) - c = matmul(X,cp) +! call Coulomb_matrix_AO_basis(nBas,P,ERI,J) +! call exchange_matrix_AO_basis(nBas,P,ERI,K) + +! do mu=1,nBas + +! Fp(mu,mu) = Hc(mu,mu) + J(mu,mu) + 0.5d0*K(mu,mu) + +! do nu=mu+1,nBas + +! Fp(mu,nu) = 0.5d0*a*S(mu,nu)*(Hc(mu,mu) + Hc(nu,nu)) +! Fp(nu,mu) = Fp(mu,nu) + +! enddo + +! enddo + +! Fp = matmul(transpose(X),matmul(Fp,X)) + +! cp(:,:) = Fp(:,:) +! call diagonalize_matrix(nBas,cp,e) +! c = matmul(X,cp) end subroutine