You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
Computing the matrix-vector product
y = (Q1 kron Q2 kron ... kron Qm) * x
can be done without ever forming the big matrix of Kronecker products. This m-file implements an algorithm for this task from page 394 of Fernandes, et al. 1998, JACM 45(3): 381--414 (doi:10.1145/278298.278303). The implementation works where X is a matrix too.
Don't be scared off by the for-loops, this code works well with the Matlab JIT compiler and works for vectors with over 50 million entries.
Cite As
David Gleich (2026). Fast and Efficient Kronecker Multiplication (https://uk.mathworks.com/matlabcentral/fileexchange/23606-fast-and-efficient-kronecker-multiplication), MATLAB Central File Exchange. Retrieved .
Acknowledgements
Inspired: Fast Kronecker matrix multiplication, Matrix times array
General Information
- Version 1.1.0.0 (860 Bytes)
-
No License
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
