From 80cfd094f2e8c7e1f4cfcb5a260e3b36a5fcfa22 Mon Sep 17 00:00:00 2001 From: Juerg Hutter Date: Thu, 26 Jun 2025 17:18:17 +0200 Subject: [PATCH] Remove error arrays from external energy correction method (#4263) --- src/ec_env_types.F | 8 ++------ src/energy_corrections.F | 16 +++++----------- 2 files changed, 7 insertions(+), 17 deletions(-) diff --git a/src/ec_env_types.F b/src/ec_env_types.F index f9e9c996af..2ea73ca044 100644 --- a/src/ec_env_types.F +++ b/src/ec_env_types.F @@ -132,9 +132,8 @@ MODULE ec_env_types CHARACTER(len=40) :: exresp_fn = "" CHARACTER(len=40) :: exresult_fn = "" LOGICAL :: do_error = .FALSE. - REAL(KIND=dp), DIMENSION(3, 3) :: rpv = 0.0_dp, rpverror = 0.0_dp - REAL(KIND=dp), DIMENSION(:, :), POINTER :: rf => NULL(), & - rferror => NULL() + REAL(KIND=dp), DIMENSION(3, 3) :: rpv = 0.0_dp + REAL(KIND=dp), DIMENSION(:, :), POINTER :: rf => NULL() END TYPE energy_correction_type CONTAINS @@ -228,9 +227,6 @@ CONTAINS IF (ASSOCIATED(ec_env%rf)) THEN DEALLOCATE (ec_env%rf) END IF - IF (ASSOCIATED(ec_env%rferror)) THEN - DEALLOCATE (ec_env%rferror) - END IF DEALLOCATE (ec_env) diff --git a/src/energy_corrections.F b/src/energy_corrections.F index f0e90fe336..6f75895a61 100644 --- a/src/energy_corrections.F +++ b/src/energy_corrections.F @@ -543,11 +543,9 @@ CONTAINS TYPE(virial_type), POINTER :: virial CALL get_qs_env(qs_env, natom=natom) - ALLOCATE (ec_env%rf(3, natom), ec_env%rferror(3, natom)) + ALLOCATE (ec_env%rf(3, natom)) ec_env%rf = 0.0_dp - ec_env%rferror = 0.0_dp ec_env%rpv = 0.0_dp - ec_env%rpverror = 0.0_dp CALL get_qs_env(qs_env, force=force, virial=virial) CALL get_qs_env(qs_env, atomic_kind_set=atomic_kind_set) @@ -608,18 +606,14 @@ CONTAINS CALL open_file(ec_env%exresult_fn, file_status="REPLACE", file_form="FORMATTED", & file_action="WRITE", unit_number=funit) - WRITE (funit, *) " COORDINATES // RESPONSE FORCES // ERRORS " - WRITE (funit, *) " [Bohr] // [Hartree/Bohr] // " + WRITE (funit, "(T8,A,T58,A)") "COORDINATES [Bohr]", "RESPONSE FORCES [Hartree/Bohr]" DO ia = 1, natom - WRITE (funit, "(3(3F15.8,5x))") particle_set(ia)%r(1:3), & - ec_env%rf(1:3, ia), ec_env%rferror(1:3, ia) + WRITE (funit, "(2(3F15.8,5x))") particle_set(ia)%r(1:3), ec_env%rf(1:3, ia) END DO WRITE (funit, *) - WRITE (funit, *) " CELL // RESPONSE PRESSURE // ERRORS " - WRITE (funit, *) " [Bohr] // [GPa] // " + WRITE (funit, "(T8,A,T58,A)") "CELL [Bohr]", "RESPONSE PRESSURE [GPa]" DO ia = 1, 3 - WRITE (funit, "(3F15.8,5x,3F15.8,5x,3F15.8)") cell%hmat(ia, 1:3), & - fconv*ec_env%rpv(ia, 1:3), ec_env%rpverror(ia, 1:3) + WRITE (funit, "(3F15.8,5x,3F15.8)") cell%hmat(ia, 1:3), fconv*ec_env%rpv(ia, 1:3) END DO CALL close_file(funit)