From 8ac9bcb963a2c3b7c81d8e0b376d6609408fa2d9 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Fri, 14 May 2021 14:03:34 +0200 Subject: [PATCH 1/2] New scheme for pseudo explosion --- src/PROPERTIES/properties_energy.irp.f | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/PROPERTIES/properties_energy.irp.f b/src/PROPERTIES/properties_energy.irp.f index 56a91e6..9c63d8c 100644 --- a/src/PROPERTIES/properties_energy.irp.f +++ b/src/PROPERTIES/properties_energy.irp.f @@ -252,12 +252,10 @@ BEGIN_PROVIDER [ double precision, E_loc ] enddo ! Avoid divergence of E_loc and population explosion - if (do_pseudo) then + if (do_pseudo .and. qmc_method == 'DMC' ) then double precision :: delta_e -! delta_e = E_loc-E_ref -! E_loc = E_ref + erf(delta_e*time_step_sq)/time_step_sq - E_loc = max(2.d0*E_ref, E_loc) -! continue + delta_e = E_loc-E_ref + E_loc = E_ref + delta_e * dexp(-dabs(delta_e)*time_step_sq) endif E_loc_min = min(E_loc,E_loc_min) E_loc_max = max(E_loc,E_loc_max) From 216ddc4351f16ab88992aef8c10667acf36539eb Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 24 May 2021 16:05:38 +0200 Subject: [PATCH 2/2] Fixed t_DMC --- src/PROPERTIES/properties_energy.irp.f | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PROPERTIES/properties_energy.irp.f b/src/PROPERTIES/properties_energy.irp.f index 9c63d8c..84554a2 100644 --- a/src/PROPERTIES/properties_energy.irp.f +++ b/src/PROPERTIES/properties_energy.irp.f @@ -252,7 +252,7 @@ BEGIN_PROVIDER [ double precision, E_loc ] enddo ! Avoid divergence of E_loc and population explosion - if (do_pseudo .and. qmc_method == 'DMC' ) then + if (do_pseudo .and. (qmc_method == t_DMC) ) then double precision :: delta_e delta_e = E_loc-E_ref E_loc = E_ref + delta_e * dexp(-dabs(delta_e)*time_step_sq)