1
0
mirror of https://gitlab.com/scemama/qp_plugins_scemama.git synced 2024-12-22 12:23:37 +01:00

Dressing OK

This commit is contained in:
Anthony Scemama 2021-07-31 01:17:07 +02:00
parent e9bd3ee096
commit 47b41fd82d
2 changed files with 10 additions and 5 deletions

View File

@ -1,4 +1,4 @@
program diagonalize_h
program dmc_dress
implicit none
BEGIN_DOC
! Program that extracts the lowest states of the Hamiltonian dressed by the QMC
@ -9,7 +9,7 @@ program diagonalize_h
touch read_wf
call pre
call routine
call save_wavefunction_general(N_det,N_states,psi_det_sorted,size(psi_coef_sorted,1),psi_coef_sorted)
! call save_wavefunction_general(N_det,N_states,psi_det_sorted,size(psi_coef_sorted,1),psi_coef_sorted)
end
subroutine pre
@ -22,6 +22,7 @@ subroutine pre
tmp(1:N_det,1:1) = matmul(h_matrix_dressed(1:N_det,1:N_det), right(1:N_det,1:1))
res(1:1,1:1) = matmul(left(1:1,1:N_det), tmp(1:N_det,1:1))
print *, 'E_in = ', res(1,1)
print *, 'HPsi/c0 = ', tmp(1,1)/psi_coef(1,1)
end
subroutine routine
implicit none

View File

@ -14,10 +14,14 @@
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)
if (j == l) cycle
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
dressing_column_h(l,1) += dmc_delta_h(l)
dressing_column_h(l,1) *= 0.5d0
print *, 'COUCOU XXX'
END_PROVIDER