From 2560c2a7ebfe6801800e7dbcd527841a06a85fe2 Mon Sep 17 00:00:00 2001 From: Werner Hahn Date: Wed, 14 Oct 2026 20:03:55 -0700 Subject: [PATCH] Improve nijbo access locality in density calculation Access the symmetric nijbo entry with the inner-loop atom index as the first array index. This preserves the calculated value while improving contiguous memory access in Fortran column-major storage. Co-authored-by: OpenAI Codex Signed-off-by: Werner Hahn --- src/MOZYME/density_for_MOZYME.F90 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/MOZYME/density_for_MOZYME.F90 b/src/MOZYME/density_for_MOZYME.F90 index fcdfdc672..9cafa70d0 100644 --- a/src/MOZYME/density_for_MOZYME.F90 +++ b/src/MOZYME/density_for_MOZYME.F90 @@ -79,8 +79,8 @@ subroutine density_for_MOZYME (p, mode, nclose_loc, partp) p(l) = p(l) + cocc(k2) * sum end do end do - else if (j > k .and. nijbo (j, k) >= 0) then - l = nijbo (j, k) + else if (j > k .and. nijbo (k, j) >= 0) then + l = nijbo (k, j) do j1 = 1, nj sum = cocc(ja+j1+loop) do k1 = 1, iorbs(k)