10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-06-22 13:12:16 +02:00

Bug corrected

This commit is contained in:
Anthony Scemama 2015-10-19 20:14:47 +02:00
parent 5470e05913
commit 3916394328
3 changed files with 10 additions and 9 deletions

View File

@ -22,4 +22,5 @@ irpf90.make
irpf90_entities irpf90_entities
save_for_qmcchem save_for_qmcchem
tags tags
target_pt2_qmc target_pt2_qmc
test

View File

@ -70,7 +70,7 @@ Documentation
Compute an energy when a threshold is applied Compute an energy when a threshold is applied
`e_curve <http://github.com/LCPQ/quantum_package/tree/master/plugins/QmcChem/target_pt2_qmc.irp.f#L1>`_ `e_curve <http://github.com/LCPQ/quantum_package/tree/master/plugins/QmcChem/test.irp.f#L1>`_
Undocumented Undocumented

View File

@ -47,15 +47,15 @@ program e_curve
psi_bilinear_matrix_values_save = psi_bilinear_matrix_values(:,1) psi_bilinear_matrix_values_save = psi_bilinear_matrix_values(:,1)
do j=1,n do j=1,n
i = iorder(j) i = iorder(j)
if (i>0) then if (i<0) then
do k=1,n_det do k=1,n_det
if (psi_bilinear_matrix_columns(k) == i) then if (psi_bilinear_matrix_columns(k) == -i) then
psi_bilinear_matrix_values_save(k) = 0.d0 psi_bilinear_matrix_values_save(k) = 0.d0
endif endif
enddo enddo
else else
do k=1,n_det do k=1,n_det
if (psi_bilinear_matrix_rows(k) == -i) then if (psi_bilinear_matrix_rows(k) == i) then
psi_bilinear_matrix_values_save(k) = 0.d0 psi_bilinear_matrix_values_save(k) = 0.d0
endif endif
enddo enddo
@ -99,15 +99,15 @@ subroutine compute_energy(psi_bilinear_matrix_values_save, E, m, norm)
cycle cycle
endif endif
ci = psi_bilinear_matrix_values_save(k) ci = psi_bilinear_matrix_values_save(k)
det_i(:,1) = psi_det_alpha_unique(:,psi_bilinear_matrix_columns(k)) det_i(:,1) = psi_det_alpha_unique(:,psi_bilinear_matrix_rows(k))
det_i(:,2) = psi_det_beta_unique(:,psi_bilinear_matrix_rows(k)) det_i(:,2) = psi_det_beta_unique(:,psi_bilinear_matrix_columns(k))
do l=1,n_det do l=1,n_det
if (psi_bilinear_matrix_values_save(l) == 0.d0) then if (psi_bilinear_matrix_values_save(l) == 0.d0) then
cycle cycle
endif endif
cj = psi_bilinear_matrix_values_save(l) cj = psi_bilinear_matrix_values_save(l)
det_j(:,1) = psi_det_alpha_unique(:,psi_bilinear_matrix_columns(l)) det_j(:,1) = psi_det_alpha_unique(:,psi_bilinear_matrix_rows(l))
det_j(:,2) = psi_det_beta_unique(:,psi_bilinear_matrix_rows(l)) det_j(:,2) = psi_det_beta_unique(:,psi_bilinear_matrix_columns(l))
call i_h_j(det_i, det_j, N_int, hij) call i_h_j(det_i, det_j, N_int, hij)
num = num + ci*cj*hij num = num + ci*cj*hij
enddo enddo