Ask Your Question

zorkkoi's profile - activity

2018-01-23 19:19:57 -0500 commented answer Copying a Matrix

Thank you so much for that excellent answer, it was exactly what I was looking for!

2018-01-23 19:19:07 -0500 received badge  Scholar (source)
2018-01-23 13:25:02 -0500 asked a question Copying a Matrix

I'm trying to take the Singular Value Decomposition of the adjacency matrix of a graph A, but all my "reasonable" attempts at doing so have failed, see the code below.

I believe the problem has something to do with the matrix being immutable, so I've been trying to copy A into a different matrix M and then perform SVD on M. he only thing that I've found to work is to essentially build A from scratch, but there must be a better method.

sage: A=graphs.CycleGraph(3).adjacency_matrix()
#Method 1: Try and get SVD directly from A; gives error at last step.
#sage: A.change_ring(RDF)
#sage: A.SVD()

#Method 2: Try and copy A to a different matrix and then do SVD; gives error at last step.
# sage: M=copy(A)
# sage: M.change_ring(RDF)
# sage: M.SVD()

#Method 3: Build A up again from scratch and then do SVD; works, but is tedious.
sage: M=matrix(RDF,3,3)
sage: for i in [0..2]:
        for j in [0..2]:
            if(A[i,j]==1):
                M[i,j]=1
sage: M.SVD()