Thu, 02 Feb 2012
Request For Implementations (RFIs)
The lack of good, simple C code to accomplish relatively basic numerical tasks is, quite simply, shocking. I am a numerical prototyper that uses C, and it is usually painful to see packages written in higher level languages that I cannot use. So here is a wishlist.
- Single file C library for linear programs (lp_tiny is a terrible solution)
- Single file C library for quadratic programs (QuadProg++ is a partial solution)
- Single file C library for sparse LDL^T factorizations of symmetric indefinite matrices
- Single file C library for sparse LU factorizations of general square matrices
- Single file C library for out-of-core sparse LDL^T factorizations of symmetric indefinite matrices
- Single file C library for out-of-core sparse LU factorizations of general square matrices
- Simple C implementation of a boundary integral equation method in 2D (acoustic scattering)
- Lattice classification routine (into the 14 Bravais lattices) given three 3D lattice basis vectors.
- Simple C implementation of 2D (and 3D) periodic Delaunay triangulation (CGAL is anything but simple).
- A C callable library for convex optimization (a port of CVXOPT would do)
- A C++ rewrite of LAPACK without template metaprogramming (RNP is a tiny step in this direction)
- A variant of Lua with 0-based indexing
Exemplary libraries: KissFFT, LDL, ToyFDTD. Simplicity is preferred to robustness and full-featuredness. All of the above must be open sourced (GPL, MIT, BSD preferred).