Commit fd2fa593 authored by Micael Oliveira's avatar Micael Oliveira
Browse files

Select case statement in Davidson RCI is now executed inside and infinite do loop.

This requires that we return control to the host code explicitly. On the other hand, it makes it unnecessary to return control without requiring anything from the host code. This way it is easier to jump between steps, which simplifies the implementation of the algorithm.
parent 57be3fbc
......@@ -55,17 +55,20 @@ call set_mpi_comm_4_davidson( world_comm, intra_bgrp_comm, inter_bgrp_comm, ndia
call start_clock('davidson')
!--- THIS IS THE RELEVANT CALL TO THE ROUTINE IN KS_Solvers/Davidson ------------------------------------------!
write (stdout,*) 'ndiag', ndiag
#if defined(__MPI)
if (ndiag == 1) then
#endif
call cegterg( cb_h_psi, cb_s_psi, cb_g_psi, &
npw, npwx, nbnd, nbndx, npol, evc, ethr, &
overlap, eig, btype, notcnv, lrot, dav_iter )
else
#if defined(__MPI)
else
call pcegterg(cb_h_psi, cb_s_psi, cb_g_psi, &
npw, npwx, nbnd, nbndx, npol, evc, ethr, &
overlap, eig, btype, notcnv, lrot, dav_iter )
end if
#endif
!--------------------------------------------------------------------------------------------------------------!
call stop_clock('davidson')
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment