diff --git a/plugins/CAS_SD_ZMQ/cassd_zmq.irp.f b/plugins/CAS_SD_ZMQ/cassd_zmq.irp.f index 0d079680..23c61511 100644 --- a/plugins/CAS_SD_ZMQ/cassd_zmq.irp.f +++ b/plugins/CAS_SD_ZMQ/cassd_zmq.irp.f @@ -51,17 +51,18 @@ program fci_zmq E_CI_before(1:N_states) = CI_energy(1:N_states) double precision :: correlation_energy_ratio - correlation_energy_ratio = E_CI_before(1) - hf_energy_ref - correlation_energy_ratio = correlation_energy_ratio / (correlation_energy_ratio + pt2(1)) + correlation_energy_ratio = 0.d0 do while ( & (N_det < N_det_max) .and. & (maxval(abs(pt2(1:N_states))) > pt2_max) .and. & - (correlation_energy_ratio < correlation_energy_ratio_max) & + (correlation_energy_ratio <= correlation_energy_ratio_max) & ) - correlation_energy_ratio = E_CI_before(1) - hf_energy_ref - correlation_energy_ratio = correlation_energy_ratio / (correlation_energy_ratio + pt2(1)) + correlation_energy_ratio = (CI_energy(1) - hf_energy_ref) / & + (E_CI_before(1) + pt2(1) - hf_energy_ref) + correlation_energy_ratio = min(1.d0,correlation_energy_ratio) + print *, 'N_det = ', N_det print *, 'N_states = ', N_states diff --git a/plugins/Full_CI_ZMQ/fci_zmq.irp.f b/plugins/Full_CI_ZMQ/fci_zmq.irp.f index e12033b4..f0cfe678 100644 --- a/plugins/Full_CI_ZMQ/fci_zmq.irp.f +++ b/plugins/Full_CI_ZMQ/fci_zmq.irp.f @@ -19,7 +19,7 @@ program fci_zmq hf_energy_ref = ref_bitmask_energy endif - pt2 = 1.d0 + pt2 = -huge(1.d0) threshold_davidson_in = threshold_davidson threshold_davidson = threshold_davidson_in * 100.d0 SOFT_TOUCH threshold_davidson @@ -51,17 +51,17 @@ program fci_zmq n_det_before = 0 double precision :: correlation_energy_ratio - correlation_energy_ratio = E_CI_before(1) - hf_energy_ref - correlation_energy_ratio = correlation_energy_ratio / (correlation_energy_ratio + pt2(1)) + correlation_energy_ratio = 0.d0 do while ( & (N_det < N_det_max) .and. & (maxval(abs(pt2(1:N_states))) > pt2_max) .and. & - (correlation_energy_ratio < correlation_energy_ratio_max) & + (correlation_energy_ratio <= correlation_energy_ratio_max) & ) - correlation_energy_ratio = E_CI_before(1) - hf_energy_ref - correlation_energy_ratio = correlation_energy_ratio / (correlation_energy_ratio + pt2(1)) + correlation_energy_ratio = (CI_energy(1) - hf_energy_ref) / & + (E_CI_before(1) + pt2(1) - hf_energy_ref) + correlation_energy_ratio = min(1.d0,correlation_energy_ratio) print *, 'N_det = ', N_det print *, 'N_states = ', N_states