Closed GoogleCodeExporter closed 8 years ago
Yep it looks like EJML is doing something in a non standard way. It appears to
be computing the SVD correctly, but the way to determines the nullity/nullspace
is off. Below is some sample code I used to reproduce the problem.
public class FooBar {
public static void main( String args[] ) {
SimpleMatrix m = new SimpleMatrix(1,3,true,1,0,0);
SimpleSVD svd = m.svd();
System.out.println("SVD decomposition");
svd.getU().print();
svd.getW().print();
svd.getV().print();
int nullity = svd.nullity();
SimpleMatrix nullSpace = svd.nullSpace();
System.out.println("nullity = "+nullity);
nullSpace.print();
}
}
Original comment by peter.ab...@gmail.com
on 14 May 2012 at 7:40
A fix has been committed to the SVN repository.
- Nullity did not handle wide matrices correctly
- Null-Space was a bug/non-standard implementation of the null-space
- Unit tests have been added/updated.
If you have a change can you check out the code and let me know if the fix
worked? Thanks for reporting the bugs.
Original comment by peter.ab...@gmail.com
on 16 May 2012 at 2:47
Closing ticket. Assuming the fix works
Original comment by peter.ab...@gmail.com
on 22 May 2012 at 2:07
Original issue reported on code.google.com by
arnavku...@gmail.com
on 9 May 2012 at 2:01