# commons-issues mailing list archives

##### Site index · List index
Message view
Top
From "Sean Owen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (MATH-1045) EigenDecomposition.Solver should consider tiny values 0 for purposes of determining singularity
Date Wed, 30 Oct 2013 11:56:26 GMT
```
[ https://issues.apache.org/jira/browse/MATH-1045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13809009#comment-13809009
]

Sean Owen commented on MATH-1045:
---------------------------------

Yes, this is a good point. It's safest to find the largest eigenvalue (by absolute value)
with a loop I think.

The final matrix in testUnsymmetric(), which is unsymmetric, shows this.

The symmetric matrix in testSquareRootNonPositiveDefinite() also shows this -- the last eigenvalue
is the most negative, but is the largest in absolute value.

> EigenDecomposition.Solver should consider tiny values 0 for purposes of determining singularity
> -----------------------------------------------------------------------------------------------
>
>                 Key: MATH-1045
>                 URL: https://issues.apache.org/jira/browse/MATH-1045
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 3.2
>            Reporter: Sean Owen
>            Priority: Minor
>              Labels: eigenvalue, singular
>             Fix For: 3.3
>
>         Attachments: MATH-1045.patch, MATH-1045.patch
>
>
> EigenDecomposition.Solver tests for singularity by comparing eigenvalues to 0 for exact
equality. Elsewhere in the class and in the code, of course, very small values are considered
0. This causes the solver to consider some singular matrices as non-singular.
> The patch here includes a test as well showing the behavior -- the matrix is clearly
singular but isn't considered as such since one eigenvalue are ~1e-14 rather than exactly
0.
> (What I am not sure of is whether we should really be evaluating the *norm* of the imaginary
eigenvalues rather than real/imag components separately. But the javadoc says the solver only
supports real eigenvalues anyhow, so it's kind of moot since imag=0 for all eigenvalues.)

--
This message was sent by Atlassian JIRA
(v6.1#6144)

```
Mime
View raw message