On Wed, Jun 22, 2011 at 10:30 PM, Barry Smith <bsmith at mcs.anl.gov> wrote: > > On Jun 22, 2011, at 9:02 AM, John Fettig wrote: > >> On Wed, Jun 22, 2011 at 9:56 AM, Matthew Knepley <knepley at gmail.com> >> wrote: >>> It is compressed, so it only has columns that have a nonzero. >> >> Thanks for answering so quickly. ?I had just assumed that it would >> logically still report sizes that added up to the global column size >> so I was confused. > > ? What do you mean "report"? The sequential matrix that represents the > off-diagonal part of the matrix actually does not contain the "zero columns" > so does have fewer columns and hence the smaller number.
I mean if you run with "-mat_view_info", it tells you the size of the sequential matrices (which are the sizes I gave in the initial email). I had expected a couple of things: 1) the logical row size would be (global size - diagonal block size). 2) the indices would follow similar logic, i.e. entries before the diagonal block would have the same column number as in the global matrix, and entries after the diagonal would have (column number - diagonal block size). I was wrong on both counts, and I still don't understand how the column numbering for the off-diagonal block is calculated. It appears you are doing something more than just compressing the columns, you are also shifting the indices if an entire column is zero? Is there anyplace in the documentation that would help me understand this? Alternatively, where would I look in mpiaij.c? Thanks, John
