Block Matrix Inverse tools
Matlab has very good built-in support for fast matrix inversion exploiting the structure of a matrix. See the algorithms section of the documentation on `mldivide` for more information: https://www.mathworks.com/help/matlab/ref/mldivide.html#bt4jslc-6
The functions provided here were initially written to support a latent Gaussian Process inference implementation, where we frequently encounter large matrices which have sub-matrices with "nice" structure, but the full matrix does not. These functions implement matrix inversion (`blockinv`) and division (`blockmldivide` and `blockmrdivide`) by extracting sub-matrices of a user-defined size and calling the matlab built-ins on them. In certain cases, this means that the built-ins are able to exploit structure in the sub-matrices for very fast inversion and quickly combine the results together.
In general, expect these functions to be slower than simply using built-ins unless you are sure that your sub-matrices (but not the full matrix) have the kind of structure exploited by mldivide.
Cite As
Richard Lange (2024). Block Matrix Inverse tools (https://github.com/wrongu/block-matrix-inverse-tools), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: kfs_suite
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Versions that use the GitHub default branch cannot be downloaded
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |
|