On Mon, Aug 14, 2017 at 5:20 AM, Mike Marchywka <[email protected]>
wrote:
> I started to get this message after changing parameters in the code
> excerpt below
> (MM_ERR is my debugging maco that prints to stderr with file/line info )
> . I probably
> have pathological data due to algorithm and coding problems but curious if
> anyone has seen this flag come up or it is likely due to bug like memory
> corruption
> or linking incorrectly.
> Why doesn't the default case handler print the unknown
> reason number and line/file that generates this mystery message ? Thanks.
>
> typedef libMesh::LinearSolver< libMesh::Number > LiSolver;
> LiSolver * p=get_linear_solver();
> p->solve(*matrix,0,*solution,*rhs,1e-18,5000);
> //p->solve(*matrix,0,*solution,*rhs,rtol,iters);
> m_reason=p->get_converged_reason();
> MM_ERR(" got code solver "<<m_reason<<" "<<converged_string(m_reason))
>
>
> Most likley code to be generating this message without actually stepping
> through it,
>
> https://libmesh.github.io/doxygen/classlibMesh_1_1PetscLinearSolver.html
> 1681 default :
> 1682 libMesh::err << "Unknown convergence flag!" << std::endl;
> 1683 return UNKNOWN_FLAG;
>
What is "converged_string"? How about you just pass m_reason, which is an
integer, to the macro and see if that fixes the problem.
--
John
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users