Cody: she should be able to use the "ghosted_boundaries" option in the Mesh block to specify boundary IDs of elements that should be fully ghosted to all processors... that should enable contact to work.
Derek On Thu, Mar 9, 2017 at 11:16 AM Cody Permann <[email protected]> wrote: > Roy, before we spend a lot of time going doing the debugging path, I can > point you right to the general problem. She mentioned that this is for a > "contact" problem. In MOOSE that means two disjoint meshes are going to be > pushed together and our contact system handles that by taking a list of > boundary IDs to ghost from the one surface to the other. Contact always > occurs on pairs of boundaries. However, It was never designed for > distributed mesh so yeah, we use the information from boundary_info like > crazy to snag extra elements all the time so we can calculate normals and > do projections to enforce node on face constraints. We *do* handle the > solution ghosting properly in MOOSE but we just assume we can grab elements > to our heart's content. > > There's a fair amount of work to getting this right based on my > understanding of how the distributed mesh functors work. You mentioned in a > previous conversation that the functors have to be setup prior to preparing > the mesh so we don't throw too much information away. For Contact that > would mean doing the contact problem setup much earlier than we do today. > When I said hack in my response, I was thinking short term we could do > something rather nasty like take the contact surfaces ahead of time and > just ghost all of the elements (at least on one side) to all of the > partitions touching the other contact surface. "This ought to be > conservative enough for anyone". This kind of thing probably could be > implemented in the short term. I'm not suggesting that you take this on, > just exploring the feasibility of such an approach. > > Cody > > On Thu, Mar 9, 2017 at 8:36 AM Roy Stogner <[email protected]> > wrote: > > > > > On Thu, 9 Mar 2017, Maria Giuseppina Chiara Nestola wrote: > > > > > Assertion `_elements[i]' failed. > > > > > > Do you know what is due to? > > > > The low level error here is a common one: someone is trying to ask > > DistributedMesh for an element which does not exist on the semilocal > > (local plus ghosted) part of the mesh. > > > > The high level error here could be anything from anywhere; there's no > > way to tell without a stack trace, preferably with enough debugging > > options turned on to give us line numbers too. I'd very much > > appreciate a stack trace; some times these errors are easy to fix as > > soon as you know where in the code they're coming from. > > > > If the fix isn't obvious, but you can boil it down to something small > > enough to add to the MOOSE test suite, I'd appreciate that too. I've > > been bug hunting based on test suite failures with --distributed-mesh > > on various numbers of processors; MOOSE is just too big for me to > > audit the entire code so I've been relying heavily on test coverage. > > > > If you're using DistributedMesh then you definitely want to stay up to > > date with the newest MOOSE devel/HEAD; I've put a ton of fixes in > > there over the past month. Let me know your GitHub account name and I > > can ping you when I'm adding new PRs; the DistributedMesh > > compatibility bugs are getting fewer in number rapidly but they're not > > all sorted out yet. > > > > You probably want to be using the libMesh master/HEAD too, unless > > you're using curved elements, for which there seems to be a recent > > regression that I haven't yet fixed; some of the DistributedMesh > > bugs that MOOSE picked up were really bugs at the libMesh level which > > I simply had never managed to trigger with the libMesh or GRINS test > > suites. > > --- > > Roy > > > > > > > ------------------------------------------------------------------------------ > > Announcing the Oxford Dictionaries API! The API offers world-renowned > > dictionary content that is easy and intuitive to access. Sign up for an > > account today to start using our lexical data to power your apps and > > projects. Get started today and enter our developer competition. > > http://sdm.link/oxford > > _______________________________________________ > > Libmesh-users mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/libmesh-users > > > > ------------------------------------------------------------------------------ > Announcing the Oxford Dictionaries API! The API offers world-renowned > dictionary content that is easy and intuitive to access. Sign up for an > account today to start using our lexical data to power your apps and > projects. Get started today and enter our developer competition. > http://sdm.link/oxford > _______________________________________________ > Libmesh-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/libmesh-users > ------------------------------------------------------------------------------ Announcing the Oxford Dictionaries API! The API offers world-renowned dictionary content that is easy and intuitive to access. Sign up for an account today to start using our lexical data to power your apps and projects. Get started today and enter our developer competition. http://sdm.link/oxford _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
