On Mon, Mar 12, 2012 at 11:50 AM, Laurent Berenguer < laurent.berenguer at gmail.com> wrote:
> Hello, > > I would like to solve nonlinear PDEs on a regular grid (DMDACreate2D, 2 > dof per node) using: > - MatFDColoring to compute the Jacobian matrix > - The ASM preconditioner > I have just run mpiexec -n 2 ./ex32 -pc_type asm without a problem.Please send yourconfigure.log to petsc-maint at mcs.anl.gov Matt > Here is an overview of the code: > > ierr = DMGetMatrix(da,MATAIJ,&J); > ierr = TSGetSNES(ts,&snes); > ierr = DMGetColoring(da,IS_COLORING_GLOBAL,MATAIJ,&iscoloring); > ierr = MatFDColoringCreate(J,iscoloring,&matfdcoloring); > ierr = MatFDColoringSetFromOptions(matfdcoloring); > ierr = ISColoringDestroy(&iscoloring); > ierr = MatFDColoringSetFunction(matfdcoloring,(PetscErrorCode > (*)(void))SNESTSFormFunction,ts); > ierr = > SNESSetJacobian(snes,J,J,SNESDefaultComputeJacobianColor,matfdcoloring); > ierr = KSPCreate(PETSC_COMM_WORLD,&ksp); > ierr = KSPSetOperators(ksp,J,J,DIFFERENT_NONZERO_PATTERN); > ierr = KSPGetPC(ksp,&pc); > ierr = PCSetType(pc,PCASM); > ierr = PCASMSetOverlap(pc,1); > ierr = KSPSetUp(ksp); > ierr = SNESSetKSP(snes,ksp); > ierr = TSSetFromOptions(ts); > ierr = TSSolve(ts,u,&ftime); > > And I have the following error for overlap>0. > > [1]PETSC ERROR: > ------------------------------------------------------------------------ > [1]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, > probably memory access out of range > [1]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger > [1]PETSC ERROR: or see > http://www.mcs.anl.gov/petsc/petsc-as/documentation/faq.html#valgrind > [1]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS > X to find memory corruption errors > [1]PETSC ERROR: likely location of problem given in stack below > [1]PETSC ERROR: --------------------- Stack Frames > ------------------------------------ > [1]PETSC ERROR: Note: The EXACT line numbers in the stack are not > available, > [1]PETSC ERROR: INSTEAD the line number of the start of the function > [1]PETSC ERROR: is given. > [1]PETSC ERROR: [1] MatIncreaseOverlap_MPIAIJ_Receive line 427 > src/mat/impls/aij/mpi/mpiov.c > [1]PETSC ERROR: [1] MatIncreaseOverlap_MPIAIJ_Once line 71 > src/mat/impls/aij/mpi/mpiov.c > [1]PETSC ERROR: [1] MatIncreaseOverlap_MPIAIJ line 22 > src/mat/impls/aij/mpi/mpiov.c > [1]PETSC ERROR: [1] MatIncreaseOverlap line 6543 src/mat/interface/matrix.c > [1]PETSC ERROR: [1] PCSetUp_ASM line 155 src/ksp/pc/impls/asm/asm.c > [1]PETSC ERROR: [1] PCSetUp line 797 src/ksp/pc/interface/precon.c > [1]PETSC ERROR: [1] KSPSetUp line 184 src/ksp/ksp/interface/itfunc.c > [1]PETSC ERROR: [1] KSPSolve line 331 src/ksp/ksp/interface/itfunc.c > [1]PETSC ERROR: [1] SNES_KSPSolve line 3394 src/snes/interface/snes.c > [1]PETSC ERROR: [1] SNESSolve_LS line 142 src/snes/impls/ls/ls.c > [1]PETSC ERROR: [1] SNESSolve line 2647 src/snes/interface/snes.c > [1]PETSC ERROR: [1] TSStep_Theta line 25 > src/ts/impls/implicit/theta/theta.c > [1]PETSC ERROR: [1] TSStep line 1768 src/ts/interface/ts.c > [1]PETSC ERROR: [1] TSSolve line 1824 src/ts/interface/ts.c > [1]PETSC ERROR: --------------------- Error Message > ------------------------------------ > The same error happens when I run the example > /snes/examples/tutorials/ex32.c with the option -'pc_type asm'. > > How to properly set up the preconditioner in that case (dof > 1) ? > > Thanks, > > Laurent Berenguer > > PhD student, > Universit? Lyon 1 > > > > -- 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120312/82408a99/attachment.htm>
