mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-11-07 05:53:37 +01:00
Merge pull request #15 from QuantumPackage/dev-stable-tc-scf
Fix extrapolated energy
This commit is contained in:
commit
818f985a1a
@ -140,6 +140,8 @@ end
|
|||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
|
! TODO : build the vector of chi_i(r) chi_j(r) and conscequently grad_i(r) grad_j(r)
|
||||||
|
! : the same for gamma_ij and big dot product
|
||||||
do istate = 1, N_states
|
do istate = 1, N_states
|
||||||
! alpha density
|
! alpha density
|
||||||
! aos_array_bis = \rho_ao * aos_array
|
! aos_array_bis = \rho_ao * aos_array
|
||||||
|
@ -39,6 +39,9 @@ subroutine diagonalize_CI_tc_bi_ortho(ndet, E_tc,norm,pt2_data,print_pt2)
|
|||||||
write(*,'(A28,X,I10,X,100(F16.8,X))')'Ndet,E,E+PT2,E+RPT2,|PT2|=',ndet,E_tc ,E_tc + pt2_tmp/norm,E_tc + rpt2_tmp/norm,abs_pt2
|
write(*,'(A28,X,I10,X,100(F16.8,X))')'Ndet,E,E+PT2,E+RPT2,|PT2|=',ndet,E_tc ,E_tc + pt2_tmp/norm,E_tc + rpt2_tmp/norm,abs_pt2
|
||||||
print*,'*****'
|
print*,'*****'
|
||||||
endif
|
endif
|
||||||
|
psi_energy(1:N_states) = eigval_right_tc_bi_orth(1:N_states)
|
||||||
|
psi_s2(1:N_states) = s2_eigvec_tc_bi_orth(1:N_states)
|
||||||
|
|
||||||
E_tc = eigval_right_tc_bi_orth(1)
|
E_tc = eigval_right_tc_bi_orth(1)
|
||||||
norm = norm_ground_left_right_bi_orth
|
norm = norm_ground_left_right_bi_orth
|
||||||
ndet = N_det
|
ndet = N_det
|
||||||
@ -50,7 +53,7 @@ subroutine diagonalize_CI_tc_bi_ortho(ndet, E_tc,norm,pt2_data,print_pt2)
|
|||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
SOFT_TOUCH eigval_left_tc_bi_orth eigval_right_tc_bi_orth leigvec_tc_bi_orth reigvec_tc_bi_orth norm_ground_left_right_bi_orth
|
SOFT_TOUCH eigval_left_tc_bi_orth eigval_right_tc_bi_orth leigvec_tc_bi_orth reigvec_tc_bi_orth norm_ground_left_right_bi_orth
|
||||||
SOFT_TOUCH psi_l_coef_bi_ortho psi_r_coef_bi_ortho psi_coef
|
SOFT_TOUCH psi_l_coef_bi_ortho psi_r_coef_bi_ortho psi_coef psi_energy psi_s2
|
||||||
|
|
||||||
call save_tc_bi_ortho_wavefunction
|
call save_tc_bi_ortho_wavefunction
|
||||||
end
|
end
|
||||||
|
@ -233,8 +233,6 @@ end
|
|||||||
do istate = N_states+1, n_states_diag
|
do istate = N_states+1, n_states_diag
|
||||||
vec_tmp(istate,istate) = 1.d0
|
vec_tmp(istate,istate) = 1.d0
|
||||||
enddo
|
enddo
|
||||||
!call davidson_general_ext_rout_nonsym_b1space(vec_tmp, H_jj, eigval_left_tc_bi_orth, N_det, n_states, n_states_diag, converged, htcdag_bi_ortho_calc_tdav)
|
|
||||||
!call davidson_general_ext_rout_nonsym_b1space(vec_tmp, H_jj, eigval_left_tc_bi_orth, N_det, n_states, n_states_diag, converged, H_tc_dagger_u_0_opt)
|
|
||||||
integer :: n_it_max,i_it
|
integer :: n_it_max,i_it
|
||||||
n_it_max = 1
|
n_it_max = 1
|
||||||
converged = .False.
|
converged = .False.
|
||||||
@ -300,26 +298,6 @@ end
|
|||||||
print*,' <S2> = ', s2_eigvec_tc_bi_orth(i)
|
print*,' <S2> = ', s2_eigvec_tc_bi_orth(i)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
double precision, allocatable :: buffer(:,:)
|
|
||||||
allocate(buffer(N_det,N_states))
|
|
||||||
do k = 1, N_states
|
|
||||||
do i = 1, N_det
|
|
||||||
psi_l_coef_bi_ortho(i,k) = leigvec_tc_bi_orth(i,k)
|
|
||||||
buffer(i,k) = leigvec_tc_bi_orth(i,k)
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
TOUCH psi_l_coef_bi_ortho
|
|
||||||
call ezfio_set_tc_bi_ortho_psi_l_coef_bi_ortho(buffer)
|
|
||||||
do k = 1, N_states
|
|
||||||
do i = 1, N_det
|
|
||||||
psi_r_coef_bi_ortho(i,k) = reigvec_tc_bi_orth(i,k)
|
|
||||||
buffer(i,k) = reigvec_tc_bi_orth(i,k)
|
|
||||||
enddo
|
|
||||||
enddo
|
|
||||||
TOUCH psi_r_coef_bi_ortho
|
|
||||||
call ezfio_set_tc_bi_ortho_psi_r_coef_bi_ortho(buffer)
|
|
||||||
deallocate(buffer)
|
|
||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user