[SciPy-Dev] LAPACK problems with *gges wrappers

Matthew Brett matthew.brett at gmail.com
Thu May 3 13:59:05 EDT 2012


Hi,

On Thu, May 3, 2012 at 10:51 AM, Skipper Seabold <jsseabold at gmail.com> wrote:
> On Thu, May 3, 2012 at 1:14 PM, Denis Laxalde <denis at laxalde.org> wrote:
>>
>> Skipper Seabold a écrit :
>> > Can someone take a look at the comments on this pull request [1]? I'm
>> > unable to replicate the failures and it's unclear to me that there are
>> > problems with the python code and the fortran wrappers.
>>
>> I can confirm the tests failures:
>>
>>
>>  ======================================================================
>>  ERROR: test_qz_double (test_decomp.TestQZ)
>>  ----------------------------------------------------------------------
>>  Traceback (most recent call last):
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/tests/test_decomp.py",
>> line 1645, in test_qz_double
>>      AA,BB,Q,Z = qz(A,B)
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/_decomp_qz.py",
>> line 168, in qz
>>      overwrite_b=overwrite_b, sort_t=sort_t)
>>  error: (lwork>=MAX(1,8*n+16)||lwork==-1) failed for 6th keyword lwork:
>> dgges:lwork=46
>>
>>  ======================================================================
>>  ERROR: test_qz_double_sort (test_decomp.TestQZ)
>>  ----------------------------------------------------------------------
>>  Traceback (most recent call last):
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/tests/test_decomp.py",
>> line 1705, in test_qz_double_sort
>>      AA,BB,Q,Z,sdim = qz(A,B,sort=sort)
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/_decomp_qz.py",
>> line 168, in qz
>>      overwrite_b=overwrite_b, sort_t=sort_t)
>>  error: (lwork>=MAX(1,8*n+16)||lwork==-1) failed for 6th keyword lwork:
>> dgges:lwork=40
>>
>>  ======================================================================
>>  ERROR: test_qz_single (test_decomp.TestQZ)
>>  ----------------------------------------------------------------------
>>  Traceback (most recent call last):
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/tests/test_decomp.py",
>> line 1634, in test_qz_single
>>      AA,BB,Q,Z = qz(A,B)
>>    File
>> "/home/denis/.local/lib/python2.7/site-packages/scipy/linalg/_decomp_qz.py",
>> line 168, in qz
>>      overwrite_b=overwrite_b, sort_t=sort_t)
>>  error: (lwork>=MAX(1,8*n+16)||lwork==-1) failed for 6th keyword lwork:
>> sgges:lwork=46
>>
>>  ----------------------------------------------------------------------
>>
>> Lapack 3.3.1, Atlas 3.8.4 from Debian.
>>
>>
>
> Thanks. Can you check again with pushed fix?
>
> I think the documentation is wrong and the actual minimum value for
> lwork should be max(8*n, 6*n+16) and not the 8*n+16 in the
> documentation.
>
> If anyone cares to double check my reading of the source.
>
> http://www.netlib.no/netlib/lapack/double/dgges.f

Your reading looks right to me :)

Matthew



More information about the SciPy-Dev mailing list