# HG changeset patch # User John W. Eaton # Date 1206550611 14400 # Node ID 91d7440211e78e428ecf076e0ef3ffd17656cbdc # Parent 0220da981c2a4f9fc5171ea037c1bec4efc5271b display percentage of elements that are nonzero when printing sparse matrices diff -r 0220da981c2a -r 91d7440211e7 src/ChangeLog --- a/src/ChangeLog Tue Mar 25 23:57:49 2008 -0400 +++ b/src/ChangeLog Wed Mar 26 12:56:51 2008 -0400 @@ -1,3 +1,8 @@ +2008-03-26 John W. Eaton + + * ov-base-sparse.cc (octave_base_sparse::print_raw): + Also display percentage of elements that are nonzero. + 2008-03-25 Soren Hauberg * DLD-FUNCTIONS/__convn__.cc: New file. diff -r 0220da981c2a -r 91d7440211e7 src/ov-base-sparse.cc --- a/src/ov-base-sparse.cc Tue Mar 25 23:57:49 2008 -0400 +++ b/src/ov-base-sparse.cc Wed Mar 26 12:56:51 2008 -0400 @@ -25,6 +25,7 @@ #include #endif +#include #include #include "oct-obj.h" @@ -265,7 +266,14 @@ os << "Compressed Column Sparse (rows = " << nr << ", cols = " << nc - << ", nnz = " << nz << ")\n"; + << ", nnz = " << nz; + + double dnel = matrix.numel (); + + if (dnel > 0) + os << " [" << std::setprecision (2) << (nz / dnel * 100) << "%])\n"; + + os << ")\n"; // add one to the printed indices to go from // zero-based to one-based arrays