[petsc-users] Error Using Matrix-Free Linear Operator with Matrix-Explicit Preconditioner
Jared Crean
jcrean01 at gmail.com
Thu Feb 1 11:48:23 CST 2018
Hello,
I am trying to use a matrix-free linear operator with a
matrix-explicit preconditioner, but when I try to do the KSP solve it
gives the error:
[0]PETSC ERROR: See
http://www.mcs.anl.gov/petsc/documentation/linearsolvertable.html for
possible LU and Cholesky solvers
[0]PETSC ERROR: Could not locate a solver package. Perhaps you must
./configure with --download-<package>
[0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html
for trouble shooting.
[0]PETSC ERROR: Petsc Release Version 3.8.3, Dec, 09, 2017
[0]PETSC ERROR: ./testcase on a arch-linux2-c-debug named jared-r15 by
jared Thu Feb 1 12:40:57 2018
[0]PETSC ERROR: Configure options
[0]PETSC ERROR: #1 MatGetFactor() line 4346 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/mat/interface/matrix.c
[0]PETSC ERROR: #2 PCSetUp_ILU() line 142 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/pc/impls/factor/ilu/ilu.c
[0]PETSC ERROR: #3 PCSetUp() line 924 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/pc/interface/precon.c
[0]PETSC ERROR: #4 KSPSetUp() line 381 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: #5 PCSetUpOnBlocks_BJacobi_Singleblock() line 618 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/pc/impls/bjacobi/bjacobi.c
[0]PETSC ERROR: #6 PCSetUpOnBlocks() line 955 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/pc/interface/precon.c
[0]PETSC ERROR: #7 KSPSetUpOnBlocks() line 213 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: #8 KSPSolve() line 613 in
/home/jared/.julia/v0.4/PETSc2/deps/petsc-3.8.3/src/ksp/ksp/interface/itfunc.c
The code to reproduce this error is attached. The error is present
on Petsc 3.7.6 and 3.8.3. I noticed two things while creating the test
case: 1) using a jacobi preconditioner works (using block jacobi with
ILU on each block does not), and 2) if I replace the shell matrix with
the preconditioner matrix in KSPSetOperators(), there is no error (with
the block jacobi ILU preconditioner).
Is this a bug in Petsc or did I setup the preconditioner incorrectly?
Jared Crean
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testcase.c
Type: text/x-csrc
Size: 3133 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20180201/4b29c53d/attachment-0001.bin>
More information about the petsc-users
mailing list