On Tue, Jun 19, 2012 at 10:06 AM, Anton Popov <span dir="ltr"><<a href="mailto:popov@uni-mainz.de" target="_blank">popov@uni-mainz.de</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi petsc team!<br>
I've recently upgraded to 3.3, and currently experience problems. One of them follows.<br>
If I compile this simple code:<br></blockquote><div><br></div><div>In 3.3, we now require that MatSetUp() is called before messing with the storage scheme.</div><div>We should have been more specific in Changes. Moreover, this should be a better error</div>
<div>message. Will fix, and see below.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
#include "petsc.h"<br>
#undef __FUNCT__<br>
#define __FUNCT__ "main"<br>
int main( int argc,char **argv )<br>
{<br>
    Mat A;<br>
    PetscErrorCode ierr;<br>
    PetscInt n_rows_Local=100;<br>
    PetscInt n_cols_Local=100;<br>
    ierr = PetscInitialize(&argc, &argv, PETSC_NULL, PETSC_NULL); CHKERRQ(ierr);<br>
    ierr = MatCreate(PETSC_COMM_WORLD, &A); CHKERRQ(ierr);<br>
    ierr = MatSetSizes(A, n_rows_Local, n_cols_Local, PETSC_DETERMINE, PETSC_DETERMINE); CHKERRQ(ierr);<br>
    ierr = MatSetType(A, MATAIJ); CHKERRQ(ierr);<br></blockquote><div><br></div><div>ierr = MatSetUp(A);CHKERRQ(ierr);</div><div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

    ierr = MatSetOption(A, MAT_KEEP_NONZERO_PATTERN, PETSC_TRUE); CHKERRQ(ierr);<br>
    ierr = PetscFinalize(); CHKERRQ(ierr);<br>
    PetscFunctionReturn(0);<br>
}<br>
<br>
and run it in parallel (mpiexec -np 2 ./example) it gives me errors like this:<br>
<br>
[0]PETSC ERROR: --------------------- Error Message ------------------------------<u></u>------<br>
[0]PETSC ERROR: Null argument, when expecting valid pointer!<br>
[0]PETSC ERROR: Null Object: Parameter # 1!<br>
[0]PETSC ERROR: ------------------------------<u></u>------------------------------<u></u>------------<br>
<br>
Commenting the line with "MatSetOption" removes the error, but doesn't solve the problem, because I actually need to KEEP_NONZERO_PATTERN<br>
<br>
Running the code sequentially, also vanishes the error.<br>
<br>
Please check whether it's a bug in petsc-3.3, or I should set this option in a different way.<br>
<br>
Thanks,<br>
<br>
Anton Popov<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>