Repository navigation
Features:
- command line option
--versionto print version and compiler information
Performance:
- accelerate data classes
ClassArray,SVectorBase, andSSVectorBaseby caching vector entries and sizes - accelerate comparator classes
Compare,IdxCompare,BreakpointCompare, andElementCompareby removing unused fields, avoiding argument copies, and reformulating difference computations - accelerate sorting functions
SPxShellsort,SPxQuicksort, andSPxQuicksortPartby removing redundant checks, skipping ordered entries, and reformulating to iteration - detect sparsity inside
CLUFactor<R>::solveLleft()to dynamically enter dense solving mode - adapt the left sparsity factor to 0.01
Fixed bugs:
- enable functional assignment of
SVectorBasefromSSVectorBase - assign nonzero size in
scaleAssign()ofSVectorBase - correct
SPxQuicksortPartreturn to end index after sorted range - avoid index overflows in
SPxQuicksortandSPxQuicksortPart
Interface & Parameters:
- added an overloaded version of
SoPlexBase<R>::factorizeColumnRational()with an additional boolean parameterforceSolutionUpdateto compute solution values also when the basis is not optimal. (SOPLEX_APIVERSION21) - add
SoPlexBase<R>::printExternalCodes()to print external libraries (SOPLEX_APIVERSION22)
Build system:
- add link-time-optimization for release builds if supported by compiler, use
-DLTO=onfor cmake orLTO=truefor make to enable - add option to link FMT library of system instead of bundled headers, use
-DSYSTEM_FMT=onfor cmake orSYSTEM_FMT=truefor make to enable - in Makefile, changed default compiler (
COMP) from gnu to clang when on macOS and addedmake/make.darwin.arm.clang{.opt,.dbg,}
Miscellaneous:
- disable deprecated iterators in fmt external to support modern MSVC
- remove broken template of
DSVectorBase::add()from incompatibleSVectorBase