mirror of
https://gitlab.com/scemama/qmcchem.git
synced 2024-11-07 14:43:39 +01:00
Introduced psi_det_tmp
This commit is contained in:
parent
5db05a2aee
commit
5657597900
17
src/wf.irp.f
17
src/wf.irp.f
@ -95,7 +95,7 @@ BEGIN_PROVIDER [ double precision, det_coef_matrix_dense, (det_alpha_num, det_be
|
|||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ integer, det_num ]
|
BEGIN_PROVIDER [ integer, det_num ]
|
||||||
implicit none
|
implicit none
|
||||||
BEGIN_DOC
|
BEGIN_DOC
|
||||||
! Number of Det_a x Det_b products. The determinant basis set is reduced with
|
! Number of Det_a x Det_b products. The determinant basis set is reduced with
|
||||||
@ -107,8 +107,11 @@ BEGIN_PROVIDER [ integer, det_num ]
|
|||||||
double precision :: d_alpha(det_alpha_num), d_beta (det_beta_num)
|
double precision :: d_alpha(det_alpha_num), d_beta (det_beta_num)
|
||||||
integer :: i_alpha(det_alpha_num), i_beta(det_beta_num)
|
integer :: i_alpha(det_alpha_num), i_beta(det_beta_num)
|
||||||
integer :: iorder(max(det_alpha_num,det_beta_num))
|
integer :: iorder(max(det_alpha_num,det_beta_num))
|
||||||
|
integer*8, allocatable :: psi_det_tmp(:,:)
|
||||||
double precision :: t, norm
|
double precision :: t, norm
|
||||||
|
|
||||||
|
allocate (psi_det_tmp (N_int,max(det_alpha_num,det_beta_num)))
|
||||||
|
|
||||||
t = ci_threshold
|
t = ci_threshold
|
||||||
|
|
||||||
! Compute the norm of the alpha and beta determinants
|
! Compute the norm of the alpha and beta determinants
|
||||||
@ -146,9 +149,12 @@ BEGIN_PROVIDER [ integer, det_num ]
|
|||||||
enddo
|
enddo
|
||||||
|
|
||||||
do i=1,det_alpha_num
|
do i=1,det_alpha_num
|
||||||
psi_det_alpha(:,i) = psi_det_alpha(:,iorder(i))
|
psi_det_tmp(:,i) = psi_det_alpha(:,iorder(i))
|
||||||
i_alpha(iorder(i)) = i
|
i_alpha(iorder(i)) = i
|
||||||
enddo
|
enddo
|
||||||
|
do i=1,det_alpha_num
|
||||||
|
psi_det_alpha(:,i) = psi_det_tmp(:,i)
|
||||||
|
enddo
|
||||||
|
|
||||||
! Reorder beta determinants
|
! Reorder beta determinants
|
||||||
do i=1,det_beta_num
|
do i=1,det_beta_num
|
||||||
@ -173,9 +179,13 @@ BEGIN_PROVIDER [ integer, det_num ]
|
|||||||
enddo
|
enddo
|
||||||
|
|
||||||
do i=1,det_beta_num
|
do i=1,det_beta_num
|
||||||
psi_det_beta(:,i) = psi_det_beta(:,iorder(i))
|
psi_det_tmp(:,i) = psi_det_beta(:,iorder(i))
|
||||||
i_beta(iorder(i)) = i
|
i_beta(iorder(i)) = i
|
||||||
enddo
|
enddo
|
||||||
|
do i=1,det_beta_num
|
||||||
|
psi_det_beta(:,i) = psi_det_tmp(:,i)
|
||||||
|
enddo
|
||||||
|
deallocate(psi_det_tmp)
|
||||||
|
|
||||||
|
|
||||||
! Apply the threshold to the wave function
|
! Apply the threshold to the wave function
|
||||||
@ -366,7 +376,6 @@ BEGIN_PROVIDER [ integer, det_alpha_order, (det_alpha_num) ]
|
|||||||
! Order in which to compute the alhpa determinants
|
! Order in which to compute the alhpa determinants
|
||||||
END_DOC
|
END_DOC
|
||||||
integer :: i
|
integer :: i
|
||||||
! double precision :: tmp(det_alpha_num)
|
|
||||||
do i=1,det_alpha_num
|
do i=1,det_alpha_num
|
||||||
det_alpha_order(i) = i
|
det_alpha_order(i) = i
|
||||||
enddo
|
enddo
|
||||||
|
Loading…
Reference in New Issue
Block a user