You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Luc Maisonobe (JIRA)" <ji...@apache.org> on 2009/11/10 21:23:27 UTC
[jira] Commented: (MATH-320) NaN singular value from SVD
[ https://issues.apache.org/jira/browse/MATH-320?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12776063#action_12776063 ]
Luc Maisonobe commented on MATH-320:
------------------------------------
This is a real new bug, thanks for reporting it.
Before I look more precisely at it, could you do a quick check for me ?
If at the end of the SingularValueDecompositionImpl constructor, around line 118 in the java source file you change from:
{noformat}
singularValues[i] = Math.sqrt(singularValues[i]);
{noformat}
to
{noformat}
singularValues[i] = Math.sqrt(Math.max(0, singularValues[i]));
{noformat}
does the problem still appear on singular values and does the solver work properly ?
> NaN singular value from SVD
> ---------------------------
>
> Key: MATH-320
> URL: https://issues.apache.org/jira/browse/MATH-320
> Project: Commons Math
> Issue Type: Bug
> Affects Versions: 2.0
> Environment: Linux (Ubuntu 9.10) java version "1.6.0_16"
> Reporter: Dieter Vandenbussche
>
> The following jython code
> Start code
> from org.apache.commons.math.linear import *
>
> Alist = [[1.0, 2.0, 3.0],[2.0,3.0,4.0],[3.0,5.0,7.0]]
>
> A = Array2DRowRealMatrix(Alist)
>
> decomp = SingularValueDecompositionImpl(A)
>
> print decomp.getSingularValues()
> End code
> prints
> array('d', [11.218599757513008, 0.3781791648535976, nan])
> The last singular value should be something very close to 0 since the matrix
> is rank deficient. When i use the result from getSolver() to solve a system, i end
> up with a bunch of NaNs in the solution. I assumed i would get back a least squares solution.
> Does this SVD implementation require that the matrix be full rank? If so, then i would expect
> an exception to be thrown from the constructor or one of the methods.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.