Block Diagonalization of Quaternion Circulant Matrices with Applications 


Description: A quaternion circulant matrix can be block-diagonalized into 1-by-1 block and 2-by-2 block matrices by permuted discrete quaternion Fourier transform matrix. With such a block-diagonalized form, the inverse of a quaternion circulant matrix can be determined efficiently similar to the inverse of a complex circulant matrix.

The project's code consists of three main applications:

See the paper:

J. Pan and M. Ng,Block Diagonalization of Quaternion Circulant Matrices with Applications”, SIAM Journal on Matrix Analysis and Applications, 45(3),1429 - 1454, 2024. [doi][arXiv] [Matlab]


Separable Quaternion Matrix Factorization

Uploading soon...


Co-Separable NMF  

Uploading soon...


Generalized Separable NMF

Description: This Matlab code tackles the generalized separable nonnegative matrix factorization (GS-NMF) problem: Given a nonnegative matrix M and an integer r, find index sets K1 and K2 with a total of r indices, and nonnegative matrices P1 and P2, such that || M - M(:, K1) P1 + P2 M(K2,:) ||F is minimized; see the paper: 

J. Pan and N. Gillis, Generalized Separable Nonnegative Matrix Factorization,” IEEE Trans. on Pattern Analysis and Machine Intelligence, 43(5), 1546 - 1561,  2021. [doi] [arXiv] [Matlab]