On 03/25/2015 02:06 PM, Matthew Knepley wrote:
On Wed, Mar 25, 2015 at 1:03 PM, Eric Chamberland
<[email protected]
<mailto:[email protected]>> wrote:
Hi,
while looking for where in the world do I insert the (135,9) entry
in my matrix, I have discovered that the column # shown is wrong in
parallel!
We have talked about this before. It is certainly not easy. The error is
given by the embedded serial matrix, whereas you want
the parallel column. It would be good if we could restructure to give
that back.
Okay!!! I didn't knew that...
Would it be possible, in parallel, to have the column number marked by a
****** beside it with a footnote like "this is not the column number" in
the error message? How can it help *me* to have this wrong number?
(just wasted a few hours on this this morning....)
Worded differently: if you take the time to write a message for the end
user, it is to help the programmer right? But what does it worth if it
does not help, worst, if it mislead the programmer???
Ok, that's it for my 0.5cent...
Thanks for the answer,
Eric
Thanks,
Matt
I am using PETsc 3.5.3.
The full error message is:
[0]PETSC ERROR: MatSetValues_MPIAIJ() line 564 in
/home/mefpp_ericc/petsc-3.5.3/__src/mat/impls/aij/mpi/mpiaij.c
Inserting a new nonzero (135, 9) into matrix
This line code is a call to a #defined macro:
MatSetValues_SeqAIJ_B_Private(__row,col,value,addv);
where the "col" parameter is not equal to "in[j]"!!!
in gdb, printing "in[j]" gave me:
print in[j]
$6 = 537
while "col" is:
print col
$7 = 9
So, I expected to have a message telling me that (135,537) and not
(135,9) is a new entry matrix!!!
Would it be a big work to fix this so that the col # displayed is
correct?
Thanks!
Eric
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which
their experiments lead.
-- Norbert Wiener