[petsc-dev] Is MatZeroRows too severe?

Eric Chamberland Eric.Chamberland at giref.ulaval.ca
Wed Jan 18 09:58:21 CST 2017


Hi,

we are calling MatZeroRows_SeqAIJ (petsc 3.7.5) with:

N=3

rows[0]=15
rows[1]=30
rows[2]=65

diag = 1
x=0
b=0

and (Mat_SeqAIJ*)A->data->keepnonzeropattern is true.

but MatMissingDiagonal_SeqAIJ finds a missing diagonal at line 1 and 
then return on error here:

if (missing) SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_ARG_WRONGSTATE,"Matrix 
is missing diagonal entry in row %D",d);

with d=1

I understand that MatZeroRows verify all the lines for missing diagonals 
with MatMissingDiagonal_SeqAIJ, even if I try to zero only some lines.

Is that the wanted behavior?

Thanks,

Eric



More information about the petsc-dev mailing list