Skip to content
This repository was archived by the owner on Dec 28, 2025. It is now read-only.

Version 1.0.2 (Nov 08, 2001)

Choose a tag to compare

@tumatanquang tumatanquang released this 26 Dec 11:16
· 1 commit to main since this release
  • Added GenericSorting.mergeSort for "stable" in-place sorting of arbitrary shaped data

  • Upgraded the ViolinStrings package to V1.0. Michael Schmeling reports that two split methods which were contributed by Eric Jablow have been added and some minor documentation bugs have been fixed.

  • Upgraded package util.concurrent from version 1.2.5 to 1.3.0

  • Added 2d matrix versions of daxpy(), dcopy(), dscal(), dswap() to Blas, SeqBlas, SmpBlas (Martin.Schimschak@dresdner-bank.com)

  • MersenneTwister now also allows zero seed (Martin.Schimschak@dresdner-bank.com)

  • Fix for serious SparseDoubleMatrix2D and OpenMap performance degradation

  • RCDoubleMatrix2D.assign(otherMatrix) got faster

  • RCDoubleMatrix2D.assign(double) got faster

  • DenseDoubleMatrix{1,2,3}D.assign(double) got faster

  • DenseDoubleMatrix2D.zMult got a bit faster for very large problem sizes

  • Algebra.normInfinity(DoubleMatrix1D x) and Algebra.normInfinity(DoubleMatrix2D A) were incorrect (Martin.Schimschak@dresdner-bank.com)

  • SeqBlas.dger() and SeqBlas.dtrmv() were incorrect (Martin.Schimschak@dresdner-bank.com)

  • ObjectArrayList.toList() threw IndexOutOfBoundsException

  • RCDoubleMatrix2D was unnecessarily restricted in shape (double)columns*rows <= Integer.MAX_VALUE). Is now only limited by nonZeroes <= Integer.MAX_VALUE

  • cern.colt.matrix.linalg.Property.equals(..) gave wrong results when comparing exotic special cases NaN, inf, -inf.

  • cern.colt.matrix.doublealgo.Sorting was not NaN aware. In compliance with the JDK sorts, it now swaps NaNs to the end.

  • Property.isIdentity bug fix

  • Polynomial.p1evl javadoc was misleading

  • Added matrix mergesorts. Matrix quicksorts alone were not enough, because matrices are frequently sorted successively by multiple columns. In order to preserve the relative order of equal elements a so-called "stable" sort was needed. Mergesort is such a thing.

    To enable this, some minor changes were necessary. Please update your source code as follows

    Old style New style
    cern.colt.matrix.doublealgo.Sorting.quickSort(...) cern.colt.matrix.doublealgo.Sorting.quickSort.sort(...)
    or
    cern.colt.matrix.doublealgo.Sorting.mergeSort.sort(...)
  • matrix.viewSorted(...) methods now use mergesort instead of quicksort.