On Tue, 29 Jan 2008, Roy Stogner wrote: > On Tue, 29 Jan 2008, David Knezevic wrote: > >> I was using flag_elements_by_nelem_target for an adaptive computation, >> and the assert >> assert(parent->has_children()); >> near the bottom of MeshRefinement::flag_elements_by_nelem_target failed. >> It looks to me like the problem is that active elements don't get a flag >> of -1 from the function MeshRefinement::create_parent_error_vector? >> >> I added a line >> error_per_parent[elem->id()] = -1.0; >> in the first element loop in MeshRefinement::create_parent_error_vector >> (around line 186), and it worked OK. Does this sound like a correct >> alteration? > > Yeah, that whole function regressed when I was playing around with it > a while ago, and I didn't notice it until I started running more > adaptive simulations last week. I've got a fixed version in my local > workspace, but I hadn't been in a hurry to commit it back to SVN yet > since I thought I was the only one currently using it. The bug > actually isn't in flag_elements_by_nelem_target, it's in > create_parent_error_vector in mesh_refinement.C. I'll clean the > debugging changes out of my code and commit the fix now.
Okay, it's committed. You had 50% of the fix; the only other problem I'd found was that Parallel::sum() turning error=-1 flags into error=-n_proc. Thanks, --- Roy ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
