mirror of
https://gitlab.com/scemama/qp_plugins_scemama.git
synced 2024-08-30 07:53:39 +02:00
Fixed Hmo.qp
This commit is contained in:
commit
c3890acae7
@ -22,8 +22,8 @@ subroutine run
|
|||||||
! Pmo.qp : pseudopotential integrals
|
! Pmo.qp : pseudopotential integrals
|
||||||
!
|
!
|
||||||
! Vmo.qp : electron-nucleus potential
|
! Vmo.qp : electron-nucleus potential
|
||||||
|
!
|
||||||
! Hmo.qp : one-electron integrals. If Hmo is present, don't try to read V,P,T
|
! Hmo.qp : core hamiltonian. If hmo exists, the other 1-e files are not read
|
||||||
!
|
!
|
||||||
! Wmo.qp : electron repulsion integrals
|
! Wmo.qp : electron repulsion integrals
|
||||||
!
|
!
|
||||||
@ -57,7 +57,6 @@ subroutine run
|
|||||||
call ezfio_set_nuclei_io_nuclear_repulsion('Read')
|
call ezfio_set_nuclei_io_nuclear_repulsion('Read')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
! One-electron integrals
|
! One-electron integrals
|
||||||
|
|
||||||
exists = .False.
|
exists = .False.
|
||||||
@ -152,6 +151,7 @@ subroutine run
|
|||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
|
||||||
! Two-electron integrals
|
! Two-electron integrals
|
||||||
|
|
||||||
iunit = getunitandopen('Wmo.qp','r')
|
iunit = getunitandopen('Wmo.qp','r')
|
||||||
|
@ -53,6 +53,10 @@ subroutine run
|
|||||||
print *, 'threshold: ', 2.858 * D(k/2)
|
print *, 'threshold: ', 2.858 * D(k/2)
|
||||||
print *, 'Entropy : ', entropy
|
print *, 'Entropy : ', entropy
|
||||||
|
|
||||||
|
call ezfio_set_spindeterminants_psi_svd_alpha(U)
|
||||||
|
call ezfio_set_spindeterminants_psi_svd_beta (Vt)
|
||||||
|
call ezfio_set_spindeterminants_psi_svd_coefs(D)
|
||||||
|
|
||||||
! do i=1,n_det_alpha_unique
|
! do i=1,n_det_alpha_unique
|
||||||
! print '(I6,4(X,F12.8))', i, U(i,1:4)
|
! print '(I6,4(X,F12.8))', i, U(i,1:4)
|
||||||
! enddo
|
! enddo
|
||||||
|
@ -55,16 +55,16 @@ subroutine routine_s2
|
|||||||
integer :: i,j,k
|
integer :: i,j,k
|
||||||
double precision :: accu(N_states)
|
double precision :: accu(N_states)
|
||||||
|
|
||||||
print *, 'Weights of the SOP'
|
print *, 'Weights of the CFG'
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
print *, i, real(weight_occ_pattern(det_to_occ_pattern(i),:)), real(sum(weight_occ_pattern(det_to_occ_pattern(i),:)))
|
print *, i, real(weight_configuration(det_to_configuration(i),:)), real(sum(weight_configuration(det_to_configuration(i),:)))
|
||||||
enddo
|
enddo
|
||||||
print*, 'Min weight of the occupation pattern ?'
|
print*, 'Min weight of the occupation pattern ?'
|
||||||
read(5,*) wmin
|
read(5,*) wmin
|
||||||
|
|
||||||
ndet_max = 0
|
ndet_max = 0
|
||||||
do i=1,N_det
|
do i=1,N_det
|
||||||
if (maxval(weight_occ_pattern( det_to_occ_pattern(i),:)) < wmin) cycle
|
if (maxval(weight_configuration( det_to_configuration(i),:)) < wmin) cycle
|
||||||
ndet_max = ndet_max+1
|
ndet_max = ndet_max+1
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ subroutine routine_s2
|
|||||||
accu = 0.d0
|
accu = 0.d0
|
||||||
k=0
|
k=0
|
||||||
do i = 1, N_det
|
do i = 1, N_det
|
||||||
if (maxval(weight_occ_pattern( det_to_occ_pattern(i),:)) < wmin) cycle
|
if (maxval(weight_configuration( det_to_configuration(i),:)) < wmin) cycle
|
||||||
k = k+1
|
k = k+1
|
||||||
do j = 1, N_int
|
do j = 1, N_int
|
||||||
psi_det_tmp(j,1,k) = psi_det(j,1,i)
|
psi_det_tmp(j,1,k) = psi_det(j,1,i)
|
||||||
|
Loading…
Reference in New Issue
Block a user