From 6df119aaba815a2f88887c202bdd0799e13457b6 Mon Sep 17 00:00:00 2001 From: Pierre-Francois Loos Date: Thu, 20 Jul 2023 21:54:31 +0200 Subject: [PATCH] move exchange --- src/AOtoMO/exchange_matrix_MO_basis.f90 | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/AOtoMO/exchange_matrix_MO_basis.f90 diff --git a/src/AOtoMO/exchange_matrix_MO_basis.f90 b/src/AOtoMO/exchange_matrix_MO_basis.f90 new file mode 100644 index 0000000..5cb13b1 --- /dev/null +++ b/src/AOtoMO/exchange_matrix_MO_basis.f90 @@ -0,0 +1,26 @@ +subroutine exchange_matrix_MO_basis(nBas,c,P,G,K) + +! Compute exchange matrix in the MO basis + + implicit none + include 'parameters.h' + +! Input variables + + integer,intent(in) :: nBas + double precision,intent(in) :: c(nBas,nBas),P(nBas,nBas) + double precision,intent(in) :: G(nBas,nBas,nBas,nBas) + +! Output variables + + double precision,intent(out) :: K(nBas,nBas) + +! Compute Hartree Hamiltonian in the AO basis + + call exchange_matrix_AO_basis(nBas,P,G,K) + +! Transform Coulomb matrix in the MO basis + + K = matmul(transpose(c),matmul(K,c)) + +end subroutine exchange_matrix_MO_basis