Mercurial > hg > octave-lyh
comparison liboctave/CMatrix.cc @ 7488:6470f946a425
another small xGELSD workspace fix
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 15 Feb 2008 19:54:25 -0500 |
parents | 6a6d2abe51ff |
children | 8c32f95c2639 |
comparison
equal
deleted
inserted
replaced
7487:1e01db14700b | 7488:6470f946a425 |
---|---|
2462 F77_XFCN (zgelsd, ZGELSD, (m, n, nrhs, tmp_data, m, pretval, maxmn, | 2462 F77_XFCN (zgelsd, ZGELSD, (m, n, nrhs, tmp_data, m, pretval, maxmn, |
2463 ps, rcond, rank, work.fortran_vec (), | 2463 ps, rcond, rank, work.fortran_vec (), |
2464 lwork, prwork, piwork, info)); | 2464 lwork, prwork, piwork, info)); |
2465 | 2465 |
2466 // The workspace query is broken in at least LAPACK 3.0.0 | 2466 // The workspace query is broken in at least LAPACK 3.0.0 |
2467 // through 3.1.1 when n > mnthr. The obtuse formula below | 2467 // through 3.1.1 when n >= mnthr. The obtuse formula below |
2468 // should provide sufficient workspace for ZGELSD to operate | 2468 // should provide sufficient workspace for ZGELSD to operate |
2469 // efficiently. | 2469 // efficiently. |
2470 if (n > mnthr) | 2470 if (n >= mnthr) |
2471 { | 2471 { |
2472 octave_idx_type addend = m; | 2472 octave_idx_type addend = m; |
2473 | 2473 |
2474 if (2*m-4 > addend) | 2474 if (2*m-4 > addend) |
2475 addend = 2*m-4; | 2475 addend = 2*m-4; |