RE: RowReduce for SparseArray

*To*: mathgroup at smc.vnet.net*Subject*: [mg90989] RE: [mg90948] RowReduce for SparseArray*From*: "Jose Luis Gomez" <jose.luis.gomez at itesm.mx>*Date*: Sat, 2 Aug 2008 03:25:53 -0400 (EDT)*References*: <200807310656.CAA07710@smc.vnet.net>

Dear Brey I am Not sure if my response is going to be useful, or even interesting for you, but I will give it a try anyway. The Bra-Ket Dirac Notation, as used in Quantum Mechanics, could be regarded as a special notation for sparse arrays (or sparse tensors), with the difference that a given Dirac Notation expression usually does Not carry information about the actual dimension of the tensor, it only carries information about the non-zero elements of the matrix (tensor) My point is that Dirac Notation can ALSO be used for NON-Quantum Mechanics applications. Here you have some simple examples, where some calculations are performed using Dirac Notation, and the same calculations are repeated with "normal" matrices, and there is also conversion between matrices and Dirac Notation (please notice that long-urls are usually broken in e-mails and posts to this group, so you might have to "manually" reconstruct the links below if they get broken in several lines): http://homepage.cem.itesm.mx/lgomez/quantum/matrices/matrices.html http://homepage.cem.itesm.mx/lgomez/quantum/powerseries/powerseries.html So, if it seems interesting to use Dirac Notation for operators as an alternative to Sparse Arrays, you could download and use our package for Dirac Notation in Mathematica: http://homepage.cem.itesm.mx/lgomez/quantum/index.htm If you do so, please let me know. It would be great for us to have examples of our Quantum package applied to Non-Quantum-Mechanical applications. Best regards Jose Mexico -----Mensaje original----- De: brey_maastricht at hotmail.com [mailto:brey_maastricht at hotmail.com] Enviado el: Jueves, 31 de Julio de 2008 01:57 Para: mathgroup at smc.vnet.net Asunto: [mg90948] RowReduce for SparseArray Dear reader, Unfortunately, the Mathematica function RowReduce does not work with sparse datatypes. To be precise: it accepts matrices of type SparseArray as input but the output, the reduced matrix, is always a non sparse datatype. Because of this my computations crash because storing the matrix as a Normal[] type just uses too much memory, whereas it could be stored when it was a SparseArray type. Now I was wondering; does someone have an efficient RowReduce method in Mathematica which is capable of returning SparseArrays, and also is able to use arithmetic modulo p ( RowReduce[M, Modulo->p] ) ?? Kind regards, Brey The Netherlands