Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features
Download
Marketing
Archives
FAQ
Blog


On 8/14/2012 7:21 AM, Pauli Virtanen wrote:
> Ralf Gommers gmail.com> writes:
> [clip]
>> Does anyone have an idea about that test_singular failure?
> That's very likely some problem with the underlying LAPACK library.
> I think the problem solved is close to a numerical instability.
>
> The failing comparison compares eigenvalues computed by
>
> eig(A, B)
> eig(A, B, left=False, right=False)
>
> which differ solely in passing 'N' vs. 'V' to DGGEV. The eigenvalue
> property of the former is also checked and seems to pass. Interestingly,
> the result obtained from the two seems to differ (therefore, the latter
> is probably wrong), which appears to point to a LAPACK issue.
>
> Here, it would be interesting to know if the problem occurs with
> the official Scipy binaries, or something else.
>
I installed rc2 on Python 2.7.3. Same problem. I get the test_singular
error on some, but not all, of the runs. Both are win32superpack from
http://sourceforge.net/projects/scipy/files/scipy/0.11.0rc2/.
The error occurs on less than half but more than 1/3 (based on a very
small sample) of the runs on both 2.7 and 3.2.
I've been working on computers for more than 50 years. Somehow, I had
developed the delusion that they were deterministic .....
john
 Python 2.7 
>>> import scipy
>>> scipy.test()
Running unit tests for scipy
NumPy version 1.6.2
NumPy is installed in C:\Python27\lib\sitepackages\numpy
SciPy version 0.11.0rc2
SciPy is installed in C:\Python27\lib\sitepackages\scipy
Python version 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit
(Intel)]
nose version 0.11.2
======================================================================
FAIL: test_decomp.TestEig.test_singular
Test singular pair

Traceback (most recent call last):
File
"C:\Python27\lib\sitepackages\nose0.11.2py2.7.egg\nose\case.py", line
186, in runTest
self.test(*self.arg)
File
"C:\Python27\lib\sitepackages\scipy\linalg\tests\test_decomp.py", line
201, in test_singular
self._check_gen_eig(A, B)
File
"C:\Python27\lib\sitepackages\scipy\linalg\tests\test_decomp.py", line
188, in _check_gen_eig
err_msg=msg)
File "C:\Python27\lib\sitepackages\numpy\testing\utils.py", line
800, in assert_array_almost_equal
header=('Arrays are not almost equal to %d decimals' % decimal))
File "C:\Python27\lib\sitepackages\numpy\testing\utils.py", line
636, in assert_array_compare
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 6 decimals
array([[22, 34, 31, 31, 17],
[45, 45, 42, 19, 29],
[39, 47, 49, 26, 34],
[27, 31, 26, 21, 15],
[38, 44, 44, 24, 30]])
array([[13, 26, 25, 17, 24],
[31, 46, 40, 26, 37],
[26, 40, 19, 25, 25],
[16, 25, 27, 14, 23],
[24, 35, 18, 21, 22]])
(mismatch 25.0%)
x: array([ 2.45037885e01 +0.00000000e+00j,
5.17637463e16 4.01120590e08j,
5.17637463e16 +4.01120590e08j, 2.00000000e+00
+0.00000000e+00j])
y: array([ 3.74550285e01 +0.00000000e+00j,
5.17716907e17 1.15230800e08j,
5.17716907e17 +1.15230800e08j, 2.00000000e+00
+0.00000000e+00j])

Ran 5490 tests in 103.250s
FAILED (KNOWNFAIL=14, SKIP=36, failures=1)
>>>
 Python 3.2 
>>> scipy.test()
Running unit tests for scipy
NumPy version 1.6.2
NumPy is installed in C:\Python32\lib\sitepackages\numpy
SciPy version 0.11.0rc2
SciPy is installed in C:\Python32\lib\sitepackages\scipy
Python version 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit
(Intel)]
nose version 1.0.0
======================================================================
FAIL: test_decomp.TestEig.test_singular

Traceback (most recent call last):
File
"C:\Python32\lib\sitepackages\nose1.0.0py3.2.egg\nose\case.py", line
188, in runTest
self.test(*self.arg)
File
"C:\Python32\lib\sitepackages\scipy\linalg\tests\test_decomp.py", line
201, in test_singular
self._check_gen_eig(A, B)
File
"C:\Python32\lib\sitepackages\scipy\linalg\tests\test_decomp.py", line
188, in _check_gen_eig
err_msg=msg)
File "C:\Python32\lib\sitepackages\numpy\testing\utils.py", line
800, in assert_array_almost_equal
header=('Arrays are not almost equal to %d decimals' % decimal))
File "C:\Python32\lib\sitepackages\numpy\testing\utils.py", line
636, in assert_array_compare
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 6 decimals
array([[22, 34, 31, 31, 17],
[45, 45, 42, 19, 29],
[39, 47, 49, 26, 34],
[27, 31, 26, 21, 15],
[38, 44, 44, 24, 30]])
array([[13, 26, 25, 17, 24],
[31, 46, 40, 26, 37],
[26, 40, 19, 25, 25],
[16, 25, 27, 14, 23],
[24, 35, 18, 21, 22]])
(mismatch 25.0%)
x: array([ 2.450e01 +0.000e+00j, 5.176e16 4.011e08j, 5.176e16
+4.011e08j,
2.000e+00 +0.000e+00j])
y: array([ 3.746e01 +0.000e+00j, 5.177e17 1.152e08j, 5.177e17
+1.152e08j,
2.000e+00 +0.000e+00j])

