CM2 Math1 SDK /release 5.1.0

by | Oct 18, 2021

  • 5.1.0
  • October, 2021.
  • CM2 MeshTools® SDK and CM2 FEM® SDK.
  • Major release of the CM2 Math1 SDK.
  • Due to changes in the API, client applications must be recompiled against the new headers.

/caveats

  • Major version. Due to changes in the API, client applications must be recompiled against the new headers.
  • Lib names suffix is _51 for this series.
  • Win32 and Linux x86 (32-bit) builds are deprecated and will no longer be supported in future versions.
  • Visual Studio 2012 and GCC 6.1 are deprecated and will no longer be supported in future versions (Visual Studio 2010 and GCC 4.8 builds will remain for some times as legacy builds).

/new features

  • New vecvec::diff_max_norm to compute the max norm (i.e. infinite norm) of the difference between two vectors.
  • vector_fixed, matrix_fixed, symmetric_fixed: new swap member.
  • dense1D, dense2D, symmetric_full: new swap member.
  • matrix_fixed, symmetric_fixed: new explicit constructors from vector_fixed (with proper size).
  • New vecscal::isfinite and matscal::isfinite to check sanity of vectors and matrices (float and double only).

/improvements

  • matvec::mult: minor optimisations.

/fixes

  • symmetric_sparse::JA() returned IA instead of JA.

/breaking changes

  • The returned type of many member functions and operators changed from value_type to const_reference. This improves noticeably the performance for non-POD types (it saves copies).