[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://www.democritos.it/pipermail/pw_forum/attachments/20080930/1726a749/attachment.htm
More information about the Pw_forum
mailing list