mirror of
https://gitlab.com/scemama/qmcchem.git
synced 2024-11-07 06:33:38 +01:00
Fixed dimension
This commit is contained in:
parent
4c69f202e5
commit
0a8867cc81
@ -1863,12 +1863,12 @@ END_PROVIDER
|
|||||||
|
|
||||||
! det_alpha_value_SVD_unique = psi_svd_alpha_unique.T @ det_alpha_value
|
! det_alpha_value_SVD_unique = psi_svd_alpha_unique.T @ det_alpha_value
|
||||||
call dgemv('T', det_alpha_num, n_svd_coefs_unique &
|
call dgemv('T', det_alpha_num, n_svd_coefs_unique &
|
||||||
, 1.d0, psi_svd_alpha_unique(:,:,1), size(psi_svd_alpha_unique,1), det_alpha_value, 1 &
|
, 1.d0, psi_svd_alpha_unique, size(psi_svd_alpha_unique,1), det_alpha_value, 1 &
|
||||||
, 0.d0, det_alpha_value_SVD_unique, 1)
|
, 0.d0, det_alpha_value_SVD_unique, 1)
|
||||||
|
|
||||||
! det_beta_value_SVD_unique = psi_svd_beta_unique.T @ det_beta_value
|
! det_beta_value_SVD_unique = psi_svd_beta_unique.T @ det_beta_value
|
||||||
call dgemv('T', det_beta_num, n_svd_coefs_unique &
|
call dgemv('T', det_beta_num, n_svd_coefs_unique &
|
||||||
, 1.d0, psi_svd_beta_unique(:,:,1), size(psi_svd_beta_unique,1), det_beta_value, 1 &
|
, 1.d0, psi_svd_beta_unique, size(psi_svd_beta_unique,1), det_beta_value, 1 &
|
||||||
, 0.d0, det_beta_value_SVD_unique, 1)
|
, 0.d0, det_beta_value_SVD_unique, 1)
|
||||||
|
|
||||||
call dgemm('N', 'N', 4*elec_alpha_num, n_svd_coefs_unique, det_alpha_num, 1.d0 &
|
call dgemm('N', 'N', 4*elec_alpha_num, n_svd_coefs_unique, det_alpha_num, 1.d0 &
|
||||||
@ -1952,12 +1952,12 @@ END_PROVIDER
|
|||||||
! !!!
|
! !!!
|
||||||
! det_alpha_value_SVD = psi_svd_alpha.T @ det_alpha_value
|
! det_alpha_value_SVD = psi_svd_alpha.T @ det_alpha_value
|
||||||
call dgemv('T', det_alpha_num, n_svd_coefs &
|
call dgemv('T', det_alpha_num, n_svd_coefs &
|
||||||
, 1.d0, psi_svd_alpha(:,:,1), size(psi_svd_alpha,1), det_alpha_value, 1 &
|
, 1.d0, psi_svd_alpha, size(psi_svd_alpha,1), det_alpha_value, 1 &
|
||||||
, 0.d0, det_alpha_value_SVD, 1)
|
, 0.d0, det_alpha_value_SVD, 1)
|
||||||
! !!!
|
! !!!
|
||||||
! det_beta_value_SVD = psi_svd_beta.T @ det_beta_value
|
! det_beta_value_SVD = psi_svd_beta.T @ det_beta_value
|
||||||
call dgemv('T', det_beta_num, n_svd_coefs &
|
call dgemv('T', det_beta_num, n_svd_coefs &
|
||||||
, 1.d0, psi_svd_beta(:,:,1), size(psi_svd_beta,1), det_beta_value, 1 &
|
, 1.d0, psi_svd_beta, size(psi_svd_beta,1), det_beta_value, 1 &
|
||||||
, 0.d0, det_beta_value_SVD, 1)
|
, 0.d0, det_beta_value_SVD, 1)
|
||||||
! !!!
|
! !!!
|
||||||
! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
@ -2014,13 +2014,13 @@ END_PROVIDER
|
|||||||
! !!!
|
! !!!
|
||||||
if (do_pseudo) then
|
if (do_pseudo) then
|
||||||
! det_alpha_pseudo_SVD = det_alpha_pseudo @ psi_svd_alpha * psidet_inv_SVD
|
! det_alpha_pseudo_SVD = det_alpha_pseudo @ psi_svd_alpha * psidet_inv_SVD
|
||||||
call dgemm('N', 'N', 4*elec_alpha_num, n_svd_coefs , det_alpha_num, psidet_inv_SVD &
|
call dgemm('N', 'N', elec_alpha_num, n_svd_coefs , det_alpha_num, psidet_inv_SVD &
|
||||||
, det_alpha_pseudo, size(det_alpha_pseudo,1), psi_svd_alpha(1,1,1) &
|
, det_alpha_pseudo, size(det_alpha_pseudo,1), psi_svd_alpha(1,1,1) &
|
||||||
, size(psi_svd_alpha,1), 0.d0, det_alpha_pseudo_SVD, size(det_alpha_pseudo_SVD,1) )
|
, size(psi_svd_alpha,1), 0.d0, det_alpha_pseudo_SVD, size(det_alpha_pseudo_SVD,1) )
|
||||||
! !!!
|
! !!!
|
||||||
if (elec_beta_num /= 0) then
|
if (elec_beta_num /= 0) then
|
||||||
! det_beta_pseudo_SVD = det_beta_pseudo @ psi_svd_beta * psidet_inv_SVD
|
! det_beta_pseudo_SVD = det_beta_pseudo @ psi_svd_beta * psidet_inv_SVD
|
||||||
call dgemm('N', 'N', 4*elec_beta_num, n_svd_coefs , det_beta_num, psidet_inv_SVD &
|
call dgemm('N', 'N', elec_beta_num, n_svd_coefs , det_beta_num, psidet_inv_SVD &
|
||||||
, det_beta_pseudo(elec_alpha_num+1,1), size(det_beta_pseudo,1) &
|
, det_beta_pseudo(elec_alpha_num+1,1), size(det_beta_pseudo,1) &
|
||||||
, psi_svd_beta(1,1,1), size(psi_svd_beta,1) &
|
, psi_svd_beta(1,1,1), size(psi_svd_beta,1) &
|
||||||
, 0.d0, det_beta_pseudo_SVD(elec_alpha_num+1,1), size(det_beta_pseudo_SVD,1) )
|
, 0.d0, det_beta_pseudo_SVD(elec_alpha_num+1,1), size(det_beta_pseudo_SVD,1) )
|
||||||
@ -2135,6 +2135,60 @@ END_PROVIDER
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
! ! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
|
! ! !!!
|
||||||
|
! do mm = 1, 4
|
||||||
|
! ! !!!
|
||||||
|
! do ee = 1, elec_alpha_num
|
||||||
|
! tmp = 0.d0
|
||||||
|
! do l = 1, n_svd_coefs
|
||||||
|
! tmp = tmp + det_alpha_grad_lapl_SVD(mm,ee,l) * psi_svd_coefs(l,1) &
|
||||||
|
! * det_beta_value_SVD(l)
|
||||||
|
! enddo
|
||||||
|
! psidet_grad_lapl_SVD(mm,ee) = tmp
|
||||||
|
! enddo
|
||||||
|
! ! !!!
|
||||||
|
! if (elec_beta_num /= 0) then
|
||||||
|
! do ee = elec_alpha_num+1, elec_num
|
||||||
|
! tmp = 0.d0
|
||||||
|
! do l = 1, n_svd_coefs
|
||||||
|
! tmp = tmp + det_alpha_value_SVD(l) * psi_svd_coefs(l,1) &
|
||||||
|
! * det_beta_grad_lapl_SVD(mm,ee,l)
|
||||||
|
! enddo
|
||||||
|
! psidet_grad_lapl_SVD(mm,ee) = tmp
|
||||||
|
! enddo
|
||||||
|
! endif
|
||||||
|
! ! !!!
|
||||||
|
! enddo
|
||||||
|
! ! !!!
|
||||||
|
! ! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
|
!
|
||||||
|
! ! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
|
! ! !!!
|
||||||
|
! if (do_pseudo) then
|
||||||
|
! ! !!!
|
||||||
|
! do ee = 1, elec_alpha_num
|
||||||
|
! tmp = 0.d0
|
||||||
|
! do l = 1, n_svd_coefs
|
||||||
|
! tmp = tmp + det_alpha_pseudo_SVD(ee,l) * psi_svd_coefs(l,1) * det_beta_value_SVD(l)
|
||||||
|
! enddo
|
||||||
|
! pseudo_non_local_SVD(ee) = tmp * psidet_inv_SVD
|
||||||
|
! enddo
|
||||||
|
! ! !!!
|
||||||
|
! if (elec_beta_num /= 0) then
|
||||||
|
! do ee = elec_alpha_num+1, elec_num
|
||||||
|
! tmp = 0.d0
|
||||||
|
! do l = 1, n_svd_coefs
|
||||||
|
! tmp = tmp + det_alpha_value_SVD(l) * psi_svd_coefs(l,1) * det_beta_pseudo_SVD(ee,l)
|
||||||
|
! enddo
|
||||||
|
! pseudo_non_local_SVD(ee) = tmp * psidet_inv_SVD
|
||||||
|
! enddo
|
||||||
|
! endif
|
||||||
|
! ! !!!
|
||||||
|
! endif
|
||||||
|
! ! !!!
|
||||||
|
! ! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
|
|
||||||
! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
! -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
|
||||||
! !!!
|
! !!!
|
||||||
do mm = 1, 4
|
do mm = 1, 4
|
||||||
|
Loading…
Reference in New Issue
Block a user