cbc.block team mailing list archive
-
cbc.block team
-
Mailing list archive
-
Message #00013
Re: [Question #220333]: Dolfin GMRES vs. CBC.Block LGMRES
Question #220333 on CBC.Block changed:
https://answers.launchpad.net/cbc.block/+question/220333
Status: Open => Answered
Joachim Haga proposed the following answer:
I have looked briefly. The convergence of builtin Trilinos solvers is
illusory; try
# Solve with Trilinos solvers
x = Function(V)
solve(A, x.vector(), b, "gmres", "ilu")
plot(x[0])
solve(A, x.vector(), b, "bicgstab", "ilu")
plot(x[0])
solve(A, x.vector(), b, "bicgstab", "ilu")
plot(x[0])
interactive()
--- you'll see three very different "solutions". I suspect that the
problem is that the full matrix A is indefinite; the preconditioner
should probably be positive. The built-in solver probably bails out when
encountering division-by-zero (which generates NaN/Inf), while cbc.block
doesn't check for this and hence throws an exception.
--
You received this question notification because you are a member of
cbc.block maintainers, which is an answer contact for CBC.Block.