diff --git a/src/Determinants/s2.irp.f b/src/Determinants/s2.irp.f index 400b373e..e16bd386 100644 --- a/src/Determinants/s2.irp.f +++ b/src/Determinants/s2.irp.f @@ -301,19 +301,19 @@ subroutine diagonalize_s2_betweenstates(keys_tmp,psi_coefs_inout,n,nmax_keys,nma print*,'' print*,'nstates = ',nstates allocate(s2(nstates,nstates),overlap(nstates,nstates)) - !$OMP PARALLEL DO COLLAPSE(2) DEFAULT(NONE) & - !$OMP PRIVATE(i,j) SHARED(overlap,psi_coefs_inout,nstates,n) - do i = 1, nstates - do j = i+1, nstates - if (i == j) then - overlap(i,i) = u_dot_u(psi_coefs_inout(1,i),n) - else - overlap(i,j) = u_dot_v(psi_coefs_inout(1,j),psi_coefs_inout(1,i),n) - overlap(j,i) = overlap(i,j) - endif - enddo - enddo - !$OMP END PARALLEL + !$OMP PARALLEL DO COLLAPSE(2) DEFAULT(NONE) & + !$OMP PRIVATE(i,j) SHARED(overlap,psi_coefs_inout,nstates,n) + do i = 1, nstates + do j = i+1, nstates + if (i == j) then + overlap(i,i) = u_dot_u(psi_coefs_inout(1,i),n) + else + overlap(i,j) = u_dot_v(psi_coefs_inout(1,j),psi_coefs_inout(1,i),n) + overlap(j,i) = overlap(i,j) + endif + enddo + enddo + !$OMP END PARALLEL DO print*,'Overlap matrix in the basis of the states considered' do i = 1, nstates write(*,'(10(F16.10,X))')overlap(i,:)