2018-02-14 10:33:11 +01:00
|
|
|
BEGIN_PROVIDER [ double precision, dressing_column_h, (N_det,N_states) ]
|
|
|
|
&BEGIN_PROVIDER [ double precision, dressing_column_s, (N_det,N_states) ]
|
|
|
|
implicit none
|
|
|
|
BEGIN_DOC
|
2018-03-23 13:37:03 +01:00
|
|
|
! \Delta_{state-specific}. \Psi
|
2018-02-14 10:33:11 +01:00
|
|
|
END_DOC
|
|
|
|
|
2018-03-05 17:04:26 +01:00
|
|
|
integer :: i,ii,k,j, l
|
2018-02-14 10:33:11 +01:00
|
|
|
double precision :: f, tmp
|
|
|
|
double precision, external :: u_dot_v
|
2018-05-14 13:00:04 +02:00
|
|
|
logical, external :: detEq
|
|
|
|
|
2018-03-05 17:04:26 +01:00
|
|
|
dressing_column_h(:,:) = 0.d0
|
|
|
|
dressing_column_s(:,:) = 0.d0
|
|
|
|
|
2018-02-14 10:33:11 +01:00
|
|
|
do k=1,N_states
|
2018-09-29 00:43:31 +02:00
|
|
|
l = dressed_column_idx(k)
|
2018-03-05 17:04:26 +01:00
|
|
|
do j = 1, n_det
|
2018-03-23 13:37:03 +01:00
|
|
|
dressing_column_h(j,k) = delta_ij(k,j,1)
|
2018-05-14 13:00:04 +02:00
|
|
|
dressing_column_s(j,k) = delta_ij(k,j,2)
|
2018-09-29 00:43:31 +02:00
|
|
|
dressing_column_h(l,k) -= 0.5d0 * psi_coef(j,k) * delta_ij(k,j,1) /psi_coef(l,k)
|
|
|
|
dressing_column_s(l,k) -= 0.5d0 * psi_coef(j,k) * delta_ij(k,j,2) /psi_coef(l,k)
|
2018-02-14 10:33:11 +01:00
|
|
|
enddo
|
|
|
|
enddo
|
|
|
|
END_PROVIDER
|
|
|
|
|
2018-09-28 19:21:55 +02:00
|
|
|
|
|
|
|
|