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

Reply via email to