[GAP Forum] GAP to MATLAB?
Iverson, Joseph W [MATH]
jwi at iastate.edu
Wed Oct 16 19:31:46 BST 2019
Dear Dima (and everyone),
>> What kind of task are do going to do on these matrices?
Usually when I need to export to MATLAB it's because I need to do stuff with eigenvalues or with non-cyclotomic numbers. For instance, right now I need to convert this non-unitary representation to a unitary one (using the square root of a positive matrix) and then find a matrix for orthogonal projection onto an invariant subspace (with the aid of a spectral decomposition).
>> I believe you can do a lot in SageMath
Yes, I always have that in the back of my mind as a last resort, but I would like to avoid learning a whole new system if I can. In addition, many of my collaborators use MATLAB and I would like to stay on the same page as them.
Still, I wonder if a person could use Sage as a bridge to MATLAB. Does anybody know if it has a method to export .mat files, and if so, whether that method is compatible with the interface to GAP?
Dima, thanks also for pointing me to your package about block diagonalization. That is closely related to what I am doing, yes.
All the best,
Joey Iverson
Assistant Professor
Department of Mathematics
Iowa State University
On 10/16/19, 9:11 AM, "dmitrii.pasechnik at cs.ox.ac.uk" <dmitrii.pasechnik at cs.ox.ac.uk> wrote:
Dear Joey,
On Wed, Oct 16, 2019 at 12:06:16PM +0000, Iverson, Joseph W [MATH] wrote:
>
> Does anybody know of a way to efficiently get matrices (say with cyclotomic entries) from GAP to MATLAB? For instance, is there a package to export matrices as .mat files?
>
> I have been getting by with a jerry-rigged solution where I make GAP print a matrix like
> A:=[[1,0],[0,1]];;
> to a file "A.m" containing a single string like
> "A=[1,0;0,1];".
> Then I have MATLAB read the file as a script. That works fine for small matrices, but for large ones (or for 3-tensors consisting of lots of matrices) it is prohibitively slow, both for GAP to print to the file and for MATLAB to interpret the result.
>
> For a sense of scale, at the moment I would like to export 95040 matrices each of size 540x540 to MATLAB, preferably as a 3-tensor so that I can easily iterate through the list. (The matrices are the image of a representation of M12 having degree 540.)
What kind of task are do going to do on these matrices?
I believe you can do a lot in SageMath, which has a fast (lib)GAP
interface, and many more numerical
and matrix tools than GAP. E.g. we recently have been working on solving
semidefinite optimisation problems using GAP output (needed to
block-diagonalise certain combinatorial data).
We (mostly, my former student) also have a GAP package that would block-diagonalise for you your
representation (into block-diagonal matrix with irredicible blocks).
https://gitlab.com/kaashif/decomp
which might help a lot with whatever linear algebra tasks you might want
to do with your representation of degree 540.
HTH
Dima
>
> Best regards,
> Joey Iverson
>
> Assistant Professor
> Department of Mathematics
> Iowa State University
>
> _______________________________________________
> Forum mailing list
> Forum at gap-system.org
> https://mail.gap-system.org/mailman/listinfo/forum
More information about the Forum
mailing list