## libmesh-users

 [Libmesh-users] hanging nodes From: Michael Povolotskyi - 2005-07-25 17:00:11 ``` Dear libmesh developers,
I have a question about the hanging nodes problem.

As far as I know, it is possible to apply DOF constraints in order to have continuous solution with hanging nodes.
Is it possible to insure=9A continuous derivative=9A of the solution?

Michael.

```
 [Libmesh-users] hanging nodes From: Manav Bhatia - 2013-08-01 16:03:20 ```Hi, This is perhaps a very rudimentary question, but I am trying to understand what happens with the hanging nodes with AMR. Is the standard procedure to apply the constraint matrices so that the hanging node values (matrix/vector) are migrated to the the connected non-hanging ones? If so, then is ENABLE_CONSTRAINTS always enabled whenever ENABLE_AMR is enabled? If this is the standard procedure, then I assume that unit values are placed at the diagonal of the hanging node dofs and rhs is zeroed out. If so, then once the solution is complete, are the values for the hanging nodes interpolated back? If so, where in the code does this happen? Thanks, Manav ```
 Re: [Libmesh-users] hanging nodes From: Roy Stogner - 2013-08-01 16:43:37 ```On Thu, 1 Aug 2013, Manav Bhatia wrote: > This is perhaps a very rudimentary question, but I am trying to > understand what happens with the hanging nodes with AMR. No worries. There's actually two ways to handle hanging nodes with AMR: restrict the fine elements' solution with constraint equations or enrich the coarse elements' solution with bubble functions. We only do the former, for simplicity. You can then either modify or condense the resulting linear system; we have two options for modification. > Is the standard procedure to apply the constraint matrices so that > the hanging node values (matrix/vector) are migrated to the the > connected non-hanging ones? Not migrated to, but (in solution vectors) entirely determined from. > If so, then is ENABLE_CONSTRAINTS always enabled whenever ENABLE_AMR > is enabled? Yes; see dof_map.h: #if defined(LIBMESH_ENABLE_AMR) || \ defined(LIBMESH_ENABLE_PERIODIC) || \ defined(LIBMESH_ENABLE_DIRICHLET) # define LIBMESH_ENABLE_CONSTRAINTS 1 #endif > If this is the standard procedure, Sadly it is the standard procedure; bubble function enrichment is better but nobody seems to use it. > then I assume that unit values are placed at the diagonal of the > hanging node dofs and rhs is zeroed out. If you pass symmetry=true to the constraint functions, then yes. Otherwise the constraint equations themselves get added to your linear system and solved (inexactly) by your linear solver. > If so, then once the solution is complete, are the values for the > hanging nodes interpolated back? If so, where in the code does > this happen? Typically after each linear solve. grep for enforce_constraints_exactly --- Roy ```
 Re: [Libmesh-users] hanging nodes From: Roy Stogner - 2005-07-25 22:27:39 ```On Mon, 25 Jul 2005, Michael Povolotskyi wrote: > Dear libmesh developers, > I have a question about the hanging nodes problem. > > As far as I know, it is possible to apply DOF constraints in order to have > continuous solution with hanging nodes. > Is it possible to insure continuous derivative of the solution? Even without hanging nodes, it's not possible to ensure C1 continuity of your function spaces without using finite elements specifically designed for it - ensuring interelement continuity requires a lot of derivative-based degrees of freedom on element sides. I'm afraid that the only such elements which exist in libmesh right now are 1D cubics, 2D quadratic reduced Clough-Tocher composite triangles, and 2D cubic Clough-Tocher composite triangles. If there are any others you've got in mind, I'd appreciate help adding them - the only additions on my own todo list are cubic tensor products (which won't work on non-cartesian meshes) and quintic composite tetrahedra, and it'll be a while before I've got either implemented and debugged. --- Roy Stogner ```