From help-request at octave dot org Tue Nov 16 12:36:00 2004 Subject: sparse matrix operations From: "E. Joshua Rigler" To: Help-Octave Date: Tue, 16 Nov 2004 11:32:28 -0700 It would be useful to have operations for sparse matrices (multiply, add, etc.) that only bothered to do calculations to update those non-zero elements of a sparse matrix on the left-hand side of an equation. For example, suppose I only want the diagonal of the product of two square matrices. As it stands right now in Octave (with octave-forge), C=A*B will result in a full C matrix, and may potentially use up more memory than I wish to allow. Since I only want the diagonal of C, I may as well only perform those operations that place a vector product at C(i,i), thereby saving CPU cycles and memory. I have a simple .m file that does this, but of course it is very slow in the Octave interpreter since it must loop over each of the desired non-zero elements of C. I was hoping somebody out there might have something similar, but in a .oct format, or could show me a trick for doing this with standard Octave operators, before I go and try to reinvent this wheel. Thanks. -EJR ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------