On 02/17/2017 02:28 AM, Vinayak Gholap wrote:

Its clear that at t 50.2 sec I have some problem with the system of
equation leading to l2 residual norm to increase.

I believe the source of failure is in the assert check in
SolverBicgstab.h with the L2 residual norm:

  // in case of failure: throw exception
  AssertThrow(state.state == SolverControl::success,
SolverControl::NoConvergence (state.last_step, state.last_residual));

Could someone help in how to debug such a case and solve it?

That's not where the problem is. That's only where the problem first manifests itself.

In essence, what happens here is that your solver has just diverged. This may be for three reasons:
* The matrix or right hand side already contain INF or NaN values. You
  can test this by printing the norm of the matrix and rhs before you
  send them to the solver. This can happen, for example, if you have
  nonlinear problems where physically, the solution should be positive,
  but the numerical approximation has some negative values and you
  still apply functions such as sqrt or log to it when you compute
  nonlinear coefficients in the matrix or rhs.
* The matrix does not satisfy the conditions that are necessary for
  BiCGStab to converge. You can test this by using a different
  solver instead, e.g., a direct solver. If the direct solver can
  solve the problem (and produce a correct-looking solution!), then
  maybe BiCGStab is not the right choice.
* The matrix may not be invertible. This, as well, can be tested with
  a direct solver.

Go through this list of ideas and you'll be closer to finding the root cause!

Best
 W.

--
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 bange...@colostate.edu
                           www: http://www.math.colostate.edu/~bangerth/

--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to