Alternative implementation of inverse matrix operation.
Using functions provided by numpy like linalg.inv, splu and others did not help to solve on matrices limited memory resources. Implementations which I was using (almost everything that was available in SciPy at that time) were having problems with memory allocation for big matrices. Usually given function was crashing at the initialization stage or during computations. As solving time was less important for me than having solution, I decided to try implement inverse operation by myself.
Basic idea was to split matrix and solve each chunk seperately [1]. The idea is simple and whatsmore, it can be fairly easy parallelized [2] so that execution time won't be much more devastating than by using native SciPy implementations.
[1] http://home.ubalt.edu/ntsbarsh/Business-stat/otherapplets/SysEq.htm [2] http://www.connellybarnes.com/code/python/threadmap
RobustMatricInv by Lukasz Jachym is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Based on a work at https://github.com/b1r3k/RobustMatrixInv.
