KLUSolveX Version 1.1 adds new functions and restores nearly full compatibility with the original KLUSolve, including Windows x86/32-bit calling convention. Besides AltDSS/DSS C-API, KLUSolveX can now be used with the official binaries, or be used in build process for OpenDSS-C to allow easier customization.
- Several changes to CMakeLists.txt, including new options.
- Remove support for ancient MSVC versions (2008 and earlier).
- Implement
SetMatrixElement
, add it toklusolvex.map
. - Remove unused targets from CMake, including METIS EXEs.
- Remove
ifdef
s for MSVC 2008. - Suppress useless .exp files from MSVC.
- Some work related to METIS for future Diakoptics use (WIP, probably incomplete).
- Remove legacy stack stuff, use
std::vector
instead. - Implement real (float64) handling, using float64 sparse matrices and solver.
- New
SaveAsMarketFiles
; update Eigen to v3.4.0 for a fix in related functions. - Remove klu.h from the main header.
- Adjustments for easier integration with the official OpenDSS:
- Use "unsigned int" instead of signed integers to appease OpenDSS-C.
- Use "complex" instead of plain "double" in the header.
- Use "stdcall" convention for Windows x86 (32-bit) build.
For this release, we finally fully migrated to GitHub Actions.
Currently, ARM builds for Linux will be added manually later. GitHub Actions has plans to support ARM CI workers in 2025.