10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-06-02 11:25:26 +02:00

Hartree-Fock fixed when ao_num /= mo_tot_num

This commit is contained in:
Anthony Scemama 2014-07-14 17:38:03 +02:00
parent 849c57e6d9
commit a9f871cd49

View File

@ -1,4 +1,4 @@
BEGIN_PROVIDER [ double precision, diagonal_Fock_matrix_mo, (mo_tot_num) ]
BEGIN_PROVIDER [ double precision, diagonal_Fock_matrix_mo, (ao_num) ]
&BEGIN_PROVIDER [ double precision, eigenvectors_Fock_matrix_mo, (ao_num_align,mo_tot_num) ]
implicit none
BEGIN_DOC
@ -26,7 +26,7 @@
lwork = -1
liwork = -1
call dsygvd(1,'v','u',mo_tot_num,F,size(F,1),S,size(S,1),&
call dsygvd(1,'v','u',ao_num,F,size(F,1),S,size(S,1),&
diagonal_Fock_matrix_mo, work, lwork, iwork, liwork, info)
if (info /= 0) then
@ -38,14 +38,14 @@
deallocate(work,iwork)
allocate(work(lwork), iwork(liwork) )
call dsygvd(1,'v','u',mo_tot_num,F,size(F,1),S,size(S,1),&
call dsygvd(1,'v','u',ao_num,F,size(F,1),S,size(S,1),&
diagonal_Fock_matrix_mo, work, lwork, iwork, liwork, info)
if (info /= 0) then
print *, irp_here//' failed'
stop 1
endif
do j=1,ao_num
do j=1,mo_tot_num
do i=1,ao_num
eigenvectors_Fock_matrix_mo(i,j) = F(i,j)
enddo