Mercurial > octave
diff src/OPERATORS/op-sm-sm.cc @ 7342:9c7073003700
[project @ 2008-01-03 23:05:19 by jwe]
author | jwe |
---|---|
date | Thu, 03 Jan 2008 23:05:19 +0000 |
parents | a1dbe9d80eee |
children | 283989f2da9b |
line wrap: on
line diff
--- a/src/OPERATORS/op-sm-sm.cc Wed Jan 02 07:42:04 2008 +0000 +++ b/src/OPERATORS/op-sm-sm.cc Thu Jan 03 23:05:19 2008 +0000 @@ -52,7 +52,19 @@ // sparse matrix by sparse matrix ops. DEFBINOP_OP (add, sparse_matrix, sparse_matrix, +) -DEFBINOP_OP (sub, sparse_matrix, sparse_matrix, -) + +// DEFBINOP_OP (sub, sparse_matrix, sparse_matrix, -) + + static octave_value + oct_binop_sub (const octave_base_value& a1, const octave_base_value& a2) + { + const octave_sparse_matrix& v1 = dynamic_cast<const octave_sparse_matrix&> (a1); + const octave_sparse_matrix& v2 = dynamic_cast<const octave_sparse_matrix&> (a2); + SparseMatrix m = v1.sparse_matrix_value () - v2.sparse_matrix_value (); + + return octave_value (m); + } + DEFBINOP_OP (mul, sparse_matrix, sparse_matrix, *) DEFBINOP (div, sparse_matrix, sparse_matrix)