[Pw_forum] Out of range subscript for igk_l2g_kdip

Brad Malone brad.malone at gmail.com
Tue Sep 30 21:49:49 CEST 2008


Hi, I noticed some unexpected behavior when running pw.x on more than 1
pool. Specifically this happens in PW/pw_restart.f90 if a calculation is
done with wf_collect set to true and if the number of pools is not equal to
1. I believe the offending lines are

IF ( lwfc ) THEN
     !
    CALL write_gk(iunout,ik,filename)
    CALL write_this_wfc(iunout,ik)
     !
END IF


The error comes about because in the subroutine write_this_wfc the
subroutine write_wfc is called, which has as one of its arguments
igk_l2g_kdip(:, ik-iks+1). iks is the first index of the first k point in a
particular pool. However, ik in this routine runs over ALL the kpoints, thus
indexing negative values (e.g., ik goes from 1-28 while iks goes from
17-18). If debugging flags are not turned on the program doesn't crash and I
haven't tested to see what difference in might make in the output. But
turning debugging flags on catches this error and exits the program.

Anyhow, I thought I'd bring this to your attention in case you weren't aware
of it.

Best,
Brad Malone
UC Berkeley
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20080930/1726a749/attachment.html>


More information about the users mailing list