Step-77 not working using Sundials 5.7.0

75 views
Skip to first unread message

Laura Prieto

unread,
Jul 12, 2021, 12:18:52 PM7/12/21
to deal.II User Group
Dear deal.ii community,

I am testing step-77 using the latest deal.ii release with sundials on (version 5.7.0). The example compiles and runs but not as expected, as I get the following output:

Mesh refinement step 0
  Target_tolerance: 0.001

  Computing residual vector... norm=0.231202
  Computing Jacobian matrix
  Factorizing Jacobian matrix
  Solving linear system
  Computing residual vector... norm=0.231202
  Computing residual vector... norm=0.402211
  Computing residual vector... norm=0.627191
  Computing residual vector... norm=0.857696
  Computing residual vector... norm=1.08878
  Computing residual vector... norm=1.31995
  Computing residual vector... norm=1.55112
  Computing residual vector... norm=1.78231
  Computing residual vector... norm=2.0135
  Computing residual vector... norm=2.24469
  Computing residual vector... norm=2.47588
  Computing residual vector... norm=2.70708

[KINSOL ERROR]  KINSol
  The line search algorithm was unable to find an iterate sufficiently distinct from the current iterate.

--------------------------------------------------------
An error occurred in line <518> of file </home/laura/Local/dealii/source/sundials/kinsol.cc> in function
    unsigned int dealii::SUNDIALS::KINSOL<VectorType>::solve(VectorType&) [with VectorType = dealii::Vector<double>]
The violated condition was:
    status >= 0
Additional information:
    One of the SUNDIALS KINSOL internal functions returned a negative
    error code: -5. Please consult SUNDIALS manual.

I wonder if this has something to do with my Sundials version or if anybody has a hint of what is happenning?

Thank you in advance,

Laura

Laura Prieto

unread,
Jul 12, 2021, 12:25:10 PM7/12/21
to deal.II User Group
Follow up: just tested with Sundials 3.1 and I get the same error with similar values for the norms

blais...@gmail.com

unread,
Jul 12, 2021, 12:40:50 PM7/12/21
to deal.II User Group
In addition,
Step-77 does not compile with the Sundials 3.1.0 distributed with candi.
The following error is obtained at run time in debug mode:
--------------------------------------------------------
An error occurred in line <427> of file </home/blaisb/work/dealii/dealii/source/sundials/kinsol.cc> in function
    unsigned int dealii::SUNDIALS::KINSOL<VectorType>::solve(VectorType&) [with VectorType = dealii::Vector<double>]
The violated condition was: 
    solve_jacobian_system
Additional information: 
    Please provide an implementation for the function
    "solve_jacobian_system"

Stacktrace:
-----------
#0  /home/blaisb/work/dealii/inst/lib/libdeal_II.g.so.10.0.0-pre: dealii::SUNDIALS::KINSOL<dealii::Vector<double> >::solve(dealii::Vector<double>&)
#1  ./step-77.debug: Step77::MinimalSurfaceProblem<2>::run()
#2  ./step-77.debug: main
--------------------------------------------------------

In release you just get a segfault.
This could be fixed by adding the solve_jacobian_system. However, even with this, the example does not converge. I'd rather wait on the feedback on this before moving ahead and opening a PR for 3.1.0 compatibility.
:)
Reply all
Reply to author
Forward
0 new messages