[petsc-dev] Incomplete MatStructure changes (in 'master')

Barry Smith bsmith at mcs.anl.gov
Sat Mar 15 15:55:02 CDT 2014


  Fixed in barry/fix-set-get-operators  and next

   Also made sure offending source code gets compiled in tests.

  Barry

On Mar 14, 2014, at 5:42 PM, Jed Brown <jed at jedbrown.org> wrote:

> Compilation error --with-parms, but other places missed as well.
> 
> $ git grep 'Operators([^,()]*,[^,()]*,[^,()]*,[^,()]*)' | grep -v ,ierr
> bin/matlab/classes/PetscKSP.m:    function err = SetOperators(obj,A,B,pattern)
> bin/matlab/classes/PetscPC.m:    function err = SetOperators(obj,A,B,pattern)
> bin/matlab/classes/matlabheader.h:int PCSetOperators(PC,Mat,Mat,MatStructure);
> src/docs/tex/manual/part2.tex:  PCSetOperators(PC pc,Mat Amat,Mat Pmat,MatStructure flag);\\
> src/docs/tex/manual/part2.tex:  PCSetOperators(PC pc,Mat Amat,Mat Pmat,MatStructure flag);\\
> src/docs/tex/manual/part2.tex:  PCGetOperators(PC pc,Mat *Amat,Mat *Pmat,MatStructure *flag);
> src/docs/tex/manual/part2.tex:been set via PCSetOperators(pc,Amat,Pmat,flag),
> src/ksp/ksp/examples/tests/ex14.c:    ierr = KSPSetOperators(ksp,J,J,mat_flag);CHKERRQ(ierr);
> src/ksp/ksp/examples/tutorials/ex4.c:    ierr = KSPSetOperators(ksp, A, A, DIFFERENT_NONZERO_PATTERN);CHKERRQ(ierr);
> src/ksp/ksp/examples/tutorials/ex42.c:  ierr = KSPGetOperators(ksp,&A,0,0);CHKERRQ(ierr);
> src/ksp/ksp/examples/tutorials/ex54.c:    ierr = KSPSetOperators(ksp, Amat, Amat, SAME_NONZERO_PATTERN);CHKERRQ(ierr);
> src/ksp/ksp/impls/gmres/agmres/agmres.c:  ierr = PCGetOperators(ksp->pc, &Amat, &Pmat, &flag);CHKERRQ(ierr);
> src/ksp/ksp/impls/gmres/agmres/agmres.c:  ierr = KSPSetOperators(kspgmres, Amat, Pmat, flag);CHKERRQ(ierr);
> src/ksp/ksp/impls/lsqr/lsqr.c:     With the PETSc built-in preconditioners, such as ICC, one should call KSPSetOperators(ksp,A,A'*A,...) since the preconditioner needs to work
> src/ksp/pc/impls/lsc/lsc.c:   If you had called KSPSetOperators(ksp,S,Sp,flg), S should have type MATSCHURCOMPLEMENT and Sp can be any type you
> src/ksp/pc/impls/parms/parms.c:  ierr = PCGetOperators(pc,NULL,&pmat,NULL);CHKERRQ(ierr);
> src/snes/examples/tutorials/ex70.c:  ierr = KSPSetOperators(ksp, s.A, s.A, DIFFERENT_NONZERO_PATTERN);CHKERRQ(ierr);
> src/snes/impls/vi/rsaug/virsaug.c:    ierr = KSPSetOperators(snes->ksp,snes->jacobian,snes->jacobian_pre,flg);CHKERRQ(ierr);
> src/snes/impls/vi/rsaug/virsaug.c:    ierr = KSPSetOperators(snes->ksp,jac_inact_inact,prejac_inact_inact,flg);CHKERRQ(ierr);
> src/snes/impls/vi/rsaug/virsaug.c:    ierr = KSPSetOperators(snes->ksp,J_aug,Jpre_aug,flg);CHKERRQ(ierr);




More information about the petsc-dev mailing list