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.pasech...@cs.ox.ac.uk" 
<dmitrii.pasech...@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@gap-system.org
    > https://mail.gap-system.org/mailman/listinfo/forum
    

_______________________________________________
Forum mailing list
Forum@gap-system.org
https://mail.gap-system.org/mailman/listinfo/forum

Reply via email to