Speed up gf(eye(x)) a.k.a. Speed up Galois field creation for sparse matrices

265 views Asked by At

From the documentation (communications toolbox)

x_gf = gf(x,m) creates a Galois field array from the matrix x. The Galois field has 2^m elements, where m is an integer between 1 and 16.

Fine. The effort for big matrices grows with the number of elements of x. No surprise, as every element must be "touched" at some point.

Unfortunately, this means that the costs of gf(eye(n)) throw quadratically with n. Is there a way to profit from all the zeros in there?

PS: I need this to delete a row from a gf-Matrix, as the usual m(:c)= [] way does not work, and my idea of multiplying a gf-matrix with a cut unity matrix was surprisingly slow..

1

There are 1 answers

3
Yair Altman On

I don't have this toolbox, but maybe gf supports sparse-data inputs, which could drastically reduce your execution time in such a case.