Released v0.35

33 views
Skip to first unread message

Peter A

unread,
Aug 24, 2018, 12:00:59 PM8/24/18
to efficient-java-mat...@googlegroups.com
Lots and lots of small changes. Printing has been revisited and the format of numbers has improved. Biggest changes are related to sparse matrices. Fixed a significant bug related to a size check on sparse matrices. Also flushed out functions are support is much more complete now.

----- Version 0.35
2018/08/24

- UtilEjml
  * solver = safe(solver) ensures solvers of any type don't modify their inputs
  * printFancy() best formatter of floating point numbers to string
- Matrix.print()
  * New default format and added the ability change the format
  * Printing using printFancy()
  * If format is specified as "matlab" it will print out in a format which can be pasted into Matlab
  * Fixed formatting of complex matrices
- Reshape output instead of exception
  * Changed dense matrix multiply to have this behavior
- ConvertDArrays
  * Methods for converting 2D arrays to and from EJML data types
- MatrixVectorMult_DSCC
  * Added mult(Matrix,Vector,Vector)
  * Added multAdd(Matrix,Vector,Vector)
  * Added mult(Vector,Matrix,Vector)
  * Added innerProduct(Vector,Matrix,Vector)
- CommonOps_DSCC
  * Added multAdd(sparse,dense,dense)
  * Added multTransA(sparse,dense,dense) multAddTransA(sparse,dense,dense)
  * Added multTransB(sparse,dense,dense) multAddTransB(sparse,dense,dense)
  * Added multTransAB(sparse,dense,dense) multAddTransAB(sparse,dense,dense)
  * Added extractDiag(sparse,dense)
  * Added innerProductLower(sparse,sparse) B = A'*A. Only lower triangle is saved in B
  * Added symmLowerToFull(sparse,sparse) for converting a lower triangular matrix into a symmetric matrix
  * Added column operations
  * Added multRows() divideRows() multCols() divideCols() multRowsCols() divideRowsCols()
- Added LinearSolverSparseSafe
- LinearSolverSparse
  * Changed lockStructure() to setStructureLocked( boolean )
- MatrixSparseTriplet
  * No longer uses individual classes for each element and instead uses an array
  * Java bloats classes and this should result in a large reduction in memory usage
- Sparse Solver
  * Added functions for solving sparse matrices
  * Improved efficiency of Triangle solve
  * Triangle sparse solve supports lower and upper tall matrices. Plus the transpose.
- SparseMatrix
  * added reshape(rows,cols) so that you don't need to specify nz_length when it doesn't matter.
- Improved exception messages for a few functions
- Changing it so that the output of various functions is reshaped so that it fits the input to make
  development less tedious
- SimpleMatrix
  * Fixed serialization
    - Thanks fa-dev1 for reporting the issue
  * Added elementMinAbs() because elementMaxAbs() was already included
- Examples
  * Improved Levenberg-Marquardt
    - Made it more like a "real" implementation and cleaned up the code

--
"Now, now my good man, this is no time for making enemies."    — Voltaire (1694-1778), on his deathbed in response to a priest asking that he renounce Satan.
Reply all
Reply to author
Forward
0 new messages