On Mon, Jun 12, 2017 at 12:36 PM, David Knezevic <[email protected] > wrote:
> I'm using a GhostingFunctor in order to define the sparsity pattern > required on a contact surface. However, I now need to handle the "finite > sliding" case where we update the master/slave pairs (and hence also the > sparsity pattern) within each nonlinear iteration based on the current > solution. > > The approach I'd like to use within each Newton iteration is: > 1. Move the mesh nodes based on the current solution and update the > master/slave pairs > 2. Call mesh_reinit for each GhostingFunctor that has been attached to the > system > 3. Update the matrix sparsity pattern > 4. Perform the Jacobian/residual assembly using the new sparsity pattern > > I'm not clear on what the best way to deal with step 3 is, so I'd be > interested in any suggestions on this? Are there any existing functions > that would do what I need or would I need to write new code for this? > P.S. Actually, I see that I can do step 3 pretty easily using code based on ImplicitSystem::reinit(). David ------------------------------------------------------------------------------ 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
