On Tue, Mar 8, 2011 at 5:01 PM, Cody Permann <codyperm...@gmail.com> wrote: > The mailing list has been very busy the last few weeks and the team here at > the INL has fallen a little bit behind on libMesh revisions. It turns out > that a couple of the commits over the last week have caused us some issues. > > It appears that a number of our regression tests are failing with the removal > of the "clear()" call out of the petsc_nonlinear_solver interface (r4223). > In addition, we have other tests that are failing independently with the > addition of this new logic (2 lines in 2 places) in the system_project method > (r4224). Specifically the following logic: > > // If this element doesn't have an old_dof_object with dofs for the > // current system, then it must be newly added, so the user > // is responsible for setting the new dofs. > if (!elem->old_dof_object || > !elem->old_dof_object->has_dofs(system.number())) > continue; > > I've had John and Derek in on the discussion and none of us have any concrete > reasoning right now to pin point the root of the problem. For now I just > wanted to toss this observation out there with the patch that we are > currently using to undo these changes which fixes all of our issues. Perhaps > we should revisit some of the discussion from last week to reevaluate some of > the choices made.
I've just checked in a change which will hopefully please both the people who need to call this->clear() at the end of PetscNonlinearSolver::solve and the people who want PetscNonlinearSolver::print_converged_reason() to work. The basic idea is just to store the SNESConvergedReason at the end of the solve. Then in print_converged_reason() it either re-gets the reason if (_snes), otherwise (if SNES has since been destroyed) it uses the most recently-stored value. I'm pretty sure "if (_snes)" is guaranteed to be false after a call to SNESDestroy, but I could be wrong about that... Vetter since you are the one actually using this functionality could you please let me know if it's still working OK for you? I'm not sure yet what to do about the old_dof_object stuff. Roy, I think we could definitely use your insight there. We have some tests here which aren't actually crashing, but do have solution diffs to our "gold" files. -- John ------------------------------------------------------------------------------ Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel