1
0
mirror of https://gitlab.com/scemama/qp_plugins_scemama.git synced 2024-08-31 00:03:50 +02:00
qp_plugins_scemama/devel/dmc_dress/dressing_vector.irp.f
2021-07-30 00:57:03 +02:00

26 lines
637 B
Fortran

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
! \Delta_{state-specific}. \Psi
! Diagonal element is divided by 2 because Delta = D + D^t
END_DOC
integer :: i,ii,k,j, l
double precision :: f, tmp
dressing_column_h(:,:) = 0.d0
dressing_column_s(:,:) = 0.d0
l = dressed_column_idx(1)
do j = 1, n_det
dressing_column_h(j,1) = dmc_delta_h(j)
dressing_column_h(l,1) -= psi_coef(j,1) * dmc_delta_h(j) /psi_coef(l,1)
enddo
dressing_column_h(l,1) = dressing_column_h(l,1) * 0.5d0
END_PROVIDER