diff --git a/src/PROPERTIES/properties_energy.irp.f b/src/PROPERTIES/properties_energy.irp.f index 357b21d..7f42053 100644 --- a/src/PROPERTIES/properties_energy.irp.f +++ b/src/PROPERTIES/properties_energy.irp.f @@ -270,7 +270,9 @@ BEGIN_PROVIDER [ double precision, E_loc_zv ] BEGIN_DOC ! Zero-variance parameter on E_loc END_DOC - E_loc_zv = E_loc + (E_trial-E_loc) * dmc_zv_weight + E_loc_zv = E_loc + E_loc_zv += (E_trial-E_loc) * dmc_zv_weight +! E_loc_zv += - time_step*(E_trial**2 + 1.44341217940434 - E_loc**2)*dmc_zv_weight ! E_loc_zv(3) = dmc_zv_weight_half ! E_loc_zv(:) = 0.d0 diff --git a/src/SAMPLING/pdmc_step.irp.f b/src/SAMPLING/pdmc_step.irp.f index 0efb370..9c9b4a8 100644 --- a/src/SAMPLING/pdmc_step.irp.f +++ b/src/SAMPLING/pdmc_step.irp.f @@ -109,9 +109,9 @@ END_SHELL endif integer :: info - double precision :: H(0:pdmc_n_diag/2,0:pdmc_n_diag/2), S(0:pdmc_n_diag/2,0:pdmc_n_diag/2), w(0:pdmc_n_diag/2), work(3*pdmc_n_diag+1) - H = 0.d0 - S = 0.d0 +! double precision :: H(0:pdmc_n_diag/2,0:pdmc_n_diag/2), S(0:pdmc_n_diag/2,0:pdmc_n_diag/2), w(0:pdmc_n_diag/2), work(3*pdmc_n_diag+1) +! H = 0.d0 +! S = 0.d0 do while (loop) @@ -234,13 +234,13 @@ END_SHELL block_weight += pdmc_pop_weight_mult(pdmc_n_diag) * pdmc_weight(i_walk) pdmc_pop_weight_mult(0) = 1.d0/pdmc_weight(i_walk) - do k=0,pdmc_n_diag/2 - do l=0,pdmc_n_diag/2 - H(k,l) += E_loc*pdmc_pop_weight_mult(k+l) * pdmc_weight(i_walk) - S(k,l) += pdmc_pop_weight_mult(k+l) * pdmc_weight(i_walk) - enddo - enddo - H = H + (E_trial - E_loc) +! do k=0,pdmc_n_diag/2 +! do l=0,pdmc_n_diag/2 +! H(k,l) += E_loc*pdmc_pop_weight_mult(k+l) * pdmc_weight(i_walk) +! S(k,l) += pdmc_pop_weight_mult(k+l) * pdmc_weight(i_walk) +! enddo +! enddo +! H = H + (E_trial - E_loc) ! else ! pdmc_weight(i_walk) = 1.d0