aboutsummaryrefslogtreecommitdiff
path: root/SRC/slasq3.f
diff options
context:
space:
mode:
authorjulie <julielangou@users.noreply.github.com>2012-05-22 00:55:21 +0000
committerjulie <julielangou@users.noreply.github.com>2012-05-22 00:55:21 +0000
commitfb89702b460bd02d29d453ecff8202f7180fc7da (patch)
tree6afa901a7a905ccaaedec5ad1df0d990af0c5e5a /SRC/slasq3.f
parent45c1a9c1157fa71679f2d3cb111553a37ed848e1 (diff)
Correct a problem reported by Keita Teranishi from CRAY on May 18th 2012
Confirmed and Corrected by Julie on May 21st 2012 ==================================== EMAIL: We would like to report a bug in {S,D}SYEVR and {C,Z}HEEVR routines. This bug causes writing two different data in the same address in IWORK, potentially producing wrong answers. The bug description is provided in the bottom of the email. Please let us know, if you have any questions. Thank you, Line 543 in {S,D}SYEVR: Line 717 on {C,Z}HEEVR: === Code Starts here== INDISP = INDIBL + N * IWORK(INDIFL:INDIFL+N-1) stores the indices of eigenvectors * that corresponding to eigenvectors that fail to converge in * DSTEIN. This information is discarded; if any fail, the driver * returns INFO > 0. INDIFL = INDISP + N * INDIWO is the offset of the remaining integer workspace. INDIWO = INDISP + N <- -- It is suspicious. =====End of the Code========= I think this should be INDIWO = INDIFL+N. Otherwise, subsequent {S,D}STEIN call takes the same address for IWORK(INDIWO) and INWROK(INDIFL). CALL DSTEIN( N, WORK( INDD ), WORK( INDE ), M, W, $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, $ WORK( INDWK ), IWORK( INDIWO ), IWORK( INDIFL ), $ INFO ) ====================================
Diffstat (limited to 'SRC/slasq3.f')
0 files changed, 0 insertions, 0 deletions